좋은 프로그램을 만드는 핵심 원리 25가지
프로그래밍에 꼭 필요한 전산수학, 데이터 구조, 알고리즘 등을 모두 다루는데, 특히 각 알고리즘이 동작하는 예를 그림을 통해 보여주므로 초보자도 쉽게 이해할 수 있다. 그리고 각 이론을 프로그램으로 직접 구현해볼 뿐만 아니라 실제 시스템에서 어떻게 적용되는지 그 예까지 제시한다.
- 저자 : 김종훈 , 김종진 , 정원희 , 정은영
- 출간 : 2003-01-04
책 對 책
"좋은 프로그램을 만드는 핵심원리 25가지" (이후 핵심원리)
"성공과 실패를 결정하는 1%의 프로그래밍 원리" (이후 1% 원리)
< 대결 1장 >
- 핵심원리의 선제 공격 : 요즘 책들은 이름도 멋들어지게 짓습니다. "좋은 프로그램을
만드는 핵심원리 25가지"라..그러나, 저는 처음에 한 10 장 정도 읽고 나서 이 책이 이름을
잘못 지은 게 아닌가 하는 생각이 들었습니다.
분명히 프로그램을 만드는 핵심원리 25가지인데.. 왠 수학 이론만 자잘하게 나오는 거람..
"프로그래밍을 위한 수학적 원리"로 바꿔야 하는 게 아닌감?라는 생각을 했었죠. 고등학교때
배운 정석에나 나올만한 내용들이 비슷한 형식으로 나오기 시작해서, 처음엔 실망도 많이
했죠.
그러나, 핵심원리는 기본적인 수학적인 원리부터 시작해서, 프로그래밍을 할 때 중요한 말그대로
핵심원리가 매 과마다 군더더기 없이 소개된 점이 좋았습니다. 한 Chapter마다, 원리와 실례가
한문장으로 표현되어 있어서 요약 정리가 되었던 점도 좋았습니다.
" 이정도는 되야지 핵심 원리지.!!"
- 1% 원리의 반격 : 얼마전에 성공과 실패를 결정하는 1%의 프로그래밍의 원리로 히트를 친 이후로
계속해서, 1% 시리즈는 출간되고 있습니다. 그만큼 개발자들이 "원리", "기본"에 목말라 있던 건
아닌지 생각이 듭니다. 이 책의 구성은 하드웨어부터 시작하여, 소프트웨어 개발까지..단계적으로
짚어가며, 중요한 원리를, 보통때 같으면 그냥 넘어갈만한 숨어있는 원리를 재미있게 소개하고
있습니다.
이 책의 장점은 중요한 내용을 재미있고, 가볍게 소개하고 있다가 아닐까합니다. 컴퓨터 서적이
딱딱한 것이 아니라, 재미있는 백과사전같을 수가 있다는 생각이 들었습니다.
그리고, 책 디자인과 제본 상태..정말 고급스러워 보여 좋았습니다.
" 얇지만, 모든 것을 꽤뚫고 있는 프로그래밍 원리의 백과사전 "
< 대결 2장 >
- 핵심원리의 필살기 : 보통 컴퓨터 전공하는 사람들 또는, 전공하지 않은 개발자들은 대학 과정에서
수학을 접하는 과목이 이산수학, 확률 정도로 알고 있습니다. 어떻게 보면, 가장 밀접한 관계가 있을 것
같은 컴퓨터 분야와 수학은.. 실제로는 가까이 하기엔 너무 먼 당신이었던 것이었습니다.
이 책의 최대 장점은 실제로 우리가 알고 있는 응용 분야가 이러한 학문적 기초를 기본으로 세워졌다는
것을 알 수 있습니다. 퍼지 이론이 집합 이론에서 나왔고, 수학적인 관점에서의 함수가..
프로그래밍에서의 함수와는 어떻게 다르고...등등..
사실 수학적인 마인드가 기본이 되야, 프로그래밍적 마인드를 그위에 세울 수 있다고 생각합니다.
그 외에 자료구조 책에서 공부했던 내용들이나, 까마득한 내용들이 다시 복습할 수 있었고, 등등...
새로운 분야의 연구가 그냥 생겨나는 것이 아니라, 기존 연구들의 토대로 만들어진다는 생각도 들었습니다.
" 수학은 컴퓨터 과학의 어머니 "
- 1%의 필살기 : 사실 프로그래밍만 하다보면, 편협하게 자신의 분야에 대해서만 전문가가 되는 경우가
많습니다. 사실 업무에 필요한 비즈니스 로직만 알고, 언어와 툴을 다루는 법만 알고 있으면,
내부에서 어떻게 돌아가든지 상관이 없겠지요. 그러나, 프로그래밍 자체가 컴퓨터와 개발자간의 대화하기
위한, 의사소통을 위한 수단이라고 생각한다면...
좀더 컴퓨터를 이해하기 위해서는 내부적으로 어떻게 작동하고 있는 지...
좋아하는 사람일수록 좀더 많은 것..좀더 많은 것을 알고 싶은게 사람의 마음인 것 처럼...
컴퓨터를 이해하기 위해서..특히 프로그래밍을 이해하기 위해서...알아야할 최소한의 것들을 이 책은 소개
하고 있습니다.
" 컴퓨터 프로그래밍을 잘 이해하기 위한 첫걸음 "
< 대결 3장 >
- 핵심원리의 단점 : 처음에 말했듯이..처음에는 수학적인 내용이 소개가 되는데, 저는 (혹시 알지 모르지만,)
디딤돌 출판사에서 나온 개념원리를 보는 듯 했습니다. =_= (고등학교 졸업한지가 언젠데...)
그래서, 아직까지도 한 수학한다는 분은 처음에 지루할 수가 있습니다. 저자 분들 중에 선생님이 계셔서 그런가..
" 나는 개념원리가 아니다 "
- 1%의 단점 : 내용을 쉽게 소개하려고 보니.. 너무 가벼워 진게 아닌가 생각이 들었습니다. 좋은 내용이고,
좋은 책이긴 하지만, 너무 난이도가 낮아진 게 아닌가 생각이 들었습니다. (물론, 새로 배우는 내용도 많았습니다.)
" 날아갈 것 같다. "
< Final >
비슷한 주제를 가지고 서로 다른 방식으로 설명을 해놓은 책 같아서, 이렇게 비교 서평을 올리게 되었습니다.
뭐 여기서는 어떤 책이 좋다 나쁘다..그런 것을 따지기 위해서 글을 올린 게 아니니..
둘다 프로그래밍을 시작하려는 초급 개발자 분이나, 컴퓨터 과에 처음 입학하여 프리뷰를 하기 위해 좋은
책이 아닐까 생각이 듭니다.
1% 원리는 가볍게 읽을 수 있으니, 교양서적으로도 좋을 것 같구요.
핵심원리는 고등학교 때 배운 내용과 연계 가능하니...수학적 마인드 자체가..
프로그래밍 마인드로 옮겨갈 수있는 도움을 줄지도 모르겠군요.
둘다 좋은 책이고, 앞으로도 더욱더 좋은 책이 많이 나왔으면 하는 생각이 듭니다.