All Posts

  • Published on
    글을 쓰다보니 길어져 부득히 시리즈로 나눴다. 항상 이렇게 시리즈로 나누면 중간에 쓰다 마는데.. ㅇㅎㅎ 여튼 뭐 언젠가는 마무리하겠지.. 사실 이글에 앞서 "UML로 코딩하기라는 글"이 있는데 글이 마무리가 안되서, 마무리 되면 공개하는 걸로 하고 그냥 시이작~! 자바스트립트를 보다 구조화해서 코딩 할 수 없을까? MVC패턴은 요즘 나의 최대 관심사다. 최근 몇년간 TDD니 BDD니 하면서 날코딩과 테스트를 중심으로 작성했던 코드들도 수두룩하다. 하지만 이 코드들은 전부 유지보수에 실패했다! 물론 실패할수밖에 없었던 구구절절한 사연들이 많지만 그건 중요한게 아니므로 패스~ 여튼 결국 난 테스트 주도 프로그래밍에 대해 다시 한번 생각해볼 수 밖에 없었다. 물론 UI 개발에 한정적인 얘기지만 TDD는 뭔가 UI 개발과는 어울리지 않는다는 결론에 이르렀다. 그게 벌써 2년전이다. 그렇게 해서 찾기 시작한 대안이 바로 설계를 바탕으로 하는 프로그래밍이다. 사실 설계라는 것이 스펙에 따라
  • Published on
    타이타늄 3.0이 정식 릴리즈를 했고, 그동안 베타버전을 쓰면서 나타났던 문제들을 정리해본다. 1. 이유없이 에뮬레이터가 죽는 경우 Alloy를 사용하다보면 빌드하자마자 "Application has exited from Simulator" 라는 메시지를 던지면서 죽는 경우를 꼭 한번씩은 겪게 된다. 대표적인 경우가 console.log를 이용해 Alloy 모델이나 콜랙션을 그대로 출력할때 발생한다. 또 다른 예로 Fugitives 소스코드에서 29번째 라인 부근을 보면 다음과 같은 코드가 있다. var model = atLargeCollection[i]; var row = Alloy.createController('FugitiveRow', model.toJSON()).getView(); row.model = model; rows.push(row); 위 코드에서 문제가 되는 코드는 바로 3번 라인에 있는 row.model = model 코드다. 즉, Alloy 모델
  • Published on
    오늘 새벽 타이타늄 3.0이 정식 릴리즈 됐다. 예전에 릴리즈 노트에 그다지 관심이 없었는데... 베타버전을 쓰기 시작하면서 자연히 릴리즈 노트를 챙겨보게 되는것 같다. 500개 이상의 버그가 수정됐다고 한다. 요건 나중에 찬찬히 살펴보기로 하고... 새로 추가된 기능을 훑어보자! 1. On-Device Debugging 오예~ 가장 반가운 소식이다. 이제 시뮬레이터가 아닌 디바이스에서 직접 디버깅이 가능하다!! 관련 문서는 여기를 참고하고, 번역된 문서는 여기를 참고. 2. Alloy Framework 이녀석때문에 베타버전을 이리 깔아서 개발중이었는데... 생각보다 정식판이 빨리 나와주었다!! 이번 릴리즈에 포함된 Alloy의 공식 버전은 0.3.3 이다. Alloy Quick Start (원문 , 번역) Alloy Concept (원문 , 번역) 3. Titanium Command-Line Interface 아무래도 Alloy가 node를 이용해 컴파일 하는 과정이 생겨서 그런지
  • Published on
    어제는 집에서 하루종일 푹 쉬었다. 정말로 누워서 보낸시간이 18시간은 족히 넘을것 같다. 해야할 일이 있는데.. 노트북을 회사에 두고오는 바람에,.. 이왕 이렇게 된거 푹 쉬었는데 허리가 아프다..-_ㅜ.. 지난주는 종일 눈내리고 날씨도 춥고해서 차를 회사에 버리고 대중교통으로 출퇴근했다.. 왕복 6시간.. 헐~~ 힘들어 죽는줄 알았네.. 이렇게 출퇴근시간이 갑자기 늘어나니까 하루가 정말 짧아졌다. 이번주는 그동안 밀어뒀던 밀린 숙제를 좀 해야겠다. 1. 홈페이지 및 블로그에 쓰다 만 글 정리 2. 개인 프로젝트 정리3. 안 입는 옷 버리기 4. 책장 정리또 모가 있나?.. 생각 안나니까 적지말고.. 4가지만 일단 잘 정리하자..이번주는 또 일정도 많다. 까딱했다간... 밀린 숙제 또 밀릴라.. ㅇㅎㅎ
  • Published on
    몇일전에 애니팡과 비슷한 팡류 게임을 하나 만들었다. 이름하야 패치팡! ㅋㅋ 패치팡은 자바스크립트만으로 만들었고, 게임을 만드는데 꼬박 3일이 걸렸다. 3일중 이틀은 구조잡고 기본 알고리즘 만드는데 썻고, 나머지 하루는 대충 콜리로 UI만들고 포샵질 하느라 시간을 보냈다. 여튼 만들고 보니 뭔가 허전하다 제대로 쓸려면 내가 얻은 점수를 서버에 저장하고 친구들끼리 경쟁을 붙여야한다. 그래서 또 대충 랭킹 서버를 만들기로 했다. 랭킹 서버는 랭킹 정보를 저장할 DB가 있어야한다. DB는 SQL로 쓰려다가 쿼리 짜기 귀찮아서 그냥 몽고DB로 결정!! 1. 몽고DB 설치하기 일단 서버에 몽고DB 서버를 설치하고 설정해야한다. 설치와 설정은 다음 링크를 참고~!! 참고로 내 서버는 페도라다! 그리고 테스트 개발은 윈도우 환경에서 진행했다! http://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat-centos-or-fedor