만들면서 배우는 CodeIgniter 프레임워크 리뷰

코드이그나이터 표지3년 째 워드프레스를 다루다 보니 정식으로 공부하지 않았지만 PHP 코딩이 편해졌습니다. 물론 PHP가 가지고 있는 단순한 문법 떄문인지 모르겠습니다만, 이러한 배경하에 PHP를 가지고 좀 더 진지하게 웹서비스를 구현해 볼까 하는 마음이 늘 있었고 때 마침 “만들면서 배우는 CodeIgniter 프레임워크” 책을 선택해서 읽게 되었습니다.

최근의 웹서비스 구현은 거의 예외없이 개발 편의 및 생산성 향상 등의 목적으로 프레임워크를 사용하고 있으며 CodeIgniter역시 대표적인 PHP기반 프레임워크입니다. 제목에서 드러내듯이 “만들면서 배우는 CodeIgniter”(이하 CodeIgniter) 책은 프로젝트 기반으로 기능을 하나씩 구현하면서 CodeIgniter 프레임워크 학습을 도와줍니다.

책은 11개의 챕터로 구성되어 있지만 실습 프로젝트 주제에 따라  Todo, 게시판, SNS의 3가지로 나눌 수 있습니다. 3개의 주제는 각각의 챕터 내에서 점진적 개발을 통해서 CodeIgniter의 기능을 맛 볼 수 있도록 도와줍니다.

책의 소스코드를 직접 다운 받을 수 있지만, 저는 일일이 소스코드를 처읍부터 타이핑하면서 읽어나갔습니다. 그러다보니 예상 밖의 코드오류들이 심심찮게 보였습니다. 타이포도 있었지만 제가 만난 대부분의 코드오류는 점진적인 기능 추가에 따라 코드 변경된 부분이 제대로 적용되지 않아 발생한 것들이었습니다. 예를 들면, 라이브러리 사용을 위한 선언 코드가  빠져있다든지, 기능이 개선되면서 함수의 매개변수가 바뀐 부분들이 적용이 안 된채로 남아 있다든지 하는 코드 오류들이 종종 보였습니다. 따라서 유의깊게 보지 않으면 책에 있는 소스대로 실행이 되지 않는 부분을 볼 수 있습니다.

그러나, 위와 같은 문제를 보완할 수 있는 방법들이 다행이 있습니다. 우선은 코드이그나이터 한국 커뮤니티의 존재입니다. 이 책의 저자분께서 코드이그나이터 커뮤니티에서 활동중이시며 궁금한 질문들을 책 전용 게시판에 올리면 빠르게 저자로부터 직접 답변들이 올라오며, 이미 비슷한 문제들에 대해서 검색을 통해서 해결방법들을 확인할 수 있습니다. 또한 다음 그림처럼 책의 방대한 코드에서 중요한 라인에 일일이 넘버링을 하고 설명을 하고 있어 길을 헤매지 않고 차근히 이해하는데 도움을 주고 있습니다.

코드이그나이터 코드예제

이 책에서 제대로 설명해주지 않는 부수적 효과(장점)은 트위터 부트스트랩의 활용입니다. 책 전반에서 트위터 부트스트랩을 사용하기 때문에 부트스트랩에 경험이 없는 분들도 자연스럽게 트위터 부트스트랩에 익숙해 질 수 있습니다. 다만 책에서 사용하는 부트스트랩은 버전이 2.x이므로 최근에 개편되 버전3와는 코드 호환이 되지 않습니다.

결론적으로, 이 책은 PHP에 대한 기본적인 이해와 웹서비스(HTML, javascript, ajax)에 대한 어느정도의 지식을 가지고 있어야 읽는데 지장이 없습니다. PHP를 가지고 한번 웹서비스를 제대로 구현해 보고 싶으신 분들께 실제적인 학습을 위한 도구로서 이 책을 주저없이 추천할 만 합니다.