티스토리 뷰

폴리글랏 프로그래밍에 대한 개인적인 생각이다.

우리는 이미 폴리글랏 프로그래밍 시대에 살고 있다.

최근 다양한 프로그래밍 언어들이 새롭게 등장하거나 재 조명 받고 있다.

한 가지 언어가 아닌 다양한 언어를 사용하여 프로그래밍 한다는 의미로 폴리글랏 프로그래밍(polyglot programing) 이라는 단어가 사용되어 지고 있다.


어떤 사람들은 "폴리글랏을 이야기 하기 전에 하나의 언어라도 깊이 이해 하라"고 충고 하기도 한다. 틀린 말은 아니라고 생각한다.


하지만 나는 좀 다르게 생각한다. "하나의 언어를 깊이 이해하고 싶으면 다른 언어를 이해 하고 그 차이점을 분석 할 수 있는 것이 도움이 된다"는 생각 때문이다.


JAVA 개발자로 입문하여 PHP라는 언어에 대해서 무지한 상태에서 PHP는 개인 홈페이지를 만드는 언어가 아닌가? 라는 생각을 가졌던 때가 있었다. 그런데 PHP로 하나의 프로젝트를 완료 한 뒤 나는 반성 할 수 밖에 없었다. 스크립트 언어가 가지는 장점을 이해 하는 순간 나의 생각은 바뀌었다.

언어는 정적이지 않다.

 언어를 비롯한 프로그래밍 환경 등이 오픈소스화 되어 가면서 더 많은 변화를 겪는다. 새로 등장한 어떤 언어에서의 장점이 감지되면 기존의 언어에서 그 새로운 언어가 가진 장점을 구현하기 위해 연구 하고, 변화 시킨다. 이 부분이 중요하다고 생각한다. 새로운 언어의 장점을 알고 이해 할 수 있어야 기존 언어를 더 발전 시킬 수가 있다고 생각 한다.


기존 언어가 새로운 장점을 구현 하는데에 구조적으로 문제가 있다고 하면, 새로운 언어의 장점을 포기 하고 기존언어를 그대로 사용 할 것인가? 아니면 장점을 사용하기 위해 새로운 언어를 사용 할 것인가? 우리는 판단을 해야만 한다.


이런 선택의 시간을 줄여 줄 수 있는 환경의 또 다른 변화가 있다고 생각 한다.

바로 마이크로 서비스 아키텍쳐 (Micro Service Archtecture) 이다.

마이크로 서비스 아키텍쳐란 독립적인 역할을 수행하는 작은 단위의 서비스로 분리 하는 형태의 구조 로 설계하는 형태를 말한다.


독립적인 작은 단위의 서비스로 분리 한다라는 말은 곧 각 서비스 별로 최적화된 언어, 프레임워크를 선택하여 사용 할 수 있다는 말이기도 하다. 이런 선택을 하기 위해서는 독립적인 서비스를 분석하고, 해당 서비스에 어떤 환경이 적합 할 지 판단 할 수 있어야만 한다. 이런 선택을 위해서 우리는 다양한 언어와 환경을 경험 해야 할 필요가 있다. 서비스별로 중요한 요소는 다를 수 있기 때문이다.

프로그래밍은 점점 더 쉬워 지고 있다. 그리고 앞으로는 더 쉬워질 것 이라고 생각한다.

10년 전 하나의 애플리케이션을 만들기 위해 두꺼운 책 몇 권을 외워야 했다면, 지금은 잘 만들어져 있는 오픈소스 라이브러리를 사용하거나 어떻게 구현해야 하는지를 구글링을 통하여 더 쉽게 접근 할 수 있는 시대에 살고 있다.


폴리글랏 프로그래밍 시대에 살고 우리 프로그래머들에게는 이제 새로운 능력이 요구 되어 지고 있다고 생각한다.


새롭게 등장하는 다양한 기술을 활용할 수 있도록 이해하고 학습하는 러닝커브(Learning Curve)시간을 줄이는 적응력이 중요 해 지고 있다고 생각한다.


개발자로써 살아 가면서 항상 느끼게 되는 점은 개발자는 평생 공부 해야 하는 직업 중에 하나라는 생각...


하지만 그것이 개발자의 매력이기도 하기 때문에 즐거운 마음으로 개발자로 살아 가려 한다.

'YcPark' 카테고리의 다른 글

서비스 개발의 우선순위  (0) 2017.07.14
퇴사 후 100일  (0) 2017.07.06
원칙대로 행동하고 결과를 기다리다  (0) 2017.06.25
도전이라는 말  (0) 2017.06.23
얼마나 정확하게 동작 하느냐  (0) 2017.06.13
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함