메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

C를 알고 있긴 하지만...

han***

|

2003-03-05

C언어 펀더멘탈 : 견고한 프로그램을 위한 기본 원리

많은 프로그래머들이 프로그래밍 철학과 C 언어 자체에 대한 이해가 결여된 상태에서 프로그램을 작성하면서도 "돌아가기만 하면 그만이다"라는 생각을 한다. 그러나 겉으로 멀쩡해 보이는 프로그램 안에 실제로 얼마나 많은 오류들이 숨어 있는지 생각해본 적이 있는가? 이 책에서는 4년 동안 C 표준을 꾸준히 공부해 온 저자가 국내 C 관련 서적과 커뮤니티에서 봐왔던 오해와 선입견들을 바로잡는 과정을 담고 있다.

  • 저자 : 전웅
  • 출간 : 2008-05-28
프로그래머라면 대부분 C 언어를 알 것이다. 하지만 제대로 알고 사용하는 사람은 과연 얼마나 될까?



본인조차도 C로 많은 프로그램을 작성해본 경험이 없기에 이 책을 보게 되었다. 경험이 없는 상황에서 좋은 참고도서만큼 큰 도움을 줄 수 있는 것이 많지 않을 것이란 생각이 든다. 그동안 여러 C 언어에 대한 책을 보아왔지만 이 책은 왠지 다른 느낌을 준다. 과연 어떤 것이 다른지 살펴보자.



1장. 시작하기 전에 ~ 3장. 누구에게나 환경은 중요하다

이 책은 특이하게 다른 책에서처럼 "Hello world!" 같은 예제로부터 시작하지 않는다. 대신에 필자의 다양한 경험과 지식을 말해주고 있다. C 언어의 자세한 역사, 필자가 표준화 작업에 동참하면서 얻은 것들, C 프로그래머에게 필요한 기본적인 지식들... 다른 책에서는 얻을 수 없는 것들이다.



4장. 컴퓨터가 C를 듣는 방법 ~ 6장. 선언

여기서부터 C 언어의 데이터형과 사용법에 대해서 설명한다. 다른 책에 비해 아주 자세하게 설명하고 있다. 초보자들은 반드시 숙지하고 넘어가야 할 부분이다.



7장. 포인터와 배열

포인터와 배열에 대한 설명도 아주 많은 지면을 할애하고 있다. 포인터 부분에서는 간단한 예제와 많은 설명을 하고 있는데, 그냥 한 번 읽어서는 이해가 잘 안갈 것 같다. 역시 포인터는 넘기 어려운 산인 것일까? ‘좀 더 이해가 쉬운 예제를 들어서 설명했으면…’ 하는 아쉬움이 남는다.



8장. 함수

흔히 C는 함수로 시작해서 함수로 끝난다고 한다. 그만큼 함수가 중요하다는 의미일 것이다. 함수에 대해서도 많은 설명을 하고 있지만 자바나 C++의 메소드에 비해 난해하다는 느낌이다. 아마도 C 언어 자체의 특성이라고 할 수 있겠다.



9장. 구조체·공용체 그리고 열거

객체지향 언어라면 클래스로 이루어지지만 C 언어에서는 구조체를 사용하곤 한다. C 언어만을 아는 사람이라면 이해가 안가겠지만 객체지향 언어에 익숙한 독자들은 많은 비교가 되리라 생각된다.



10장. 변환

데이터 형 변환은 자칫 실수하면 엉뚱한 데이터로 처리 될 수도 있는 부분이다. 독자들로 하여금 변환 규칙에 따라 프로그램 하도록 자세히 설명되어 있다.



11장. 수식 ~ 13장. 외부 정의와 프로그램 시작,종료

디른 C 언어 책들과 비슷한 내용을 담고 있다.





14장. 전처리기

전처리기는 소규모 프로그램에서는 잘 사용되지 않을 수도 있지만 규모가 커질수록 유용하고 많이 사용하는 느낌을 받았다. 큰 프로젝트를 수행하기 위해서라면 반드시 익혀두어야 할 것이다.



이 책은 다른 C 언어 책에 비해 설명도 자세한 만큼 그 분량도 상당하다. 다른 책에서 잘 다루지 않는 C 언어의 역사나 필자의 해박한 지식 전달의 의미는 아주 좋다고 본다. 꼼꼼한 설명이지만 초보자들이 과연 인내심을 가지고 다 읽어줄지는 의문이다. 전반적으로 예를 들어 사용된 예제는 왠지 유용하지 않고 단편적인 설명에 따른 예제라는 느낌이다.
닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?