안녕하세요, me2idea 개발에 참여한 ways 입니다. 오늘은 me2idea 개발을 하면서 하고 싶었던 이야기들을 적어보려합니다. 오늘이 1편이고 나머지 분들도 각자 생각하신 주제를 가지고 종종 이 블로그에서 찾아뵐 예정입니다.

사용자 삽입 이미지

애플리케이션을 통해 me2day를 써보신 분은 아시겠지만, me2day에는 유난히 adobe AIR로 만든 프로그램이 많습니다. 트위터도 그런 걸로 보아 마이크로 블로그의 한 가지 유행인 듯도 하네요.  저희가 개발 플랫폼을 정할 때도 당연한 듯 AIR를 선택했습니다.

AIR 프로그램을 HTML+javascript 로 구현
AIR 프로그램은 다양한 방법으로 개발할 수 있습니다. 크게 나누자면 adobe사의 FLEX builder 등 상용프로그램을 이용하는 방법과, 웹 개발을 하듯이 HTML+javascript 로 하는 방법의 두 가지가 있습니다. 쉽게 말해서 RIA(Rich Internet Application)를 구현하는 데 있어 Flash를 이용하는 방법과 AJAX로 대표되는 javascript를 이용하는 방법이 있는 것과 비슷하다고 생각하시면 됩니다. 저희는 돈없는 직장인이기 때문에(?) 무료 개발툴을 이용할 수 있는 후자를 선택했지요.

javascript를 이용한 AIR 개발은 일반적인 javascript 웹개발과 똑같습니다. 다만, 일반적인 javascript에서 불가능한 윈도우 모양 조정이나 네트워크, 파일 함수를 사용할 수 있도록 adobe 사에서 추가적인 API를 제공합니다. 다만, FLEX를 이용하는 것보다는 아직 API가 완벽하지않고, 소소한 문제점...(네, 지나고보면 소소하다고 일컫을 수 있게되죠..)들이 있습니다.

사용자 삽입 이미지
개발에는 eclipse에 기반한 웹개발 툴인 aptana studio를 사용했는데, 현재로서는 AIR 개발에 가장 좋은 IDE가 아닌가 싶습니다. 저는 eclipse 조차 제대로 써본 적이 없어서 많은 시간을 헤매긴 했지만요. 이외에 HTML 가공을 위해 쓴 jQuery는 역시 명불허전이더군요.

이번 프로젝트 최고의 문제는 바로, 프로젝트 멤버들 중 javascript를 제대로 써본 사람이 아무도 없었다는 점이었는데요. (그래서 저희 소스를 공개하기가 참으로 부끄럽긴 합니다..)  적응하기 힘들었던 asynchronous 패러다임과 저를 삽질시켰던 scope 룰 등이 기억에 남네요.

가장 큰 고민은 이렇다 할 javascript 프로그램 한 번 본적 없는 주제에, 5000줄짜리 프로그램을 어떤 구조로 짜야할 지 계획하는 일이었습니다. javascript를 처음 보는 사람도 쉽게 이해할 수 있도록 짜고 싶었습니다. 하지만, javascript에서 살며시 풍기는 함수형 프로그래밍 언어 풍미에, 저도 모르게 괴악한 코드를 뿜어내고 싶기도 했지요. 물론 프로젝트 막판으로 갈수록 원래의 의지는 어디론가 실종되고 늘어져가는 함수와 구조화되지 않은 코드들을 양산했지만요.

...당연한건가요? 아..

개발하면서 있었던 다양한 애환은 또 다른 기회에 풀어낼 수 있을 것 같고요.. 지금 시점에 와서 드는 생각은, javascript 자체는 참 재미있는 도구라는 겁니다. 지금껏 많은 프로그래밍 언어들이 “어느 플랫폼에서나 돌아가는 프로그램을 위한 언어”라고 주장해왔지만, javascript야 말로 이 말에 제일 어울리는 언어 아닐까요? 네, 사실 저희는 AIR에 내장된 깔쌈한 javascript 엔진에만 맞추면 되었기 때문에 브라우저별 차이나 구버전 브라우저들의 버그,  빵꾸똥꾸 같은 메모리 먹는 귀신 등을 거의 신경쓰지 않아도 되었죠.(네.. me2idea가 그래서 느린 거 맞습니다ㅠㅠ)

아무튼 me2idea 많이 사랑해주시고, me2idea는 막바지 버그사냥이 좀 끝나면 GPL로 소스가 공개될 예정입니다... 모자란 부분이 많지만 예쁘게 봐주세요. ^^

Creative Commons License
Writer profile
author image
2009/12/22 15:09 2009/12/22 15:09

트랙백을 보내세요

트랙백 주소 :: http://idearecipe.com/trackback/27

댓글을 달아 주세요

  1. Jinhoo 2009/12/22 15:13

    와 엄청 대단해보이네요;;

    근데 사용법은 어디에 있나요..ㅠㅡ?

    • 익살 2009/12/22 15:16

      사용법 글은 틈틈히 적고 있습니다만 *-_-* 아직 완성이 되지 않았습니다;;

  2. Jinhoo 2009/12/22 15:32

    이즈로꼬에서도 연동해서 쓰시는분들도 있는거같아요 ㅎㅎ

    깔아보니까 먼가 깔끔하니 좋은데 어찌 써야될지모르겠어요

    로꼬에 해둔게 많아서 미투데이로 넘어가기도 부담되고;

    • 익살 2009/12/23 14:05

      블로그에 덧붙여서 쓰시거나, 미투데이의 글을 하루에 한번씩 블로그로 보내는 서비스를 쓰시는 분들이 계신 듯 하네요 ^^;

      블로그랑 겹치는 서비스라기 보다는 일상의 보조적인 도구인 것 같아요. 이즈로꼬에서도 쓰시는 분들이 많으시니 한번 써보시길~ ^^;

비밀글 (Secret)
댓글 달기 (Submit)