400여 개의 그림과 도해로 배우는 초보 프로그래머의 필독서
리눅스와 C를 한꺼번에 배우는 일석이조의 효과
[ 누구를 위한 책인가 ]이 책은 리눅스 환경에서 처음으로 프로그래밍을 시작하려는 초보 프로그래머뿐만 아니라 리눅스에 대해 좀 더 깊이 있게 알고 싶은 사용자를 대상으로 집필되었으며, 고급 수준의 C 프로그래밍과 네트워크 프로그래밍도 다루고 있어 시스템 프로그램을 개발하고 싶거나 네트워크 프로그램을 개발하고 싶어 하는 프로그래머에게도 유용하다.
[ 다른 책과 무엇이 다른가 ]이 책은 C 프로그래밍 기초, 라이브러리 함수, 고급 리눅스 C 프로그래밍, 네트워크 프로그래밍까지 모든 내용을 체계적으로 구성하고 있어 독자들은 이 책 한 권만 구입하면 리눅스 환경에서의 C 프로그래밍을 완전히 마스터할 수 있게 된다. 또한 풍부한 프로그램 예제를 제공하며, 그림을 통해 동작 원리를 설명하고 있어 프로그래밍에 대한 기초가 전혀 없는 독자들도 내용을 쉽게 이해할 수 있다.
[ 이 책의 주요 내용 ]
- 연산자, 제어문과 같은 C 프로그래밍의 기초
- 관형구처럼 익혀둬야 하는 C 라이브러리 함수
- vi, gcc, make, gdb 등 효율적인 C 프로그래밍 관련 도구
- 파일 입출력, 시그널 등 내맘대로 다루는 리눅스 프로그래밍
- 메시지 큐, 공유 메모리, 세마포어 등 용도에 맞게 이용하는 통신 방법
- 프로그래밍의 총아 네트워크 채팅 프로그래밍
[ 추천평: 미디어서평 ]리눅스 프로그래밍에 깊은 관심을 가지고 있는데 이렇게 흥미 있는 리눅스 프로그래밍 책은 처음 접한다. 진작 이 책이 출간되었다면 그 많은 고생을 하지 않고 이 자리에 있을텐데. 리눅스 프로그래밍에 조금이라도 관심을 가지고 있는 사람들에게 크게 도움이 될 것이다. 셀 수 없을 만큼 수많은 그림과 프로그램 예제를 통해 이해를 도우므로 특히 초보자에게 적극적으로 권한다.
- 전흥석 (교수, 건국대학교 컴퓨터응용과학부 소프트웨어 전공)
한 마디로 초보 리눅스 프로그래머를 위한 책이다. 이해하기 어려운 리눅스 프로그램의 동작 과정을 그림을 통해 단계별로 보여주고 있으므로 어느 누구나 이해할 수 있을 것이다. 책의 전반적인 구성 또한 칭찬하고 싶다. C 프로그래밍 기초, 라이브러리 함수, 프로그래밍 툴, 리눅스가 동작하는 프로그래밍, 통신과 네트워크 프로그래밍을 어느 하나 소홀하지 않게 잘 구성하고 있다. 이제 이 책 한 권이면 리눅스에서의 프로그래밍을 누구나 쉽게 접근할 수 있을 것이다.
- 엄세웅 (개발팀장, (주)나모인터랙티브)
시스템 프로그래밍, 운영체제와 같은 굵직한 전공 수업을 소화해야 했던 컴퓨터공학과 3학년 한 해는 군대 시절 유격 훈련 그 이상의 어려운 시간이었다. 그 당시에 이 책을 가지고 공부했다면 아마도 좀더 수월한 한 해가 되지 않았을까. 마치 훈련 중 내리는 달디 단 빗줄기처럼. 이 책은 모두가 가장 어려워하는 시스템 커널에 대해 그림으로 쉽게 알 수 있게 한다. 이제 당당하게 고난의 시간을 이겨내자.
- 이정민 (대학생, 홍익대학교 컴퓨터공학과 4학년, 삼성전자 근무예정)
저는 리눅스 C 프로그래밍에 관심을 가지고 있어서 여러 권의 책을 통해 공부하고 있지만 너무 어렵게만 느껴지고 진도가 전혀 나가지 않고 있었습니다. 그런데 이 책을 본 순간 “바로 이 책이다”라는 감탄이 절로 나왔습니다. 저와 같은 초보 프로그래머들에게 이 책은 큰 선물이 될 것임에 틀림없습니다.
- 박지원 (대학생, 숭의여자대학 인터넷정보과 2학년)
[ 부/장별 내용 요약 ]들어서기 (1장)리눅스와 C 언어, 그리고 왜 리눅스에서 C 언어를 이용해야 하는지에 대해 살펴보고, 관련 사이트를 간단히 소개한다. 그리고 리눅스에서 C 프로그램을 작성하고 실행시키기까지의 과정을 따라 하며 경험한다.
1부. C 프로그래밍 기초 (2장~6장)C 언어에 대해 전혀 모르는 초보자를 위해 C 프로그래밍 기초에 대해 설명한다. 그림을 통한 알기 쉬운 설명과 다양한 프로그램 예제를 경험하므로 어느 새 C 언어는 내 것이 된다.
2부. 리눅스 C 라이브러리 함수 (7장~14장)리눅스에서 제공하는 C 라이브러리를 상세한 설명과 예제를 통해 설명한다. 이러한 라이브러리는 프로그래밍에 있어서 매우 중요한 자원으로 이를 적절히 사용함으로써 쉬우면서도 효율적인 프로그램을 작성할 수 있게 된다.
3부. 리눅스 C 프로그래밍 관련 툴 (15장~18장)리눅스에서 효율적인 C 프로그래밍을 위한 툴인 vi, gcc, make, gdb를 사용하는 방법을 설명한다. 이들 툴에 대한 사용법을 익힘으로 프로그래밍을 할 때 효율성을 증대할 수 있게 된다.
4부. 리눅스가 동작하는 프로그래밍 (19장~24장)진정한 리눅스 C 프로그래밍을 다루는 부분으로, 리눅스 운영체제와 직접적인 연관을 갖는 다양한 주제의 내용에 대해 설명한다. 그림을 통한 쉬우면서도 명확한 설명과 다양한 예제로 이루어진 이러한 내용을 학습하게 되면 독자는 진정한 리눅스 프로그래머가 되어 있을 것이다.
5부. 통신과 네트워크 프로그래밍 (25장~28장)한 시스템 내의 서로 다른 프로세스 간에 통신하는 프로그램을 구현하는 다양한 주제와 네트워크로 연결된 프로세스 간에 통신이 이루어지는 프로그램인 네트워크 프로그램을 구현하는 방법에 대해 살펴보고 채팅 프로그램을 비롯해서 다양한 프로그램을 직접 구현한다.