모던 자바스크립트 스터디 1주차
2025-04-02 모던 자바스크립트 스터디 1주차
OT, 들어가며 ~ 4.2장
OT
-
자바스크립트는 멀티 패러다임 프로그래밍 언어이다.
-
책 내용을 다 알아야 하는가?
-
실무에서 쓰는 내용도 있을 것이고, 아닐 내용도 있을 것이다.
-
자바스크립트는 “마스터할 수 없다.”
- 자바스크립트는 계속 변하고 있기 때문.
-
-
다른 언어는 대체할 수 있지만, 프론트엔드 개발을 하면서 자바스크립트는 대체 불가능하다.
-
일단 1회독을 한 후에 어떤 이야기를 하는지만 알아도 큰 수확이 될 것이다.
들어가며
서문은 신경써서 쓸 수밖에 없는 구조다. 작가가 어떻게 글을 작성하려고 했는지 의도를 알 수 있다. |
자바스크립트의 태생적 특징
- 자바스크립트의 탄생 목적은 웹페이지의 단순한 보조 기능을 처리하기 위한 제한적인 용도를 목적으로 태어났다.
- 비전공자도 개발할 때 사용할 것이라는 전제로 개발되었음
- 자바스크립트에는 암묵적 동작이 있다.
- 내부적으로 알아서 처리해주는 게 있음
- 내가 의도하지 않은 방향으로 동작할 수 있다. → 자바스크립트 동작 원리를 알 필요가 있다.
- 내부적으로 알아서 처리해주는 게 있음
기본 개념과 동작 원리 이해의 중요성
- 코드를 작성했을 때 컴퓨터에서 어떻게 동작하는지 예측 가능하고, 명확히 설명할 수 있어야 한다.
- 기본 개념
- 용어의 뜻을 아는 것
- 미스 커뮤니케이션을 줄이기 위해 알 필요가 있음
1장 프로그래밍
-
프로그래밍은 일종의 커뮤니케이션(사람과 컴퓨터 간의 커뮤니케이션)
-
프로그래밍은 요구사항의 집합을 분석해서 적절한 자료구조와 함수의 집합으로 변환한 후, 그 흐름을 제어하는 것이다.
2장, 3장
- 쭉 읽어보고 따라해보기
4장 변수
처음에는 var를 설명 어차피 현업에서 var 안 쓰는데 왜 배우느냐?
→ var 이후에 let과 const가 나오게 되었고, 왜 나오게 되었는지 알 수 있음
4.1 변수란 무엇인가? 왜 필요한가?
-
변수는 메모리 공간이다.
var result = 10 + 20;
-
10+20이라는 값을 다시 쓰기 위해 변수를 사용함
-
변수: 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름
console.log(a); // ? var a = 1; // 자바스크립트 엔진은 아래와 같이 분리해서 이해함 console.log(a); // ? var a; // 변수 선언 a = 1; // 값 할당(엄밀히 말하면 재할당)
- 변수 선언은 런타임 이전에 먼저 실행된다.
- 따라서,
console.log(a)
의 값은undefined
가 출력된다.
- 따라서,
- 변수 선언은 런타임 이전에 먼저 실행된다.
-
4.2 식별자
- 식별자는 어떤 값을 구별해서 식별할 수 있는 (스코프 내에서) 고유한 이름을 말한다.
4.5 값의 할당
console.log(score); // undefined
var score = 80; // 변수 선언과 값의 할당
console.log(score); // 80
var score
에서undefined
가 초기화되어서 메모리 어딘가에undefined
가 할당된다.undefined
는 원시 타입이기 때문에 변경 불가능한 데이터이므로, 80을 할당하면 메모리의 다른 곳에 80이 할당된다.
1주차 회고
모던 자바스크립트 딥다이브 라는 책이 자바스크립트의 정석과도 같은 책이라고 들었다. 사서 읽어보자고 하는 찰나 인프런에서 이웅모 작가님이 하시는 스터디 모집 글을 보게 되어서 바로 신청하게 되었다.
스터디의 전체적인 난이도가 취준생에게 맞춘 난이도라고 하셨다. 나에게는 참 다행인 일인것 같다. 15장까지는 자바스크립트 기본 개념 같은 챕터들이라고 했는데 기본 개념을 읽으면서 몰랐던 얘기들이 많아서 걱정이 되었다.
하지만, 어떤 내용을 다루는지에 대해서만 알고 있어도 충분히 도움이 된다고 하셨다. 모르는 내용을 기술 부채로 남겨두고 다음 장으로 넘어갔을 때 모르는 내용이 해소가 되는 부분이 있었다. 이 책이 얼마나 자세하게 다루고 있으면 모르는 부분이 뒤에서 설명이 되고 있을까 하는 생각이 들었다.
하나에 꽂혀서 이해하려고 하는 것보다, 메모를 해두고 넘어가는 것이 어쩌면 더 좋을 수 있겠다는 생각이 들었다. 실제 진도가 예상 진도와 많이 차이가 나서 책을 읽을 때 더 여유롭게 읽고 이해하는 시간을 더 가져도 될 것 같다.