Head First C

CopyStatusNotesActionsClassification ID

TitleHead First C
Publication TypeBook
Year of Publication2012
AuthorsGriffiths, D, Griffiths, D
Series EditorGriffiths, D, Griffiths, D
PublisherO'Reilly Media
ISBN Number1449399916
KeywordsComputer Science, Information & General Works, Computer science, knowledge & systems

Product DescriptionEver wished there was an easier way to learn C from a book? Head First C is a complete learning experience that will show you how to create programs in the C language. This book helps you learn the C language with a unique method that goes beyond syntax and how-to manuals and helps you understand how to be a great programmer. You'll learn key areas such as language basics, pointers and pointer arithmetic, and dynamic memory management, and with advanced topics such as multi-threading and network programming, Head First C can be used as an accessible text book for a college-level course.Also, like a college course, the book features labs: projects intended to stretch your abilities, test your new skills, and build confidence. You'll go beyond the basics of the language and learn how to use the compiler, the make tool and the archiver to tackle real-world problems.We think your time is too valuable to waste struggling with new concepts. Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First C uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep.Amazon.com Review Author Interview with David & Dawn Griffiths What made you write the book? There are already great C books, but many of them are pretty hard for a new developer to understand. Many of the existing books were written several years ago when people were still focused on memory and chips and assembly language. That's not the case any more and we felt that the world was ready for a modern introduction to C. Why is your book especially important now? Because C is still hugely popular. Tiobe currently list C as the second most popular language after Java; langpop.com list it as the most popular language in the world. In the last few years, the number of platforms has increased dramatically. People don't just use desktop Windows machines any more. There are tablets, phones, and even custom Arduino devices. People are hacking Linux. Makers are building things to do who-knows-what and all of these platforms have one thing in common: they have applications written in C, or use languages that are based on C. The first thing that normally happens when a new platform is created is someone builds a C compiler for it. This book teaches people how to make the most of that. What is the single most important thing readers will be able to do after reading your book? Head First C takes you deeply into how memory and pointers work and how to avoid the pitfalls. That sounds like a small thing, and for most languages memory-use is not a big issue. But things like memory-pointers are a huge stumbling block for new C programmers. We teach the ways that array variables are like pointer variables, and the ways that they are very different. We take you on a journey through the stack and the heap. Show you how literals work. We even show you how to use advanced tools like valgrind to track down and fix memory problems in your code. In a fundamental way, if you understand how C uses memory, then you understand C. Who is your intended audience? Really anybody who's new to C, whether they're writing Linux code, or programming Arduino. But our primary audience is college students who are building their first C projects. C is popular in colleges because it's such a foundational subject. But if you're suddenly thrust into an introductory C course and you start to have problems with the code, where do you go? What do you think is on the horizon for your readers? C is important because it gives you a much more fundamental understanding of how the computer works. If you really understand C, you will be more equipped to learn other languages. If you know C, you can become a better Java programmer. If you learn C, you will have a better understanding of how Python works. Once you learn C, you have the foundations in place to, say, program games in C++, or write code in Objective C that will make the most of the hardware on the iPhone or iPad. Or to enter the world of open source development on Linux. C is an entry point to a whole other level of development.

Dewey ID006
Total votes: 0