누구나 쉽게 스칼라 + 플레이 - 스칼라 입문부터 게시판, 채팅 프로그램 제작까지
고락윤 지음 / 한빛미디어 / 2016년 11월
평점 :
절판


 자바 언어와 스프링 프레임워크, 오라클 DBMS가 웹개발의 표준이 되어버린 우리나라에서 새로운 언어와 프레임워크를 배우는 것은 무모한 도전이 아닐 수 없다. 심지어 정부가 자바 언어와 스프링 프레임워크를 기반으로 하는 "전자정부 표준 프레임워크"까지 만들어 해외 수출까지 하고 있는 현실에서 새로운 웹개발 프레임워크는 사치처럼 느껴질 수 있다.

 

 CPU의 코어 수가 증가하고 이를 최대한 활용하여 동시성 프로그래밍이 발전해 가고 있지만 여전히 자바 언어는 버전이 업그레이드 되면서도 한계를 드러내고 있다. 하지만 많은 개발자들이 자바 언어를 여전히 주 언어로 사용하고 있으며, 이미 금융, 유통, 의료 등 다양한 산업군에서 수많은 어플리케이션들이 자바 언어를 이용해 프로그래밍 되고 있다.

 

 개발자들이 낡은 자바 언어의 불편함을 감수하면서도 계속 이용할 수 밖에 없는 이유는 풍부한 라이브러리와 웹어플리케이션 서버(WAS)과 어플리케이션 성능 관리 툴(APM)과 같은 부가적인 어플리케이션 때문일 것이다. 자바 언어보다 편리하면서도 자바 언어가 가진 수많은 라이브러리들을 활용할 수 있고, 증가된 CPU 코어들을 최대한 활용할 수 있는 개발 언어를 기대하는 것은 꿈일까 하는 생각을 하던 차에 스칼라 언어를 알게 되었다.

 

 스칼라 언어를 처음 알게 된 것은 플레이 프레임워크 v1로 프로그래밍을 하게 되면서 플레이 프레임워크가 자바와 스칼라 언어 개발할 수 있다는 점에 주목하면서부터였다. 플레이 프레임워크가 v1은 자바 언어 위주였다면, v2로 업그레이드 되면서부터는 하위 버전의 호환성을 포기하면서까지 스칼라 언어 중심으로 변화되었다.

 

 나 또한 이런 변화가 플레이 프레임워크에 대해 실망스럽기도 했지만 플레이 프레임워크의 개발자들은 포스트 자바의 세상을 꿈꾸면서 스칼라 언어가 힘차게 날아오르는 데에 플레이 프레임워크가 기여하기를 바랬던 것 같다.

 

 플레이 프레임워크가 영감을 얻는 루비온레일즈 프레임워크가 루비 언어를 대중화 시킨 것처럼, 플레이 프레임워크는 스칼라 언어를 사용할 이유를 만들어 주었고 거기다 액터 모델로 병행 및 분산 처리를 효과적으로 할 수 있는 아카 라이브러리까지 장착하면서 많은 자바 개발자들을 유혹하고 있다.

 

 새로운 개발 언어를 배우는 것은 항상 러닝 커브(Learning Curve)를 넘어야 하지만 자바 가상 머신(Java Virtual Machine) 위에서 구동되고, 이클립스 기반의 IDE를 이용하며, 자바 라이브러리들을 그대로 이용할 수 있는 스칼라 언어야말로 자바 개발자들이 큰 노력을 하지 않고 최신 개발 언어의 패러다임으로 전환할 수 있는 좋은 선택지라 생각한다.


 특히 자바와 스프링 프레임워크 기반으로 개발된 엄청난 규모의 레거시 시스템을 보유한 회사에
근무하는 분들이라면, 레거시 시스템 기반을 유지하면서도 새로운 기술로 전환하고자 할 때 스칼라와 플레이 프레임워크는 좋은 대안이 될 것이다.

 

 그 시작을 이 책과 하면 된다. 그동안 스칼라 언어와 플레이 프레임워크에 대한 번역서들이 몇 권 출간되었지만, 1가지 주제만을 다뤘었고 분량도 너무 많을 뿐더러 최신 버전의 내용도 담지 못하여, 읽고 나서도 실무에 바로 적용하기는 어려운 점이 많았다.

 

 이 책은 스칼라 언어와 플레이 프레임워크에 지면을 절반씩 할애하면서도 쉬운 예제로 독자가
직접 프로그래밍을 하면서 익힐 수 있도록 했고, 함수형 프로그래밍 언어의 특징과 MVC 프레임워크 기반의 웹개발에서 사용되는 대부분의 기술들을 부담없이 이해할 수 있도록 설명하고 있다.

 

 굳이 이 책에서 아쉬운 점을 찾아보자면, MVC 프레임워크의 장점이라고 생각할 수 있는 HTTP 라우팅, 스트리밍 HTTP 응답, 웹어플리케이션 테스트 등에 대한 설명이 부족했고, 안전한 데이터 처리를 다루면서 보안에 취약한 MD5 해시 방법을 예제로 사용한 점이라 할 수 있다. 하지만 설명이 부족한 부분은 플레이 프레임워크의 공식 사이트(https://playframework.com/)에 있는 문서(Documentation)에 간결하면서도 잘 설명되어 있으니 참고하면 될 것이다.

 

 이 책은 다른 책에 비해 두껍지도 않고 가벼워서 지하철로 출퇴근 하면서 다 읽을 수 있었다. 스칼라 코드를 바로 실행해 보고 싶을 때에는 스칼라 피들 사이트(https://scalafiddle.io/)에서 연습해 보면 된다. 책의 예제들은 간결하면서도 각 주제를 설명하기에 충분하다.

 

 책의 이름대로 "누구나 쉽게 스칼라 + 플레이" 프레임워크를 배우고 즐기는데 이 책이 큰 기여를
할 것으라 생각하며, 이 책이 우리나라에서 스칼라 언어와 플레이 프레임워크의 저변을 확대할 기폭제가 될 것이라 확신한다. 소중한 책을 출간해 주신 저자와 출판사에 감사 드린다.


 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo