Nature of Code - 자연계 법칙을 디지털 세계로 옮기는 컴퓨터 프로그래밍 전략
다니엘 쉬프만 지음, 윤인성 옮김 / 한빛미디어 / 2015년 5월
평점 :
절판


 


이 책을 읽어보고 싶은 생각이 들게 한 사람이 이 책의 역자 윤인성님이다. 저자보다 역자를 보고 읽었다고 하니 조금은 당황스러울 수도 있겠으나, 평소 역자의 글쓰기 스타일상 간결하고 깔끔한 내용으로 구성되어 있을 것이란 생각이 들었기 때문이다. 역자는 옮긴이의 말을 통해서 이 책을 어떻게 바라보고 있는지 명확하게 알 수 있다. 그 내용을 정리하면 아래와 같다.

 


최근에 읽어본 프로그래밍 서적 중에 읽어본 후 감동을 느꼈으며, 사람들에게 방향성을 제공해준다고 말해준다. 이유인즉슨 학교에서 배우는 교육 이외에 어떤 프로그래밍 세계가 있는지, 컴퓨터 과학에서는 어떤 것들이 연구되고 있는지 알기 어렵기 때문에 이 책을 통해서 그런 부분들을 깊게는 아니지만 포괄적으로 다루고 있기 때문에 프로그래밍에 관심 있는 학생들에게 방향성을 제시해줄 수 있을 것으로 생각한다. 그렇기에 이 책을 중고등학생들이 읽기 바라며, 그들이 배고 있는 지식을 어디에 적용할 수 있는지 설명해주고 공식을 통해 연산하여 물체를 움직여보는(눈으로 보는) 것으로 확실한 교육이 되지 않을까하는 생각에서 이 책을 번역했다고 한다.

 


이 책은 조금 특이하게 프로세싱을 통해 코드로 구현하였기 때문에 해당 지식을 습득할 필요가 있다. 하지만 그리 어려운 것은 아니기 때문에 겁먹을 필요는 없다고 생각한다. 그리고 무료 오픈 소스 프로그래밍 언어라는 점이 프로세싱의 매력이 아닐까 한다. 이 책을 통해서 알고리즘과 객체지향 지식의 습득은 덤이지 않을까한다. %ED%98%B8%ED%83%95%20%EC%9C%A0%EB%A0%B9

 




 


이 책은 3파트로 구성되어 있으며 세부적으로 10개의 장으로 나눠져 있다. 하지만 내용을 따라가다 보면 순서대로 이야기가 진행되고 있음을 알게 된다.


Part 1. 물체

 1장. 운동의 기본 요소 '벡터'

 2장. 힘 곧 벡터

 3장. 각도와 삼각법, 그리고 진동 운동

 4장. 수천개의 물체. 파티클 시스템(입자계)

 5장. 물리 라이브러리, Box2D, toxiclibs

Part 2. 생물

 6장. 자율 에이전트, 물체에 숨결을 불어넣어 주변을 인식하고 반응하게 하자

 7장. 세포들의 시스템인 세포 오토마타

 8장. 자연의 기하학. 프랙털

Part 3. 지능

 9장. 진화 과정의 모방을 통해 객체를 진화

 10장. 차이를 기반으로 학습하는 기능을 가진 인공 뉴럴 네트워크 프로그래밍


끝으로 부록에는 프로세싱을 잘 모르는 분들을 위해 역자가 직접 필요한 프로세싱의 기초를 설명하는 부분이 있으니, 부록 A를 읽어본 후 책의 내용을 실습하면 더욱 빠른 이해가 되지 않을까 한다.

그리고 프로세싱으로 구현된 부분을 자신이 잘알고 있는 다른 언어로 구현해 본다면 더욱 많은 이해가 되지 않을까 한다. 저는 자바스크립트로 구현해보고 싶은 생각이 드네요.

이 책을 몇번 더 본 후 조금 있으면 여름방학을 맞이하는 조카에게 선물해 보고, 같이 프로그래밍 해보고 싶은 생각이 듭니다. 강추 %EA%B5%BF




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo