-
-
폴리글랏 프로그래밍 - 새로운 자바 언어를 기다리는 히치하이커를 위한 안내서
임백준 지음 / 한빛미디어 / 2014년 3월
평점 :
절판
폴리글랏 프로그래밍. 갖가지 프로그래밍 언어로 가득 채워진 겉표지로 하여금 폴리글랏 프로그래밍이 무엇을 의미하는지 간접적으로 느끼게 한다. 폴리글랏은 여러 나라의 언어를 구사하는 다국어 구사자를 일컫는 말이다. 그런 의미에서 IT에서는 각 프로그래밍 언어의 장단점을 이해하여 보다 적합한 언어를 선택해서 효율적으로 프로그래밍을 해야한다. 폴리글랏이라는 용어가 생소할 뿐, 이미 여러 분야에서는 한 가지 이상의 언어를 이용해서 프로그래밍을 하고 있다. 단순히 웹 만을 봐도 웹사이트를 구축하는 데에만 HTML, Javascript, JSP 등 여러 언어가 사용되고 있다.
책에서는 저자의 경험을 바탕으로 과거에서부터 현재까지 언어가 어떻게 발전해 왔는 지를 Java, C#과 스칼라를 통해서 설명하고 있다. 프로그래밍은 절차지향언어에서 객체지향언어로 그리고 이제는 함수형 언어가 화두가 옮겨가고 있다. 저자는 책에서 프로그래밍에 실질적으로 프로그래밍에 도움이 되지 않고 장황하게 입력되어 있는 코드를 행사 코드라고 언급했다. 앞으로 프로그래밍 언어에서는 이러 행사 코드를 점차 최소화하며, 추상적인 형태로 언어가 발전해 나갈 것이라고 했다.
Java의 람다, 클로저, 제네릭등 처음 이 개념을 받아들일 때 많은 어려움을 느꼈던 부분이다. 이런 부분이 등장하게 된 이유와 그에 숨겨진 비화를 이야기 풀어내듯이 말하고 있다. C# 같은 경우는 Java에 대응하기 위해 C++의 장점과 Java가 가지는 객체지향적 언어의 장점을 결함하여 등장했다. 저자는 C#만이 Java의 굴레에서 조금씩 벗어나 C#만의 장점을 가지게 된 이유를 Java와 닮은 듯 다른 부분을 통해서 설명하고 있다. C#이 발전해 나가면서 Java와는 다르게 C# 고유의 색을 만들어 갔던 것처럼, 스칼라도 Java의 고유한 장점과 함수형 언어의 장점을 통해서 Java가 한 시대를 이끌었던 것처럼 스칼라가 그 뒤를 이어주기를 기대하고 있는 것 같다. 책에서는 Java와 C# 뿐만 아니라 다른 언어와의 비교를 통해서 스칼라가 가지는 고유한 부분을 언급하고, 트위터에서 실제로 스칼라를 이용하여 프로그래밍한 부분을 예를 들어 살펴보며, 독자의 관심을 끈다. 또한, 관심있는 독자의 스칼라 입문을 돕기 위해 저자는 책을 통해 도서와 웹사이트를 추천한다.
함수형 언어로의 새로운 패러다임의 변화에 따라 Java와 C#의 지금까지 걸어왔던 행보를 통해서 스칼라의 행보를 살펴볼 수 있다. 변화에 맞춰 새로운 언어의 문법 하나하나 혹은 더 많은 개념을 정확히 알기보다는 추상적으로 발전해 나가는 프로그래밍 언어에 맞춰 얼마나 다양한 언어를 빠르게 학습하며 적용해 사용할 줄 아는 개발자가 되어야 한다고 저자는 말하고 있다. 다른 분야도 마찬가지겠지만, 특히나 컴퓨터 관련 분야는 끊임없이 학습해야 하는 분야임을 책을 통해 시사하고 있다. 언어에 대한 이런저런 이야기를 접하면서 저자와 수다를 떤다는 생각으로 가볍게 읽어나가기에 좋은 책이다.