- Sprint 복습 (Self guided)
- OOP
- Instantiation Patterns
- Subclass Dance Party
- Class vs Prototype
- Basic CS
- DFS, BFS, Backtracking
- Framework & Library
- Node.js 프로그래밍 독서
- server part 1
@@ 오늘은 추석 연휴를 맞이해서 그동안 밀려있던 개인 복습 시간을 가졌다.
보지 못하고 있었던 self guided 레슨 문서 3,4 번째 항목들을 보면서 정리하는 시간을 가졌고, 그 다음 시간으로 Node.js 프로그래밍 서적을 읽으면서 서버 파트에 대해서 다시 복습하는 시간을 가졌다.
망각 곡선에 잠식당하지 않도록, 또 낯설게 느껴지는 서버 프로그래밍에 대한 배경지식을 넓힐 수 있도록 골라놓은 서적들을 천천히 완독해야겠다.
super()
[MDN 문서] 확인
문법
super([arguments]); // 부모 생성자 호출
super.functionOnParent([arguments]);
생성자에서는 super 키워드 하나만 사용되거나 this 키워드가 사용되기 전에 호출되어야 한다.
또한 super 키워드는 부모 객체의 함수를 호출하는데 사용될 수 있다.
정적 메서드에서 super 호출 가능
super 속성을 삭제할 경우 ReferenceError 가 발생한다.
Object.setPrototypeOf(obj2, obj1)
obj2 prototype 에 obj1을 세팅.
// Only works in Chrome and FireFox, does not work in IE:
Object.setPrototypeOf = Object.setPrototypeOf || function(obj, proto) {
obj.__proto__ = proto;
return obj;
}
static 키워드
클라이언트
다른 곳에 있는 데이터를 달라고 요청하는 프로그램
서버
다른곳에서 요청 받은 명령을 처리해주는 프로그램
하나의 단말에서 사용할 수 있는 포트는 0 ~ 65535 중 하나를 지정해서 사용한다.
0 ~ 1023 번 (well-known port)
1024 ~ 49151 번 (Registered port)
49152 ~ 65535 번 (Dynamic port)
윈도우나 안드로이드 같은 OS가 시작될 땐 이미 잘알려진 포트에서 대두분을 사용한다.
직접 만드는 서버는 보통 1024번 이상의 포트 번호를 사용한다.
포트
단말에 접속하기 위한 논리적인 접속 위치
서버 중 웹 브라우저에서 접속하는 서버를 웹서버라고 하며, HTTP 프로토콜을 이용
프로토콜
데이터를 서로 어떤 형태로 주고 받을지 정한 것 (데이터의 형태)
웹 브라우저에서 HTTP로 요청한 데이터를 받은 웹 서버는 필요한 작업을 수행 후 HTTP 응답을 보냄
웹 브라우저가 웹 서버로부터 데이터를 받으면 웹 브라우저 화면에 웹문서를 띄운다.
한번 화면에 띄운 웹 문서는 필요한 때마다 웹 서버로 또 다른 웹 문서를 요청하여 받아온다.
스마트폰 같은 모바일 단말에선 웹 문서를 웹 서버가 아닌 단말 내부에 저장해두었다가 화면에 띄운 후 웹서버로
필요한 데이터만 요청하는 방식을 사용하기도 한다.
Ajax방식으로 데이터만 받아오는 경우가 많다. (Asynchronous javascript and xml)
Ajax
매번 웹 문서를 가져오지 않고 필요한 데이터만 가져온 후 화면을 부분적으로 갱신할 수 있다. 화면 처리속도가 빨라짐.
서버의 유형
웹서버
모든 서버들의 기본, HTTP 프로토콜로 데이터를 주고받을 수 잇는 웹 서버를 만들고 나면 그 위에 기능을 추가해서 다음과 같은 새로운 서버를 만들 수 있다.
IOT (internet Of Things)
다양한 센서들로부터 값을 전달받아 동작하는 사물 인터넷