Joined: 04 Mar 2003
|Posted: Sun Dec 07, 2003 5:02 pm Post subject: Book Review - Practical C Programming
Practical C Programming
Author(s): Steve Oualline
Book Specifications: Soft-Cover, 428 pages
User Level: Beginner
Suggested Publisher Price: $34.95 USA/ $51.95 CAN/ £28.74 Net UK (inc of VAT)
Amazon.co.uk: Practical C Programming
Amazon.com: Practical C Programming
Info from Back: "There are lots of introductory C books, but this is the first one that has the no-nonsense, practical approach that has made Nutshell Handbooks famous. C Programming is more than just getting the syntax right. Style and debugging also play a tremendous part in creating programs that run well and are easy to maintain. This book not only teaches you the mechanics of programming, but also describes how to create programs that are easy to read, debug, and update.”
The twin pillars of knowledge in the computer world are TCP/IP and programming. If you can program then the possibilities are endless. By that I mean if you can think of it then you can probably program it. As much as people dislike C for it’s unforgiving syntax and structure it shows no sign of going away any time soon. I was interested in this book from a security perspective once again, as most all exploit code is written in both C and ASM. I did not expect to be able to walk away after reading this book and start coding applications.
What I expect is to be able to understand the methodology that goes into writing a program, and also be able to read the source code if nothing else. Learning to program will not happen overnight but needs to be learnt, and applied over the course of months/years. Over the course of this book you will be shown the fundamentals of practical C programming upon which you will have an effective base to further your studies of this powerful programming language. Absolutely anyone who wants to further their skill set should learn to program, and in my humble opinion C should be the language to learn as it is so prevalent.
Content & Overview
One of the largest complaints of some programmers I know is that they are told to maintain code written by others, which was both horribly commented and written haphazardly. Having to figure out someone else’s cryptic code is both time consuming, and can often be a hair pulling experience. What this book endeavours to show the reader is the importance of writing proper code. Writing proper code is more then just churning out lines, but is making sure that each line or module is properly commented with it’s intent. Doing this makes the code legible to others and far easier to maintain.
Creating effective code is very similar to writing in English. The author of this book tries to get across the importance of this. Half the battle is in dealing with this issue, and the other half is in actually learning how to code in C. Indicated in the title of the book is learning to code in C at a practical level. Steve Oualline has not attempted to write a definitive book on C, but rather to teach the reader the practical portions of it. Something that will actually be used on a daily basis rather then the arcane, dusty corners of this language. Covered over four parts which each include several chapters are this books contents.
II. Simple Programming
III. Advanced Programming Concepts
IV. Other Language Features
Part IV contains several useful tables like an ASCII table, Ranges and Parameters, Operator Precedence Rules, and a Program to Computer a Sine. All very useful information which is nice to have in the same book vice looking for it online. All of the core concepts such as functions, arrays, loops, and statements are covered in detail.
Style and Detail
I have always enjoyed the way that O’Reilly books are written. The vast majority of the one’s I have read are like this one. It is much like just hearing the person talk to you. As befits a book on coding the author liberally sprinkles code snippets throughout the book. Included as well are examples relevant to various parts of the coding cycle as well. Namely your “include” and other fully functional examples from the start to the end so you have examples of properly written, and commented code.
Learning how to program and especially in C which is unforgiving can be daunting. Helping to learn this task though are many clear and concise examples of what the author is showing. There is no easy way to learn how to program, however the many germane examples included help to clarify learning concepts. Overall this books best point is in its writing style, which comes across as relaxed and not just plain dry.
Learning to code is a long and difficult process. There is simply no way around it unless you are one of the few who takes to it like a native. Often one just gives up because the subject matter seems impenetrable. Using many code snippets, and a relaxed writing style the author is able to impart knowledge then follow it up with concrete examples. One of the other selling points is that this book deals with teaching you how to program C at the practical level as the title indicates. If and when one successfully assimilates this book a more focused book dealing with other C programming issues can be purchased. To get a foundation of knowledge in the C language though is what this books does admirably. I for one definitely recommend it.
This book gets an SFDC 8/10 from me
Keywords for this post: Practical C Programming
This review is copyright 2003 by the author and Security-Forums Dot Com, and may not be reproduced in any form in any media without the express permission of the author, or Security-Forums Dot Com.
Last edited by alt.don on Sun Dec 07, 2003 10:35 pm; edited 1 time in total