처음 기대했던 이상의 내용이 담겨있는 책입니다. CVS, JUnit, Ant 각각을 따지더라도 그 내용들이 번역서 외에 국내 서적 가운데서는 가장 심도 있게 다루고 있다고 생각됩니다.
제가 프로그래밍 책을 보면서 처음부터 끝까지 한 페이지도 빼지 않고 봐야겠다 싶은 책이 별로 없었는데, 이 책은 그런 생각이 드는 책이었습니다.
제 개인 입장에서 경험의 부족으로 별로 필요성을 느끼지 않고 있던 부분을 이 책에서는 곳곳에 여러 가지를 친절하게 소개하고 필요성 언급한 것이 초보 개발자 뿐 아니라 중급 이상의 개발자들도 충분히 참조할 수 있는 부분이라고 생각됩니다.
예전에 한빛미디어에서 주최하는
허광남(OKJSP운영자)씨의 스트츠 오프라인 세미나에 갔다가 덤으로 받은 책입니다.
오프라인 강의도 맘에 들었지만,
허광남씨 얘길 듣고보니 책에 대한 기대가 커졌습니다.
집에 와서 책을 자세히 들여다보니 기대 이상의 내용이 나온 듯 합니다.
CVS, JUnit, Ant 각각을 따지더라도 그 내용들이 번역서 외에 국내 서적 가운데서는 가장 심도 있게 다루고 있는 것을 볼 수 있습니다.
책 구성이 스트럿츠 프레임워크 기반의 온라인 쇼핑몰로 터득하게 되어있어서
실무에도 도움이 될 듯 합니다.
요즘 이클립스를 이용해서 EJB프로젝트를 진행하고 있는데,
이렇게 요긴한 책으로 많은 도움을 받고 있습니다.
대충 알던 것도 책에 넣기 위해서는 한번은 더 연구를 해야 하고, 더 많은 지식이 있어야합니다. "이 내용은 반드시 필요하겠다"싶어서 선택을 하는 것은 필자의 경험이 얼마나 풍부한 지에 달려있다고 할 수 있습니다.
그런 점에서 보건대 제 평소 별로 필요성을 느끼지 않고 있던 것을 이 책에서는 곳곳에 여러가지를 친절하게 소개하고 필요성을 얘기한 것은 책의 서언에 있는 것처럼 초보 개발자 뿐 아니라 중급 이상의 개발자들도 충분히 참조할 수 있는 부분이라고 생각됩니다.
책두께는 400페이지도 안될만큼 얇지만, 내용은 충실합니다.
예전에 프로그래밍 책을 보면서 처음부터 끝까지 한 페이지도 빼지 않고 봐야겠다 싶은 것이 Core J2EE Patterns를 포함하여 외국서적은 그래도 조금 있는 편인반면 국내서적은 몇 권 없었는데, 그 몇 권 없는 것에 책 하나를 추가하게 된 듯 하여 기쁜 마음도 없지 않습니다.
텍스트에디터에서 개발하시는 분들께 강력 추천합니다... !!!
각각의 주제에 대해서 따로따로 몇백 페이지들을 갖는 책들이 존재하죠..
그러다보니 그것들을 일일이 보면서 작업을 하기에는 너무나 힘들더군요. 그래서 인터넷에서 자료들을 많이 찾게되었는데, 솔직히 이 툴들의 매뉴얼을 봐도 보기 쉽지 않더군요.
그런 와중에 이 책은 이리 저리 기웃 기웃하였던 내용들을 한번 정리하기에 좋았습니다.
밑에 서평을 보니 문제가 있었다고 하는데, 전 당연히 그렇다고 생각했던 것인지...저 같은 경우에는 별 문제가 없었지만...어쨌든, 그런 문제가 있다고 하니 이 책은 처음 사용해보고자 하시는 분들 보다는 저처럼 인터넷 자료등을 통해 조금씩 써보았던 분들이 내용을 정리하고 좀 더 사용법을 알기 위한 책으로 적합한 것 같습니다.
저도 석대진님 과 같이 윈도우에 패스워드 설정이 안되있어서 같은 문제를 겪었습니다.
또한 같은 생각을 했습니다. 사실 책 내용에 세세한부분이 가끔 빠져 있습니다.
저같은 초보에게는 그런부분에서 태클(?)이 걸리면 IT에 대한 피곤함(?)과 후회가 밀려오곤합니다. 이런부분만 보완된다면 괜찮은 책이라고 생각됩니다.
CVS, JUNIT, ANT를 많이 사용해본 사람이라면 이책은 그냥 한번 훓어보는 정도의 책밖에는 안될것 같습니다.
그래도 이책 덕분에 마지못해 사용하거나 그런 프로그램이 있다는 걸 알고만 지내던
제가 eclipse와 CVS, JUNIT, ANT을 어느정도 맘껏 사용할수있게 되었습니다.
(주변에 천군만마..는 안되지만 백군정도는 얻은듯...)
저처럼 CVS, JUNIT, ANT를 어설프게 알고 있는 사람이라면
한번 보시길 바랍니다.
PS:
얼마전까지 IntelliJ를 사용했었습니다.
개인적으로는 코딩 편하기는 단연 IntelliJ가 좋더군요.
그러나 몇몇불편함에도 이클립스와 플러그인때문에 IntelliJ를 멀리하게 되는군요 --;
IntelliJ도 CVS, JUNIT, ANT를 쉽게 사용할수 있던지..
이클립스가 IntelliJ의 장정을 흡수하던지...
아직 이 책을 다 읽어 보지는 않았지만, 몇자 적어 보고 싶다
CVS, ANT, JUnit 어떻게 보면 단순한 몇개의 유틸리티이고
어떻게 보면 그 각각에 현재의 소프트웨어 개발의 역사에
철학이 담겨있기도 하다.
이 책을 산지 한 1주가 된것 같다,
그런데 처음 1장 CVS부터 조금 당황하기 시작했다.
책에서 적혀있는 각 프로그램의 버전대로 시작하면 문제가 없었으나
CVSNT 2.024 (현 이글을 쓰는 시점에서는 안정화된 최신 버전)를
설치하고 사용하면서 "Can"t Connect Lock Server" 이란 메세지를 만났다.
이 메세지 때문에 1주일간 회사퇴근만 하면 계속 찾았던 것 같다.
아직 이 책의 홈페이지인 http://pu100.cjb.net에 사람들이 많지 않는것
같아서 질문을 해보고 싶지도 않았고, 책에서 사용하지 않는 버전이라
질문하기도 조금 불편했다.
그런데 인터넷 어디에도 저 메세지로 답을 찾을 수가 없었다.
왜 찾지 못햇을까, 그것보다 내가 특별한 상황속에서 테스트 하는 것도
아닌데 나 말고 다른 분들도 이런 메세지를 보았을 듯 한데....
왜 없을까...
지금은 이유를 알아서 이렇게 글을 적고 있지만, 1주일간 나를 괴롭혔다.
문제는 패스워드 설정이 되어 있지않으면 위와 같은 메세지를 만난다.
아마 이런 메세지에 대한 정보가 없는 이유는 CVS를 사용할 경우
패스워드 셋팅을 안하는 경우가 없었서 인것 같다.
CVSNT의 릴리스 노트를 보면 2.0.14과 2.0.14와 중요한 차이점 중에
"All operations will now by default use the lockserver. There is no need to setup anything special to use this"
이란 내용이 있다. 즉 모든 작동(operations)에서 lockserver를 사용한다는 것이다. 그래서 2.0.14 이전 버전은 책의 내용과 똑 같이 되지만 그 이후버전 부터를 Windows 계정에 패스워드 설정이 없는 사용자는 나와 같은 메세지를 만나게 된다.
하지만 1주일간 저 답을 찾을려고 노력하면서 느낀점이 있다
"날로 먹으면 몸에 해롭다"
문제를 해결하고 이책을 펼쳤을때,
과연 이 몇장을 보고 CVS를 얼마나 이해 할까 ?
우리말중에 "선 무당이 사람잡는다"라는 말이 있다.
IT에서, 특히 프로젝트을 진행하면서 이런 사람들을 자주본다
그리고 이런 사람들의 비율이 프로젝트의 성패를 좌우하지 않을까...
책의 아래부분에는 참고 사이트들이 있다, 하지만 개인적인 느낌으로는
참고라는 단어를 조금 더 필요한 단어로 바꾸는게 좋을 것 같다
"꼭 가서 읽어봐야 할 사이트" 정도... ^^;
이책을 구입할땐 이 한권이면 CVS, Ant, JUnit들을 편하게 사용하겠지란
나의 생각이 한심하다.
최근 자바에 관심이 있는 사람이라면 한번쯤은 이클립스의 열풍(?)에 동참했을 법합니다. 이러한 분위기에 힘입어 국내에 관련 서적이 몇 권 출판되었습니다만 이클립스 입문서 정도의 책과 플러그인/SWT를 다룬 사실 조금은 앞선다는 생각이 드는 책이 나왔을 뿐 이클립스를 좀 더 효율적으로 사용할 수 있는 방법에 관하여 나온 책은 없었습니다. 물론 “스트럿츠 프레임 워크북” 같은 책에서 이클립스와 Easy Struts를 이용한 것이 책의 일부로 구성된 경우도 있었습니다만 어디까지나 책 내용에 중심을 둔 것이지 이클립스와 그 유틸리티에 대해 초점을 맞춘 것은 아니었습니다. 또한 Ant 하나의 툴에 관해서만 여러 권의 책이 나왔지만 이클립스와 궁합 보다는 빌드 툴의 기능을 나열한 책이 대부분이었습니다.
그리고 입문서로의 역할을 충분히 수행한 “Java 세상을 덮치는 이클립스”에서도 CVS, JUnit, Ant에 대해 다루기는 했었지만 간략한 설명에 그쳐 많은 기능들을 지나쳐 버릴 수 밖에 없었습니다. 저 또한 컴파일러 기능과 패키지별로 메소드를 찾아 보는 자바 퍼스펙티브, CVS를 통해 버전관리를 통해 이클립스를 이용하고 있었습니다만 처음과는 달리 이클립스를 업무에 적극 활용하겠다는 생각은 점점 사라지고 책의 실패담처럼 현재 상황에 만족하는 안일한 생각도 갖게 되는 것이 사실이었습니다. 그러던 중 눈에 띄는 이 책을 구매하게 되었고 책의 구성 중 프로젝트 실패담과 해당 챕터의 결론을 통해 조금만 습관을 들인다면 현재의 개발 환경을 좀더 효율적으로 만들 수 있겠다는 확신이 들게 되더군요.
책 소개를 하자면 CVS, Ant, JUnit에 관한 기초적인 설명을 하고 JPetStore라는 오픈 소스를 이용하여 앞서 배운 내용을 응용하여 보여주고 있습니다. 사실 CVS, Ant, JUnit은 워낙 방대하고 비교적 널리 알려져 있기 때문에 이 책의 내용도 아주 신선하거나 새롭다고는 말할 수 없지만 책의 방향 즉, 이클립스 기반 프로젝트 필수 유틸리티를 통해 좀더 효율적으로 프로젝트를 수행하자 라는 목적은 달성한 것 같습니다. 사실 개인적으로는 XML문서화 프로젝트 Forrest와 버그 관리 시스템인 Scarab에 관심이 갔습니다. 사실 회사마다 문서화 방법이 틀리고 양식이 틀리기 때문에 바로 적용하기는 힘들겠지만 적어도 체계적인 문서화 습관에는 도움이 될 것 같습니다. 버그 관리 시스템인 Scarab은 버그라는 단어이외에도 개선사항과 기능보완을 체계적으로 관리하여 프로젝트 품질을 한단계 높여주는 역할을 하고 있습니다.
유틸리티들을 오직 이클립스와 연계 시키지 않고 상용 툴과의 연계도 설명할 만큼 책 전체가 꼼꼼하고 가득찬 구성이었습니다만 아쉬운 점이 있다면 JPetStore 통해 이클립스 유틸리티 활용방법을 설명하는 부분에서 주로 easy struts의 에디터만 보여 주여 내용이 빈약한 느낌을 받았습니다.
최신 기술을 무작정 습득하려는 것은 문제가 있지만 현재 자신의 작업 환경을 효율적으로 만들 수 있다면 과감하게 적용하여 활용하는 것도 몸값이나 실력을 올릴 수 있는 개발자의 또 다른 능력이라는 생각이 듭니다. ^__^
혹시 코에이에서 만든 삼국지를 좋아하시나요?
현재 시리즈 9까지 나왔고, 많은 사람들에게 아직도 사랑받고 있는 장수 게임이죠.
제가 상당히 이 게임을 좋아하는 관계로 삼국지 게임 이야기로 서평을 시작해 볼까 합니다.
주로 저는 유비로 게임을 합니다. 유비에게는 멋있는 장수들이 많기 때문이죠.
관우, 장비, 황충, 마초, 제갈양, 서서, 제가 제일 좋아하는 장수 조운 등...
이들은 모두 상당한 능력을 가지고 있고, 어중간한 장수 열댓명을 데려다놔도,
이들 하나 값 못할 상황도 있죠.
예를 들어서, 조운의 무력이 98 정도, 지력이 82정도 될 겁니다. (한지 좀 오래되서..-_-)
이 정도만 해도, 상당한 능력치를 발휘한 거지만,
조운에게 청공검을 줄 경우 능력치는 10이 올라가서 108.
손자병법을 줄 경우 지력이 82에서 92로 순식간의 서열에 들정도의 군사가 됩니다.
거기에 적로라는 말을 줄 경우에는 기동력도 빨라지죠.
이처럼 일품 장수은 그냥 아무 칼, 장검을 주어도 능력을 발휘하긴 하지만,
훌륭한 검, 말을 소유할 경우 그의 능력은 더욱 향상하게 됩니다.
사모없는 장비를 상상해보셨나요?
적토마와 청룡언월도 없는 관우를 상상해보셨나요?
프로그래머도 마찬가지입니다.
도구가 프로그래머를 실력있게 만드는 건 아니지만, 좋은 도구는 실력있는 프로그래머의
능력을 배가시킵니다.
이 책은 정말 쓸만한 툴 5가지를 소개하고 있습니다.
제목에 나와있는 CVS, Ant, JUnit은 선택이 아니라, 이젠 필수가 되어버렸고,
그외에 관심을 가질만한 툴 두가지를 더 설명하고 있습니다.
CVS의 경우, 혼자서 줄 코딩하는 경우가 아니라면 팀 프로젝트에서는 반드시 사용해야 할
도구가 되었고, Ant의 경우 빌드 과정의 자동화 등, 개발 환경의 표준화에 필수적인 툴입니다.
JUnit은 단위 테스트를 위한 좋은 라이브러리입니다.
이것들을 이 책에 있는 정도만 숙지하고 있어도 어느 정도 잘사용하고 있다고 말할 수 있겠습니다.
게다가 문서화를 위한 Forrest와 이슈관리시스템 Scarab은 제가 접해보지 못한 툴이서
관심있게 봤습니다.
특히 이슈관리시스템은 버그질라를 익히는 게 쉽지 않은 상황에서 소개 받은 것이라 더욱
좋았구요.
더이상 툴은 선택이 아니라, 실력있는 프로그래머의 필수가 되어가고 있습니다.
몇가지 필수적인 혹은 쓸만한 툴들의 좋은 입문서가 될 것 같습니다.