본문 바로가기
학습중.../(책)모던 자바스크립트

~p62

by sweesweet 2022. 12. 28.

p47

언매니지드 언어와 매니지드 언어
언매니지드 언어(C언어)
개발자가 명시적으로 메모리를 할당하고 해제하기 위해 malloc()과 free()같은 저수준 메모리 제어기능을 제어
메모리 제어를 개발자가 주도할 수 있으므로 개발자의 역량에 따라 최적의 성능을 확보할 수 있지만 그 반대의 경우 치명적 오류를 생산할 가능성도 있다

매니지드 언어( 자바스크립트)
메모리의 할당 및 해제를 위한 메모리 관리 기능을 언어차원에서 담당하고 개발자의 직접적인 메모리 제어를 허용하지 않음. 개발자가 명시적으로 메모리를 할당하고 해제할 수 없음.사용하지 않는 메모리의 해제는 **가비지 콜렉터가 수행하게 된다. 개발자의 역량에 의존하는 부분이 상대적으로 작아져 어느정도 일정한 생산성을 확보할 수 있지만, 성능면에서 어느정도의 손실을 감수할 수 밖에 없다.

언매니지드 언어 매니지드 언어
개발자가 메모리 제어 주도 가능
(malloc(),free())
개발자의 직접적인 메모리 제어 허용 X
(가비지콜렉터 수행)
개발자의 역량에 따라 최적의 성능 확보 가능 일정한 생산성 확보 가능
개발자의 역량에 따라 치명적 오류 생산할 가능성 존재 성능면에서 어느 정도의 손실을 감수해야 함 

**가비지 콜렉터
애플리케이션이 할당한 메모리 공간을 주기적으로 검사하여 더이상 사용되지 않는 메모리를 해제하는 기능
어느 식별자도 참조하지 않는 메모리 공간을 헤제함으로써 메모리 누수를 방지!
식별자 네이밍 규칙
1. 특수문자를 제외한 문자, 숫자 언더스코어, 달러기호를 포함할 수 있다.
2. 특수문자를 제외한 문자, 숫자 언더스코어, 달러기호로 시작해야한다. 숫자로 시작하면 X
3. 예약어는 식별자로 사용 할 수 없다

p51 리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법

p53 값으로 평가될 수 있는문은 모두 표현식이다

let x = 1+2 //식별자 표현식 x는 3으로 평가됨
x+3 //표현식

p54 문은 프로그램을 구성하는 기본 단위이자 최소 실행 단위. 문의 집합으로 이뤄진것이 프로그램, 문을 작성하고 순서에 맞게 나열하는 것이 프로그래밍

p55 세미콜론은 문의 종료를 나타냄. 문을 끝낼 때 세미콜론을 붙여야하지만, 0개이상의 문을 중괄호로 묶은 코드블록 뒤에는 세미클론을 붙이지 않는다. ex) if문 for문 함수등의 코드 블록뒤에는 세미콜론X => 문의 종료를 의미하는 자체 종결성 을 갖음 

p60 정수, 실수, 2진수, 8진수, 16진수 리터럴은 모두 메모리에 배정밀도 64비트 부동소수점 형식의 2진수로 저장된다. 자바스크립트는 2진수, 8진수, 16진수를 표현하기 위한 데이터 타입을 제공하지 않기 때문에 이 값들을 참조할 시 모두 10진수로 해석된다.

p61 Infinity: 양의 무한대 / -Infinity: 음의 무한대 / NaN:산술 연산 불가(NotANumber)p62 문자열을 따옴표로 감싸는 이유는 키워드나 식별자 같은 토큰과 구분해기 위해서다.만약 문자열을 따옴표를 감싸지 않으면 자바스크립트 엔진은 키워드나 식별자 같은 토큰으로 인식한다.자바스크립트의 문자열은 원시 타입이며, 변경불가능한 값이다(문자열이 생성되면 문자열 변경X)

 

[출처]모던 자바스크립트 Deep Dive

'학습중... > (책)모던 자바스크립트' 카테고리의 다른 글

~p123  (0) 2023.01.02
~p107  (0) 2023.01.01
~p92  (0) 2022.12.30
~p73  (0) 2022.12.29
~p45  (0) 2022.12.27