일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 명시도
- 3티어 아키텍처
- Private Blockchain
- CSS
- javascript
- caverjs
- IP
- skip ci
- npm
- 2티어 아키텍처
- ES6 모듈
- CSS Specificity
- http 모듈
- NoSQL
- Factory 함수
- solidity
- UTXO
- Factory Functions
- CLI
- react
- 블록체인
- 불안정 정렬
- Relational Database
- #1인게임개발
- SQL
- short-circuiting
- 텍스트 가운데 정렬
- #유니티
- Hybrid Blockchain
- 안정 정렬
- Today
- Total
목록전체 글 (97)
짹뚜 스튜디오
Internet Protocol (IP) 인터넷은 수많은 컴퓨터가 연결되어있는 거대한 네트워크이다. 그래서 내 컴퓨터와 데이터를 보낼 다른 컴퓨터 (서버)가 직접적으로 연결되어있지는 않고 중간중간 다른 컴퓨터들을 거쳐서 목적지에 데이터들이 도착하게 된다. 데이터가 한 컴퓨터에서 다른 컴퓨터로 전송이 될 때 packet이라는 작은 단위로 쪼개진 다음에 Internet Protocol (IP)에 의해서 packet들이 전송된다. 네트워크에서 용량이 큰 데이터를 한 번에 보낼 수 없기 때문에 packet 단위로 데이터를 쪼개는 것이다. 라우터라는 네트워크 상의 특수한 컴퓨터들은 packet들이 효율적인 경로를 통해서 목적지에 갈 수 있게 한다. 라우터에 의해 packet들이 서로 다른 경로로 이동할 수 있기 ..
Process (프로세스) 실행 중인 하나의 애플리케이션을 프로세스라고 한다. 즉, 운영체제로부터 독립적인 메모리 영역을 할당 받아서 실행되고 있는 애플리케이션이 프로세스이다. 할당받은 메모리 영역에는 Code, Data, Stack, Heap이 있다. 하나의 프로세스는 다른 프로세스의 변수나 자료구조에 접근할 수 없다. Thread (스레드) 스레드는 프로세스의 실행 단위를 얘기한다. 실제로 프로세스의 작업을 실행하는 주체 또는 흐름이 스레드이다. 각각의 스레드는 Stack만 할당받고 나머지 Code, Data, Heap은 서로 공유한다. 멀티 프로세스 하나의 애플리케이션을 여러 개의 프로세스로 나누어서 처리하는 것을 멀티 프로세스라고 한다. 장점 프로세스는 독립적이서 안정성이 높다. 하나의 프로세스에..
운영체제란 사용자가 컴퓨터의 하드웨어 또는 소프트웨어 리소스들을 쉽고 효율적으로 사용하기 위한 환경을 제공하는 소프트웨어이다. 우리가 컴퓨터를 사용하면서 내부적으로 어떻게 동작하는지 몰라도 키보드 입력이나 마우스 클릭이 가능하고, 응용프로그램을 사용 가능한 것이 운영체제 덕분이다. 대표적인 컴퓨터 운영체제로는 Window, Mac OS 그리고 Linux가 있다. 기능 시스템 자원 관리 시스템 자원이란 쉽게 얘기해서 컴퓨터 구성 요소들이다. CPU, 메모리, 입출력 장치 등등을 얘기한다. 그러나 CPU는 직접 프로세스를 할당 할 수없고, 메모리는 데이터를 저장하는 공간만 제공하고, 입력 장치는 데이터 입력만 받고 출력 장치는 받은 데이터를 출력만 해준다. 이러한 구성요소들은 스스로 할 수 있는게 없기 때문..
Express Express는 node.js의 웹 애플리케이션 프레임워크로 node.js로 웹 서버를 만들기 위한 다양한 라이브러리와 기능들을 제공하기 때문에 쉽고 간단하게 웹 서버를 구성할 수 있다. 서버 생성 const express = require('express'); const app = express(); app.listen(4000, () => { console.log('Server is Listening...'); }); 라우팅 라우팅 (Routing)은 서버에서 클라이언트의 요청에 해당하는 method와 url에 따라 서버가 응답하는 방법을 결정하는 것이다. http 모듈로 라우팅을 구현한다면 다음과 같다. const server = http.createServer((req, res) =..

http 모듈 Node.js에서 웹 서버를 구동시키기 위한 기능들을 제공하는 모듈이다. const http = require('http'); const server = http.createServer((req, res) => { res.end('hello world'); }); server.listen(4000, () => { console.log('Server is Listening...'); }); server createServer 메서드로 server 객체를 만든다. listen(): 서버를 실행시키고 port 번호를 정해준다. close(): 서버를 종료한다. request createServer의 콜백함수의 첫번째 인자값은 req 또는 request이다. 즉 클라이언트에서 서버로 전달하는 요청..
퀵 정렬 분할 정복 알고리즘 중 하나로 평균적으로 매우 빠른 속도를 가지고 있다. 퀵 정렬의 특징으로는 비 균등하게 분할을 한다. 알고리즘 퀵 정렬은 다음과 같이 진행된다. 입력된 배열을 pivot을 기준으로 비균등하게 2개의 배열로 나눈다. pivot을 중심으로 왼쪽에는 pivot보다 작은 요소, 오른쪽에는 pivot보다 큰 요소들로 나눈다. 분할된 배열들을 가지고 다시한번 새로운 pivot을 기준으로 비 균등하게 2개의 배열로 나눈다. 더 이상 분할이 안될때까지 반복적으로 진행한다. // javascript 코드 const quickSort = (arr, left, right) => { if (left >= right) return; let low = left + 1; let high = right;..
http의 특징 중 하나가 stateless이다. 즉 서버가 클라이언트의 이전 상태를 보존하고 있지 않는다. 다음과 같은 대화를 보면 stateless를 좀 더 쉽게 이해할 수 있다. A: 치킨 한 마리에 얼마인가요? B: 만원입니다. A: 그럼 2마리 주세요. B: 뭐를 2마리 줄까요? 그런데 '오늘 하루 동안 이 팝업창 보지 않기'에 체크를 하고 다시 같은 사이트에 접속을 하면 팝업창이 진짜로 보이지 않는다. 이처럼 이전 상태를 저장해주는 방법 중 하나가 cookie이다. cookie 말고 session과 token도 있다. Cookie 쿠키는 서버에서 클라이언트에 데이터를 저장하는 방법 중 하나이다. 서버에서 응답을 할 때 쿠키를 설정해준다. 그 이후로 만약에 쿠키가 클라이언트에 존재한다면 클라이언..
Position CSS의 position 속성은 문서 상에서 element를 배치하는 방법을 지정하는 속성이다. static position 속성을 지정해주지 않으면 기본값으로 static이 적용된다. static은 element가 문서 상에서 원래 있어야 하는 위치에 배치된다. 즉, element가 위에서 아래로 순서대로 배치된다. 추가로 static일 때 top, bottom, left, right 속성을 무시한다. relative relative 속성은 element를 원래의 위치에서 상대적인 위치를 가질 수 있도록 한다. 즉, top, bottom, left, right 속성을 부여해서 상대적인 위치를 지정할 수 있다. 여기서 원래 위치라는 것은 static일 때의 위치를 얘기한다. relativ..
MongoDB MongoDB는 NoSQL 기반 데이터베이스 중 가장 널리 쓰이는 비관계형 데이터베이스 관리시스템이다. MongDB는 데이터를 Document 형식으로 저장한다. 그리고 Document는 JSON과 유사한 형태이기 때문에 좀 더 이해하기 쉽고 스키마의 제약 없이 자유롭게 데이터를 저장할 수 있다. 용어 Document: 데이터를 field-value 한 쌍으로 저장하고 구성한다. Field/Key: 데이터 포인트를 위한 고유한 식별자이다. Value: 주어진 식별자와 연결된 데이터이다. Collection: MongoDB에서 Document로 구성된 저장소이다. (관계형 데이터베이스에서 테이블의 역할이다.) Document JSON MongoDB에서 document는 JSON의 형식으로 출..
데이터 저장 (Storage) 관계형 데이터베이스는 SQL을 이용해서 테이블에 데이터를 저장한다. NoSQL은 key-value, document, wide-column, graph 등의 방식으로 데이터를 저장한다. 스키마 (Schema) SQL을 사용할 때는 미리 정의된 스키마가 필요하다. 즉, 테이블의 각 Column에 대한 정보를 미리 정해두어야 데이터를 처리할 수 있다. NoSQL에서는 미리 데이터 타입을 정의해둘 필요가 없다. 따라서 다른 구조의 데이터를 같은 Collection (SQL의 테이블과 동일하다.)에 저장할 수 있다. 쿼리 (Querying) 관계형 데이터베이스에서는 SQL과 같이 구조화된 쿼리 언어를 사용해서 테이블의 형식과 테이블 간의 관계에 맞춰서 데이터를 요청해야 한다. No..