2010년 11월 28일 일요일

요즘 개발 환경 구성

요즘 집에서 개발 환경 구성을 어떻게 꾸밀 까 생각중입니다.
일단  당분간은 열심히 구상하고, 어느 정도 정착하게 되면 개인 프로젝트 환경을 꾸며볼까 합니다.
일단 오픈소스 프로젝트를 할 계획이고, 또 오픈소스들을 최대한 활용할 계획입니다.(코드 읽기 연습도 더하고요).

1. 컴퓨터,
    일단 본격적인 개발엔 아직 데스크톱인 거 같습니다. 이사를 많이 다니는 관계로-_- 노트북만 써왔는데 본격적인 개발은 힘든 거 같습니다(현재 집에서는 거의 개발서적만 일고 있습니다.)
   SSD 를 일단 2개 달고, 메모리는 최소 8기가, 나머지는 적당히.라고 생각하고 있습니다.?

2. 빌드 환경
    단연 비쥬얼 스튜디오(집이니까 익스프레스+플랫폼 SDK)일테고(다른 건 사실 써본적도 거의 없습니다. 학교 다닐때 빼고는요-)
    여기에 CruiseControl.net 과 Ant 나 요새 뭐 유행하는 다른  CI 등을(오픈소스 인것들로)로 가볍게 구성할 계획입니다.
   코드 짜기전에 문서화 환경도 어느 정도 구축해야 되니 Doxygen 세팅등도 확인해야겠지요.
   그리고 VCS로는 Mercurial(DVCS) 로 일단!!
   여기에 유닛테스트 구글 유닛 테스트나 CppUnit  이었나요? 이걸로.!
   그리고 스테이티스틱 코드체크는 CPPCheck 등이 있겠네요(http://jooyunghan.da.to/blog/?p=57)
   그리고 디버깅용으로는 Pix 와 Process Monitor, Depend 등이 있겠네요(뭐 당연합니다만 가끔 잊어버리는 경우가 있어서 적어둡니다.;;; 뭐 sysinternal  페이지에 가면 다 있겠지만요)

3. 외부 오픈 소스 라이브러리.(물론 오픈소스가 아니더라도 공짜면, 물론 오픈소스가 아닐 경우에는 사용자 그룹이 있는지가 정말 중요한 거 같습니다.)
     일단 해본 다면 툴쪽을 많이 해보고 싶으니 C# (+MonoProejct) 가 일단 제일 관심이 갑니다.
     그리고 Nocturnal  쪽이 이것저것 잘 들어가 있으니 그냥 쓰면 좋을 거 같습니다.
     따로 따로 구성한다면 gpg 에서 본 미니덤프와 애서트는 기본으로 넣고,
     메모리 얼로케이터는  loki 나 인터넷에서 유명한 걸 가져다 써야 할테고.
     PhysX(+Visual Debugger) 를 주로 써왔으니 이걸 쓸 거 같습니다.(오픈소스인 ODE 를 써보기 싶긴 합니다만, 써본적이 없으니)
    위의 Nocturnal  을 쓴다면 컴포넌트 구성은 따로 할 필요가 없을 거 같습니다만, 따로 하게 되면 gpg 에서 보고 시작해야겠지요. 이쪽은 RTTI 부터 Serialization  까지 있어서 왠만하면 다 되어있는 걸 쓰고 싶군요!!)
   C# 을 쓰면 프로퍼티 그리드 라이브러리도 어디선가 멋진 걸 가져다 써야겠지요.

4. 데이타 !
   간단한 클라이언트 스타일의 DB 를 찾아서 써보고 싶은 생각이 있군요.
   그리고 JSON(Insomniac 에서 뭔가 편리해보는 걸 본거 같습니다.)  이나  FastXML 라이브러리등을 쓸 거 같습니다.
   메모리 맵드 파일 / 구글에서 공개한 크롬 패치 툴도 써보고 싶네요-ㅅ-

사실 만드는 방법이야 다양합니다만 뭘 만들지가 중요하겠지요 열심히 고민해봐야겠습니다.!! 그래도 개인 프로젝트는 제일 잘하는 방법으로 그리고 조금 최신의 경향으로 개발해보겠다는 생각입니다.~_~