Skip to content

Kyunghwa Yoo

자바스크립트 기본기 꼼꼼하게 쌓기 도전!

javascript1 min read

결심을 하게 된 계기 (Why)

이번에 이직을 준비하면서 면접에서 나의 기본기가 많이 지적당했다. 대략적으로 개념만 알고 있던 것들에 대해 조금만 깊이가 있는 질문을 하게 되면 막히게 되었던 것이다. 그래서 나 스스로 반성을 많이 하게 되었다. (결국 면접은 다 떨어지고 말았다.)

그래서 이번 기회에 자바스크립트 기본기를 천천히 꼼꼼하게 다지고 가야겠다고 다짐하게 되었다.

자바스크립트의 기본은 무엇일까? (What)

자바스크립트 개발자가 가져야할 기본기로는 다음과 같은 것들이 있을 것이다.

  • Object
  • Array
  • Function
  • type casting
  • Scope
  • Closure
  • Hoisting
  • Prototype chain
  • Design Pattern
    • OOP pattern
    • Module pattern
  • EventLoop
  • Memory Management
  • DOM Rendering
  • Event Handling

어떻게 해야 가장 효율적으로 기본기를 쌓을 수 있을까? (How)

다음과 같은 방법으로 기본기를 쌓을 수 있을 것이다.

  • 관련 서적을 참고하여 정리한다.
  • MDN, Web Fundamentals 등 페이지를 공부한다.
  • 블로그를 검색하여 다른 사람들은 어떻게 정리했는지 살펴본다.
  • 예제를 직접 만든다.
  • 정리한 내용을 블로그에 포스팅한다.

자바스크립트 서적 조사

조사 방법

  • 서울시에서 운영하는 도서관 통합 검색과 자주 이용하는 Yes24 홈페이지 검색을 이용해서 자바스크립트 를 검색한다.
    • 책을 다 사긴 금전적인 압박이 있으니 서울시립도서관에서 빌려 볼 생각으로 도서관 검색을 이용했다.
  • 너무 오래된 책은 보고싶지 않았기 때문에 시간역순으로 정렬했다.
  • jQuery나 기타 다른 라이브러리, 프레임워크가 제목에 들어간 책은 제외했다.
  • 목차를 보면서 너무 기본적인 것들에 대해서 다루거나 너무 심화된 것들에 대해서 다루는 것들은 제외했다.
  • 1차로 선택한 책 중에서 키워드별로 묶었다. (성능/객체지향/디자인패턴/기타등등)
  • 페이지수가 너무 많은 것은 후순으로 미뤘다. 읽다가 지칠 것 같았다. 기준은 500페이지로 했다.
제목저자출판사선택
자바스크립트를 깨우치다 (204쪽)코디 린들리 저 / 김태곤 역비제이퍼블릭(BJ퍼블릭)O
더글라스 크락포드의 자바스크립트 핵심 가이드 (240쪽)더글라스 크락포드 저 / 김명신 역한빛미디어O
이펙티브 자바스크립트 (280쪽)데이비드 허먼 저 / 김준기 역인사이트(insight)O
You Don’t Know JS 타입과 문법, 스코프와 클로저 (282쪽)카일 심슨 저 / 이일웅 역한빛미디어O
인사이드 자바스크립트 (284쪽)송형주, 고현준 공저한빛미디어O
자바스크립트 웹 애플리케이션 (364쪽)알렉스 맥카우 저 / 우정은 역한빛미디어O
속 깊은 자바스크립트 (452쪽)양성익 저루비페이퍼O
You Don’t Know JS this와 객체 프로토타입, 비동기와 성능 (460쪽)카일 심슨 저 / 이일웅 역한빛미디어O
자바스크립트 닌자 비급 (482쪽)존 레식, 베어 바이볼트 공저 / 강대명, 김광훈, 이의호 공역인사이트(insight)O

객체지향 관련 책

제목저자출판사선택
객체지향 자바스크립트의 원리 (152쪽)니콜라스 C. 자카스 저 / 김태곤 역비제이퍼블릭(BJ퍼블릭)O

디자인 패턴 관련 책

제목저자출판사선택
자바스크립트 코딩 기법과 핵심 패턴 (272쪽)스토얀 스테파노프 저 / 김준기, 변유진 공역인사이트(insight)O
자바스크립트 디자인 패턴 (332쪽)사이먼 팀스 저 / 류영선 역에이콘출판사O

성능 관련 책

제목저자출판사선택
자바스크립트 성능 최적화 : 느린 자바스크립트를 잡아라 (288쪽)니콜라스 자카스 저 / 한선용 역한빛미디어O
자바스크립트 성능 이야기 (296쪽)박재성, 심상민, 양정권, 황준호 공저위키북스O

너무 페이지 수가 많아서 후순으로 밀려난 책

제목저자출판사선택
자바스크립트를 말하다 (588쪽)악셀 라우슈마이어 저 / 한선용 역한빛미디어O
JavaScript Cookbook (784쪽)셸리 파워즈 저 / Ann Lee 역 / 양진화 감수교학사O
객체지향 자바스크립트 3/e (688쪽)베드 안타니, 스토얀 스테파노프 저/류영선 역에이콘출판사O
자바스크립트 패턴과 테스트 (624쪽)래리 스펜서, 세스 리처즈 공저 / 이일웅 역길벗O

ES6에 특화되었기에 탈락된 책(나중에 꼭 읽어볼 예정)

제목저자출판사선택
러닝 자바스크립트이선 브라운 저 / 한선용 역한빛미디어X
ECMAScript 6김영보 저루비페이퍼X

난이도 조절에서 탈락된 책 (개인적인 기준)

제목저자출판사선택
뷰티풀 자바스크립트안톤 코발요프 저 / 김영하 역비제이퍼블릭(BJ퍼블릭)X
자바스크립트 언락드미트리 세이코 저 / 류영선 역에이콘출판사X
자바스크립트 마스터 북야마다 요시히로 저 / 정인식 역제이펍X
자바스크립트 프로젝트북권대용 저한빛미디어X
처음 만나는 자바스크립트가노 스케하루 저 / 김완섭 역제이펍X
몰입! 자바스크립트김영보 저ITCX

자바스크립트 서적 선택 후 정리

  • 여러 책을 읽어가면서 많이 중복되는 부분일수록 더 중요할 것이다.
  • 키워드별로 여러 책에서 나온 설명을 잘 짬뽕시켜서 정리하면 좋은 결과물이 나오지 않을까? 라는 가정에서 기본기 다지기를 시작할 예정이다.
  • 도서관에 가서 순서대로 책을 읽어 내려갈 것이다. 여러 키워드가 나올 것이고 하나의 키워드마다 잘 정리해서 블로그에 포스팅할 것이다.
  • 끊임없이 리팩토링을 할 것이다.
    • 하나의 포스트에 두 개념이 공존한다 싶으면 나눈다.
    • 중복된 말이나 표현이 또 나온다면 중요하다는 뜻이니까 강조한다.

다른 기초다지기 방법들은...?

  • 일단 서적 먼저 진행한다.
  • Javascript 내용은 인터넷보다 서적이 더 잘 정리되어 있을 것이란 추측이 있다.
  • DOM 관련 내용은 Javascript 기초 개념부터 다진 후 그 다음에 진행하려 한다.
  • browser rendering optimization 은 Google Web FundamentalsUdacity 강의를 보며 블로그에 정리하자.
© 2020 by Kyunghwa Yoo.