Burt.K

코코아를 좋아하는 프로그래머입니다 ;)

폴리글랏 프로그래밍

 

 

폴리글랏프로그래밍

 

폴리글랏프로그래밍. 프로그래밍언어에 대한 흥미로운 책인 것 같아서 도서관에서 구해 읽어 보았다. 놀라운 것은 이 책의 인기가 정말 많아서 이 책을 읽으려고 두 달 반정도를 기다렸다는 것이다. 이 책을 다 읽고서 느낀 점은 현재 개발업에 종사하시는 분들이나 프로그래밍을 공부하는 사람들에게 프로개리밍 언어의 현재는 어떻고 미래는 어떻게 될 것가는 상당히 중요한 문제라는 것을 깨달았다.

이 책에서는 자바, C#, 스칼라를 중심으로 다루고 있는데 세 가지 언어를 주력으로 사용해 본적은 없었다. 게임 개발과 iOS에 주력했던 나는 C, C++, ObjC 를 주로 사용했었고 병특 때 PHP, ASP 등을 사용해 보았다. 물론 Java나 C#을 사용해 보지 않은 것은 아니고 프로젝트의 서브 도구를 만드는데 사용하는 수준이었다.

iOS를 주력으로 하며 굵직한 프로젝트도 여러개 하고 개인적으로 만든 앱을 순위권에도 올려보고(지금도 순위권에 있다.^^;) 했지만 지금 몸담고 있는 스타트업에서 안드로이드를 좀 더 주력시 하기에 지금은 안드로이드를 주력으로 하고 있다.

안드로이드를 하게 되면서 Java를 본격적으로 사용하게 되었는데 ObjC에 익숙해 있던 나는 정말 답답함을 느낄 수 밖에 없었다. 내가 ObjC에서 느낀 매력은 카테고리 기능과 널 객체에 메시지를 보내도 되는 기능이었다. 하지만 자바는 그렇지 않다. 수시로 만나게 되는  NullPointException과 문서대로 액티비티-프래그먼트-다이얼로그 등을 사용했는대도 발생하는 illegalStateException은 정말 답답하고 짜증나게 만들었다.

그러던 것을 느끼며 폴리글랏 프로그래밍을 읽었을 때, 스칼라가 나에게는 구원자로 느껴졌고 iOS에서 ObjC를 뒤로하고 Swift를 전면으로 내새우는지 이해할 수 있었다. 향후 미래의 프로그래밍은 함수형 프로그래밍 패러다임이 지배할 것 같은 느낌이다. Java의 행사코드가 사라지는 것만으로도 내게는 축복이다.

지금의 안드로이드를 바라보면 자바를 품게 된 것이 큰 실수가 아닌가 생각된다. 그나마 안드로이드 프로그래밍을 개발자들이 수행할 수 있는 것은 AndroidAnnotation, Dagger, Robo시리즈, EventBus 등 수 많은 굵직한 오픈소스들이 있어서 가능한 것이 아닌가 싶다. 마치 물 속으로 가라 앉으려 하는 안드로이드 자바를 위의 오픈 소스들이 줄을 묶어 고개만 내밀고 숨만 쉴 수 있게 하는 것처럼 보인다.

iOS에 Swift를 담은 애플과 C#을 멋지게 발전시켜온  MS, 과연 구글은 안드로이드에 어떤 언어를 내 놓을까? 스칼라를 공식으로 지원해 주면 얼마나 좋을까…

물론 지금도 스칼라를 사용해서 안드로이드를 개발할 수 있다. C,C++,Java를 오가며 안드로이드 앱을 개발하고 있는 요즘, 내가 사용하고 있는 언어에 대한 생각이 흐물해지려고 할 때 폴리글랏 프로그래밍은 프로그래밍언어의 바라보는 관점과 미래를 어떻게 바라봐야 하는지를 알려준 소중한 책이다.

 

– 책을 읽을 수 있는 자유가 있어 행복합니다.

← Xamarin for the Cross-Platform Mobile Development
Silver! 모바일 앱 개발은 Swift로 대동단결! →