더북(TheBook)

이 책의 목표는 컴퓨터 과학자처럼 생각하는 법을 가르치는 것이다. 이러한 사고방식은 수학, 공학, 자연 과학에 있는 우수한 특징들을 결합한 것이다. 수학자들처럼 컴퓨터 과학자들도 아이디어를 표현하기 위해 형식 언어(formal language)를 사용한다(특히 계산 분야). 엔지니어들처럼 컴퓨터 과학자들도 컴포넌트를 시스템으로 조립하고, 대안 간의 득실을 평가한다. 과학자들처럼 컴퓨터 과학자들도 복잡계의 행동을 관찰하고, 가설을 세우고, 예측을 검증한다.

컴퓨터 과학자에게 가장 중요한 스킬을 꼽으라면 문제 해결이다. 문제 해결은 문제를 정의하고, 해법을 창의적으로 생각해내고, 해법을 명확하고 정확하게 표현하는 능력을 뜻한다. 프로그램 작성법을 배우는 과정이 문제 해결 능력을 키우는 훌륭한 기회를 제공한다는 사실을 알게 되었다. 그래서 이 장의 제목을 “프로그램의 길”로 붙였다.

프로그램 작성법을 배우게 될 것이고, 이 자체로도 유용한 기술이다. 하지만 다른 한편으로는 프로그래밍을 목표에 도달하는 수단으로 사용하는 것이다. 우리가 이 과정을 나아갈수록 이 목표는 점점 더 명확해질 것이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.