[TIL]21.11.25

박주홍·2021년 11월 25일
0

Today I Learned

목록 보기
67/104
  • 프로그램, 프로세스, 스레드에 대해 기본적인 개념을 설명할 수 있다.
    프로세스는 동작하는 프로그램이라고 이해하면 되고, 그 프로세스의 하나의 코드 흐름을 스레드라고 할 수 있다.

    • 동시성과 병렬성의 차이를 이해할 수 있다.
      동시성은 예를 들어 프로세스를 처리할 수 있는 코어는 한개인데, 두개의 프로세스의 명령어를 처리해야할 경우 빠르게 두 명령어를 순차적으로 처리하게 될때 그 처리과정이 동시에 처리하는 것 같다고 생각해 동시성이라고 불리우고, 병렬성은 코어가 2개이상있어서 프로세스가 2개이상이더라도 병렬적으로 처리할 수 있다는 것을 얘기한 것이다
    • 자바스크립트 엔진(v8)이 어떤 특징을 가지고 있는지 이해할 수 있다.
      C, C++는 프로그래밍언어를 빌드해서 컴파일해 컴퓨터에 전달한다면, 자바스크립트 엔진은 그때그때 빌드해서 컴퓨터가 바로이해할 수 있도록 해주는 인터프리터언어이다.
  • 프로그래밍에서 문자열을 다루는 방법과 유니코드 및 인코딩에 이해할 수 있다.
    유니코드는 전 세계 문자들을 컴퓨터에서 일관되게 표현할 수 있도록 하는 표준이다. 인코딩은 문자을 컴퓨터가 이해할 수 있도록 부호화(혹은 쉽게말해 암호화)하는 것이다. 그렇게 되면 부호화된 문자열을 디코딩해서 다시 문자열로 볼 수 있다.

  • 비트맵 이미지와 벡터 이미지의 차이를 이해할 수 있다.

  • 가비지 컬렉션에 대해 이해할 수 있다.
    자바스크립트는 사용안하는 메모리를 자동으로 할당을 취소해준다. (메모리를 제거해준다?)

  • 웹 서비스에서 사용하는 다양한 캐싱의 사례를 이해할 수 있다.
    클라이언트: HTTP 캐시 헤더, 브라우저
    네트워크: DNS 서버, HTTP 캐시 헤더, CDN, 리버스 프록시
    서버 및 데이터베이스: 키-값 데이터 스토어(e.g. Redis), 로컬 캐시(인-메모리, 디스크)

profile
고통없는 성장은 없다고 할 수 있겠다....

0개의 댓글