220225 TIL

Dzeko·2022년 2월 25일
0

개발일지

목록 보기
42/112
post-thumbnail

Today I Learned


1. 모던 자바스크립트 Deep Dive :

15장 let, const 키워드와 블록 레벨 스코프

var 키워드로 선언한 변수의 문제점

  • 변수 중복 선언 허용
  • 함수 레벨 스코프 : 함수 외부에서 var로 선언한 변수는 코드 블록 내에서 선언해도 모두 전역 변수가 된다.
  • 변수 호이스팅: 변수 호이스팅에 의해 에러를 발생시키지 않지만 다른 오류를 범할 여지를 남긴다.

let 키워드

  • 변수 중복 선언 금지
  • 블록 레벨 스코프 : let 변수는 모든 코드 블록(함수, if문, for문 등)의 블록 레벨 스코프를 따른다.
  • 변수 호이스팅 : let 선언 변수는 변수 호이스팅이 발생하지 않는 것처럼 동작한다. 선언 단계와 초기화 단계가 분리되어 진행되기 때문이다.

const 키워드

상수를 선언하기 위해 사용한다. 반드시는 아니지만. 특징은 let과 대부분 동일하다.

  • 선언과 초기화 : const 선언 변수는 반드시 선언과 동시에 초기화해야 한다.
    ex)
const foo = 1;
const foo; // syntaxError
  • 재할당 금지 : var나 let 선언 변수는 재할당이 자유로우나 const선언 변수는 재할당이 되지 않는다.
  • const와 객체 : 하지만 const 선언 변수에 객체를 할당한 경우 값을 변경할 수 있다.

var vs let vs cont

변수 선언에는 기본적으로 const를 사용하고 재할당이 필요한 경우에 한해서 let을 사용하는 것이 좋다. 의도치 않은 재할당을 방지하기 때문이다.




2. CS 스터디 :

5장 컴퓨터 아키텍처와 운영체제(p.194 ~ p.196)
  • 컴퓨터 아키텍처 : 컴퓨터의 여러 구성요소를 배치하는 방법

  • 폰 노이만구조와 하버드 구조

    • 폰 노이만이 고안한 내장 메모리 순차처리 방식으로, 명령과 데이터는 같은 버스와 메모리를 사용하기 때문에 동시에 접근하는 것이 불가능하다
    • 폰 노이만 구조의 문제를 완화하기 위해 나타나게 되었으며, 명령용 버스와 데이터용 버스가 분활되어 있다는 점
  • 프로세서 코어

    • CPU : ALU, 레지스터 실행장치의 조합
      • 레지스터 : 데이터 및 실행 중인 프로그램의 상태 정보를 저장하는 매우 빠른 장치
      • 실행장치(제어장치) : 명령어를 읽고 실행하는데 필요한 CPU 내부의 각 장치 간의 데이터 흐름을 제어
  • 멀티프로세서 시스템

    • 단일 CPU보다 좋은 성능을 얻기 위한 방법
    • 여러 CPU를 활용하도록 프로그램을 병렬화 것은 순차적 프로그래밍에 비해 난해하다는 문제
    • GUI를 제공하는 초기 워크스테이션에서는 프로그램을 동시에 실행 할 수 있다는 것은 큰 이점
  • 프로세서 코어

    • CPU라고 부르던 것에서 프로세서 코어로 변화
    • CPU를 여러 개 사용한 멀티 프로세서 시스템에서 하나의 CPU내에 여러 코어를 사용한 멀티코어 프로세서가 일반적으로 사용
  • 마이크로프로세서

    • 메모리와 입출력장치가 프로세서 코어와 같은 패키지에 들어있지 않은 프로세서
    • 컴퓨터의 CPU도 마이크로 프로세서
    • 개별적 연산만가능하다
  • 마이크로컴퓨터 (마이크로 컨트롤러)

    • 마이크로 프로세서와 이를 사용하기 위한 메모리, 입력 장치 등이 모두 하나의 칩안에 패키징된 것
    • 하나 만으로 LED나 센서 등의 장치를 사용 할 수 있어 작은 컴퓨터로 불린다
    • 주방가전 등에 들어가는 작은 컴퓨터(식기세척기, 밥솥 등)
  • 단일 칩 시스템 (System on a Chip)

    • Soc System on a Chip 의 약자로 하나의 칩으로 시스템 운영이 가능하다
    • RAM,ROM,GPU 등을 포함하고 있는 초소형 컴퓨터
    • 주로 스마트폰 등





To Do

1. 完) 노마드코더 리액트 초급 수강 - #2

2. 完) 알고리즘 최소 한 문제 - 220225's Algorithm

3. 完) 모던 자바스크립트 Deep dive 한 장 읽기

4. 完) CS 스터디 내용 정리하기






Today's Short Report

profile
Hound on the Code

0개의 댓글