← All writing
Development

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를 보내는 것에 불과하다. 근데 뭐가 좀 많이 복잡한,,,,