요새 틈틈히 프로젝트 제로(Zero)로 간단한 코딩을 하고 있습니다. 제로 프로젝트는 경량의 미들웨어이자 웹기반 개발환경입니다. 개발 언어는 PHP, 그루비, Java를 지원하고 런타임이 약 40M밖에 되지 않는데다가 Request가 있을 경우에만 그 런타임이 동작하고 request가 없으면 런타임은 사라지고 약 100k 정도의 메모리를 차지하는 리스너만 동작하여 더이상 작아질래야 작아질 수 없을만큼 경량화되면서도 웹애플리케이션을 개발하기 위한 대부분의 것들을 모두 포함하는 미들웨어입니다.
게다가 가장 많이 쓰이는 PHP와 자바 그리고 그루비같은 스크립트 언어등을 지원하다보니 개발하는 것도 쉽고 재밌기까지 합니다.
이렇게 제로 프로젝트로 놀다보니 떠오르는 생각은,
어째서 미들웨어는 그토록 무거워지고 복잡해져버렸을까? 무슨 업보라도 지고 있듯 언젠가는 필요하리라 생각하는 그 모든 것들을 짊어지고 있는 근래의 자바 미들웨어들을 보고 있으면 곧 무너질 바벨탑처럼, 혹은 스타워즈의 제국군이나 데스스타처럼 위태위태해보입니다.
혹자는 말합니다. 우리가 비즈니스적으로 개발하려던 핵심 말고는 다른 모든 것을 알아서 해주기 위해 그런 라이브러리나 프레임워크가 필요하고 어차피 컨테이너가 알아서 해주니 개발과는 상관없지 않느냐고, 모든 것을 서비스로 만들어주면 어차피 밑의 부분은 신경 안쓰고 살 수 있다는 이상적인 이야기들.
수없이 많은 레이어들 그 위에 만들어진 애플리케이션, 과연 우리의 애플리케이션중 얼마나 많은 것들이 그 수많은 레이어에 부끄럽지 않을 정도의 고급 기능을 사용하고 있을까요?
프로젝트 제로를 접하면서, 기존의 미들웨어들의 큰 덩치에 의문을 품은 아침이었습니다.
게다가 가장 많이 쓰이는 PHP와 자바 그리고 그루비같은 스크립트 언어등을 지원하다보니 개발하는 것도 쉽고 재밌기까지 합니다.
이렇게 제로 프로젝트로 놀다보니 떠오르는 생각은,
어째서 미들웨어는 그토록 무거워지고 복잡해져버렸을까? 무슨 업보라도 지고 있듯 언젠가는 필요하리라 생각하는 그 모든 것들을 짊어지고 있는 근래의 자바 미들웨어들을 보고 있으면 곧 무너질 바벨탑처럼, 혹은 스타워즈의 제국군이나 데스스타처럼 위태위태해보입니다.
혹자는 말합니다. 우리가 비즈니스적으로 개발하려던 핵심 말고는 다른 모든 것을 알아서 해주기 위해 그런 라이브러리나 프레임워크가 필요하고 어차피 컨테이너가 알아서 해주니 개발과는 상관없지 않느냐고, 모든 것을 서비스로 만들어주면 어차피 밑의 부분은 신경 안쓰고 살 수 있다는 이상적인 이야기들.
수없이 많은 레이어들 그 위에 만들어진 애플리케이션, 과연 우리의 애플리케이션중 얼마나 많은 것들이 그 수많은 레이어에 부끄럽지 않을 정도의 고급 기능을 사용하고 있을까요?
프로젝트 제로를 접하면서, 기존의 미들웨어들의 큰 덩치에 의문을 품은 아침이었습니다.
공유하기 버튼
|
|



덧글
2009/08/28 11:24 # 답글
비공개 덧글입니다.그런데 막상 해보면 오히려 개발 기간과 투입 인력이 줄더라구요.
EJB가 필요 없는 건 아닌데, 닭 잡는데 소 잡는 칼 쓰면 번거로와요.
소 잡는 칼로 닭 잡으려면, 칼을 고정하고 닭을 내리쳐야 하거든요... ^^;
가짜집시 님 말씀에 슬쩍 공감...