하조은의 블로그

사랑스러운 자바스크립트

2024.02.06.

C언어, 첫사랑 같은 존재였다.

이뤄질 수 없는 사랑이랄까. 프로그래밍의 재미를 일깨워줬지만 실제 업에 사용하는 언어는 아니었다.

자바스크립트(JavaScript)는 그 후에 만났다.

웹을 다루기 위해 어쩔 수 없이 알게 된 언어. 필요해서 급한 대로 조금씩 쓰던 언어였다. 이후 몇 권의 책을 읽으며 조금 더 이해하게 됐고 반복해서 사용한 덕분에 자바스크립트는 내 삶의 일부가 되었다.

이후에는 자바스크립트에 대해 더 알려고 하지 않았다. 모국어를 시간 내서 공부하지 않는 것처럼. 자바스크립트를 따로 공부할 필요를 느끼지 못했다.

작년 말, <You Don't Know JS Yet>이 출간된다는 소식을 소셜 미디어를 통해 접했다. 모처럼 장바구니에 자바스크립트 학습 도서를 담았다.

그 후 한빛미디어에서 연락이 왔고 장바구니에 담긴 책을 리뷰해 달라고 했다. 운명이란 이런 걸까.

카일 심슨

이 책의 저자, 카일 심슨은 독자들에게 좋은 사수가 되어줄 것 같다.

좋은 사수를 만나는 건 너무 중요하다. 일을 빠르게 배울 수 있을 뿐만 아니라 커리어를 쌓아가며 사용할 무기가 되는 가치관을 배울 수 있기 때문이다.

온갖 트렌드에 대한 정보로 두려움에 휩싸이기 쉬운 요즘, 근본을 추구하는 저자의 자세는 많은 이들에게 위로와 영감을 준다.

잘못 설계된 부분은 피하고 일부 좋은 문법만 배워서 사용하라는 조언이나, X를 대체하는 문법인 Y만 사용하라는 조언을 듣는다면 무시해도 좋습니다.

모든 문법에는 쓰임새가 있습니다. 다만 어떤 문법은 좀 더 유연하고, 어떤 문법은 주의를 기울여 명확한 의도를 가지고 사용해야 한다는 차이만 있을 뿐입니다.

사랑스러운 자바스크립트

업에선 자바스크립트를 온전히 이해할 기회가 부족하다.

라이브러리, 프레임워크의 도움을 받기 때문이다. 자바스크립트를 직접 만나기보단 간접적으로 만난다. 언어가 제공하는 온갖 혜택을 받고 있으면서도 언어를 깊이 이해할 기회는 자주 찾아오지 않는다.

특정 존재의 특징이나 개성에 대해 이해할 때 그 존재에 대한 애정은 더 커진다. 자바스크립트에선 this를 이해하는 순간이 그랬다.

책에서 this에 대한 설명을 읽는 순간, "아! 맞아. 자바스크립트는 이런 매력이 있었지"하고 생각했다. 마치 처음 이 언어의 매력을 알게 됐을 때처럼.

이 책의 부제가 '자바스크립트의 개념, 스코프와 클로저'인 만큼 this를 포함한 자바스크립트의 특징을 이해할 수 있는 예제와 설명이 가득하다.

그렇게 하나씩 개념을 이해하면서 자바스크립트를 더 알고 싶다는 생각이 들었다. 라이브러리, 프레임워크에 의존하지 않은 온전한 자바스크립트 그 자체의 깊이와 맛을 느끼고 싶어졌다.

자꾸 궁금하고 더 알아가고 싶은 존재, 사랑스럽단 말로 표현해도 좋지 않을까.

작동하는 프로그램을 만드는 정도로는 충분하지 않습니다. 거기서 멈춰서는 안 됩니다.

그룹 스터디에 적합한 책

이 책은 자바스크립트 중급 이상 개발자를 위한 책이다.

한 번 읽고 이해하긴 어려운 책이다. 2년 차 이상의 개발자가 그룹 스터디를 하며 읽기에 제격이다.

솔직히 말하자면, 서평을 작성하는 지금도 이 책을 모두 읽진 못했다. 당장 전부를 읽진 않을 거다. 급하게 읽기보다 계획적으로 조금씩 읽어나가고 싶다.

운영 중인 스터디에서 함께 읽자고 권해볼 생각이다.

그 누구도 이 책에 담긴 방대한 정보를 단 한 번에 뇌에 새기고 유지할 수 없습니다.

이 책의 목표는 여러분이 탄탄한 근거를 갖춘 의견을 가질 수 있도록 격려하는 것입니다.