본문 바로가기
Book

You Don't Know JS : 타입과 문법, 스코프와 클로저

by 강동동 2022. 9. 26.

카일 심슨 지음  |  컴퓨터/IT  |  282페이지  |  2022.06.20 - 2022.08.04

 

[ 책을 읽게 된 동기 ]

  대학에서 수업을 듣고 개발자로 취업하여 프론트엔드 개발을 하는 동안 Javascript는 구현을 위해서 원하는 정보만 찾아서 배우고 가져다 쓰기 바빴지 언어 그 자체에 대해서 깊숙이 알고자 한 적은 없는 것 같았다. 그래서 프론트엔드 개발자라면 가장 많이 쓰는 프로그래밍 언어인 Javascript에 대해 잘 알아야하지 않겠나 싶었고, 그런 기본기가 탄탄한 프론트엔드 개발자가 되고자 그동안 외면해온 Javascript라는 언어의 본질에 대해서 파헤쳐보고자 그 첫 발걸음으로 이 책을 읽게 되었다.

 

[ 인상 깊은 구절 혹은 내용 ]

  이 책에서 다루는 주된 내용은 Javascript의 타입과 값, 이에 따라 수반되는 암시적/명시적 형변환, 가볍지만 잘 알아보지 않고 넘어간 기본적인 문법들, 스코프와 호이스팅 그리고 클로저에 대한 내용이다. 이 언어를 배우며 언어의 동작의 가장 근간이 될 타입과 값에 대해서 처음 자세하게 알게 되었으며 이에 따라 형변환이 각각 어떤 상황이 어떻게 동작하는지 알게 되어 실제로 개발하면서도 이 형변환을 고려하여 개발을 하게 되었다. (이를테면 여러 개의 boolean 값을 조합하여 그 값에 따라 분기처리를 해야할 때 암시적 형 변환을 이용해 숫자 덧셈 형태로 처리하여 코드를 훨씬 가독성이 좋게 바꾼다던지, &&와 || 연산자의 동작 원리를 이해하고 가드 역할 혹은 단락평가를 이용해서 코드를 짠다던지) 기본적인 문법 중에서도 미처 알지 못했던 것들을 알고는 이 언어와 더 친해진 느낌이 들었으며 그 이후 챕터들에서는 부끄럽게도 그동안 전혀 모르고 있던 호이스팅과 클로저에 대한 개념도 잡을 수 있었다.

 

[ 책을 읽고 난 후의 생각이나 느낌 ]

  이 시리즈의 책이 이 한 권이 아니기도 하거니와 이 시리즈를 읽는다고 Javascript라는 언어를 완벽히 깨우칠 수 있는 건 아니지만, 확실히 인터넷에서 단순히 단편적인 지식들로 배우는 것보다 작가의 구어체 말투와 책의 흐름에 따라, 언어를 파헤쳐가며 알아가다보니 언어 자체에 대해서 더 잘 "이해"하게 되고 친숙해진 것 같다. 누군가 자바스크립트는 똥이야! 라고 외칠 때, 완벽히 반대의 입장은 아니지만(..ㅎㅎ) 그래도 그 주장의 근거들에 대해 반박하거나 잘 못 알고 있는 부분을 짚어줄 정도는 된 것 같다. 위에서 말했듯 이 책 한 권으로 자바스크립트를 다 알 수 있는 건 아니기 때문에 앞으로도 나는 자바스크립트와 타입스크립트를 계속해서 공부해나갈테지만, 이 책으로 자바스크립트의 심연을 들여다보는 첫 걸음을 뗀 것은 정말 잘 한 일 같다. 물론 이번 한 번 이 책을 완독하면서도 챕터별로 3번씩은 복습했지만, 앞으로도 최소 세 번 완독은 할 수 있도록 꾸준히 복습하고자 한다.

 

[ 기록하고 다시 꺼내보기 위한 책의 내용 간단 정리 ]

<Part1. 타입과 문법>

Chapter1. 타입

Chapter2. 값

Chapter3. 네이티브

Chapter4. 강제변환

Chapter5. 문법

 

<Part2. 스코프와 클로저>

Chapter1. 스코프란 무엇인가

Chapter2. 렉시컬 스코프

Chapter3. 함수 vs 블록 스코프

Chapter4. 호이스팅

Chapter5. 스코프 클로저

'Book' 카테고리의 다른 글

함께 자라기 - 애자일로 가는 길  (0) 2022.06.20