폴리글랏 프로그래밍 후기

임백준 작가님의 폴리글랏 프로그래밍 을 읽고 핵심내용만 간략하게 정리해보려고 한다. 시대의 흐름에 따라 재미있게 설명해주기 때문에, 킬링타임 용으로 가볍게 읽기 좋은 책인 것 같다.

  • 모든 언어의 발전은 추상수준을 상승시켜서 프로그래머가 작성해야 하는 코드의 분량을 줄이는 방향으로 움직인다. (파이썬, 루비가 대표적인 예)
  • 한 사람이 여러 명의 배우자와 함께 살아가는 것을 폴리가미(polygamy) 라고 한다. 이와 비슷하게 여러 언어를 사용하는 것을 폴리글랏(polyglot) 이라고 한다.

  • 사람들은 C언어가 어느 날 갑자기 새롭게 만들어진 언어라고 착각하는 경향이 있다. 하지만 C는 B라는 더 작은 언어로부터 조금씩 성장해서 만들어진 언어다.
  • 프로그래밍 언어의 구체적인 모습을 떠나서 언어를 개발하는 과정 자체가 공통적인 패턴을 가지고 있다. 우리는 이 본질적인 패턴에 집중해야 한다. 또한, 모든 언어는 나타나게 된 배경이 있다.

  • 자바가 가진 문제점은 복잡성을 해결하기 위해 수많은 오픈소스 라이브러리를 만들었다는 것이다. 이 때문에 불필요한 코드가 많아 생산성이 떨어지고, 부자연스러운 확장이 이루어진다. 자바는 이미 정점을 지났다. 더 이상 간단해지거나 의미있는 발전을 할 수 없는 언어이다.
  • 최근 마이크로 아키텍쳐, 멀티코어, 분산처리 등의 복잡한 환경을 커버할 수 있는 언어로 스칼라를 소개한다.

앞으로 프로그래머는 어느 하나의 언어에 안주할 수 없다. 폴리그랏 프로그래밍 시대에는 패러다임을 달리하는 여러 개의 언어를 자유롭게 구사하지 않으면 살아남기 힘들다. 따라서 앞으로 필요에 따라 언어를 빨리 습득하는 능력 또한 중요하다.