Ahn Jungho

안정호의 블로그입니다

프로그래머와 책들

Tuesday, September 08, 2015

프로그래밍을 하면 할 수록 읽고 싶은 책들도 늘어난다. 잘 쓰여진 온라인 문서와 블로그 글들이 있긴 하지만 단행본 서적을 처음부터 끝까지 읽는 일은 나름의 즐거움과 깨달음이 있다. 읽고 싶은 책들의 목록을 정리하고 분류하면서 프로그래머로서 앞으로 어떤 책들을 읽어야 할지 생각해봤다.

편의에 따라 크게 프로그래밍 언어, 컴퓨터 과학, 소프트웨어 공학, 개발자의 에세이라는 네 분류로 나눴다.

프로그래밍 언어

특정 언어에 대한 책들이다. C와 Java, Python 등 이미 많은 언어들이 존재하고 있기도 하고 하루가 멀다하고 새로운 언어가 등장하기도 한다. 해당 언어의 문법과 기본적인 연산, 함수들을 통해 언어의 특색을 배울 수 있다. 주력으로 사용하는 언어라면 보다 깊이 있는 내용을 다룬 책을 찾아 읽을 것이고 새로운 언어를 익히기 위한 경우라면 유명한 입문서부터 읽어 나가는 것이 좋겠다. 익숙한 언어라고 생각해도 새로운 버전이 나오면 기존 버전과 무엇이 달라졌는지 알아보고 표준 라이브러리의 변경사항을 추적해 볼 수도 있겠다.

읽고 싶은 책들

컴퓨터 과학

특정 언어에 종속되지 않은 전산학을 다루는 책들이 있다. 자료구조와 알고리즘, 데이터베이스, 컴파일러, 운영체제, 프로그래밍 언어 등에 대한 책들이다. 전산학을 전공한 사람들에게는 기본적인 소양이겠지만 비전공자로 소프트웨어 개발을 시작한 나에게는 부족함이 많은 부분이다. 컴퓨터구조, 운영체제, 컴파일러에 대해 공부한다고 개발 실력이 크게 향상될거라 생각하지는 않는다. 다만 앞으로 지속적으로 개발을 할 생각이기에 컴퓨터에 대한 이해를 높이기 위해 시간날 때마다 읽어나갈 예정이다.

읽고 싶은 책들

소프트웨어 공학

현업에서 소프트웨어를 개발하는 동안에 겪는 문제와 해결책을 다룬 책들이다. 소위 개발 방법론에 대한 책이라 할 수 있다. 깨끗하고 견고한 코드를 작성하는 방법, 개발과 배포의 프로세스, 테스트, 버전 관리, 일정 관리, 팀원 및 고객과의 의사소통 등을 다룬다. 애자일과 스크럼에 대한 책들도 이에 속할 수 있겠다. 단순히 동작하는 코드를 작성하는 것을 넘어서 성공적인 프로젝트를 이끌기 위한 내용이다.

읽고 싶은 책들

개발자의 에세이

개발자들이 자신의 경험을 정리한 에세이들이 있다. 블로그를 모아 책으로 출판한 경우가 많다. 내용은 개발자들을 위한 자기 계발서라 할 수도 있는데 프로그래밍을 공부해 나간 방식, 문제가 발생했을때 좋은 해결책을 찾았던 경험 등을 얻을 수 있다. 실력이 정체 상태에 있다고 생각할 때 읽으면 좋겠다.

읽고 싶은 책들