section3 note taking
섹션3 필기
as === Alias
-
- wildcard 모든 것
- name space import * as Utils from './example.js'
- Barrel Pattern 통 index.js 입구전용 파일 대형마트와 비슷
- 이름 충돌 방지를 위한 별칭 as 키워드
Frontend Script 에서 backend system platform 으로 가는 강력한 내장 module
- node: 접두사 node.js 자체 제공
- path 모듈은 크로스 플랫폼 호환성을 보장한다
- node가 실행 될 때 memory/ram 에 path,fs,http 내장 모듈 로드
- path.join() os운영체제에 관계없이 경로 조합해줌
keywords
- POSIX : portable operating system interface
- \ backslash / forward slash
- 1024 byte = 1kb
OS 모듈
- os.type() 실행중인 컴퓨터의 os 종류 반환
- Windows_NT, Darwin
- os.uptime() 부팅후 꺼지지 않은 시간 초 단위 반환
fs 모듈
- file system
- fs.writeFileSync 동기
- buffer 임시 정거장 같은 것
- utf8 해독규칙
- 하드디스크 -> utf 8 -> 영어/한국어,,,
events 모듈 EventEmitter
- node.js의 심장
- 비동기 non blocking의 핵심 mechanism
- on(event) -> emit(event)
Http 모듈
- hyper text transfer protocol
- 표준화, 일관된 규격
- port tcp/ip규약 16bit memory 사용 -> 2의 16 제곱 65536개의 포트
- 0부터 65535까지 65536개의 포트
- reserved : 80 일반 웹 443 보안 웹
느낀 점
생각보다 low level에서 이뤄지는 일들이 많구나. EventEmitter는 node.js의 근간이구나. 결국엔 웹이라는 것은 DB의 데이터를 request받고 response를 보내는 것에 불과하다. 근데 뭐가 좀 많이 복잡한,,,,