[TIL] cs 기초

Sarahsea 사라씨·2021년 8월 6일
0

TIL

목록 보기
47/128
post-thumbnail

오늘 배운 것

컴공 기초

  • 문자열 / 그래픽

    • 프로그래밍에서의 문자열
    • 유니코드 및 인코딩
      인코딩과 디코딩의 기준을 문자열 세트 또는 문자셋(charset)
      이 문자셋의 국제표준 => 유니코드
    • 비트맵 이미지(Raster) vs 벡터 이미지(Vector)
  • 운영체제 - 프로세스, 스레드, 멀티스레드
    define:프로그램: a set of instructions
    프로세스: a program in execution
    스레드: a segment of a process

  • 가비지 컬렉션 GC
    프로그램에서 더 이상 사용하지 않는 메모리를 자동으로 정리하는 것
    방법: 트레이싱, 레퍼런스 카운팅
    이 기능을 가진 언어/엔진: 자바, C#, 자바스크립트 등

  • 캐시 : 많은 시간이나 연산이 필요한 작업의 결과를 저장해두는 것,
    이전에 검색하거나 계산한 데이터를 효율적으로 재사용할 수 있다
    프로그래밍 레벨의 캐시: 메모이제이션
    클라이언트의 캐시: HTTP 캐시 헤더, 브라우저
    네트워크의 캐시: DNS 서버, HTTP 캐시 헤더, CDN, 리버스 프록시
    서버 및 데이터베이스의 캐시: 키-값 데이터 스토어(e.g. Redis), 로컬 캐시(인-메모리, 디스크)

  • 체크포인트
    "CS를 쌓아가는게 개발자에게 당장 눈에 보이는 결과를 가져오진 않아도, 장기적으로 꼭 필요한 지식, 전체 학습량의 10%를 할당해서 쌓아가자, 일주일에 한 챕터라도"_ 최민철 엔지니어님

    • 1번 D: node.js는 싱글 스레드로만 작동한다? -> 운영체제에 따라서는 최대 4개까지도, 하지만 개발자가 관여하는 이벤트 loop가 싱글스레드로 작동한다
    • 2번 B: 스레드는 stack 따로 쓰고, 나머지는 공유
    • CPU / RAM(메모리_ 기억장치를 모두 메모리라 하지만 하드디스크와 나누어 얘기할 때 일반적으로 '메모리'란 램)/ storage-HDD,SSD
      Register CPU가 한 번에 처리할 수 있는 데이터의 크기
      + 1,000,000,000,000 - 조, 십억, 백만, 천 => 1GB = 10억Byte
    • 4번 D: 포인터: RAM의 주소
      + 메모리 스왑 (mac의 activity monitor로 확인가능)
      ++메모리 누수 / memory leak
    • 5번 이진파일 / 텍스트 파일
      D: "개행"- 고칠개, 행을 밑으로 내리는 방법은 운영체제별로 다름
      +++ 정규식 개행 (regex for new line)
    • 8번 D: "엔디언" utf-16
    • 11번 A: CDN (content Delievery Network)- ex) AWS, Cloudflare, akamai , 자주 소비되는 미디어, 영상 파일 등 지리적으로 가까운 곳에 둠

느낀 점

  • 한발 떨어져서 보면 넘나 신기함...
  • 가까이서 보면 @@
  • 재미와 뭐라는겨 사이 - 책을 사서 꾸준히 봐야겠다 ;)

내일은

  • 이번주 학습 노션 재정리
  • 인증 파트 스프린트 3개 -세션,토큰,오아ㄸ스 다시풀기, 정리
  • 토이
  • 드림
profile
생각하는 사람

0개의 댓글