Considered a classic by an entire generation of Mac programmers, Dave Mark's Learn C on the Machas been updated for you to include Mac OS X Mountain Lion and the latest iOS considerations. Learn C on the Mac: For OS X and iOS, Second Edition is perfect for beginners learning to program. It includes contemporary OS X and iOSexamples! This book also does the following: Provides best practices for programming newbies Presents all the basics with a pragmatic, Mac OS X and iOS -flavored approach Includes updated source code which is fully compatible with latest Xcode What you'll learn Master C programming, the gateway to programming your Mac, iPhone or iPad Write apps for the contemporary Mac OS X interface, the cleanest user interface around Write apps for the modern iOS interface, one of the two most popular mobile platforms in the world Understand variables and how to design your own data structures Work with the file system Connect to data sources and the Internet How to handle error handling and much more Who this book is for
For anyone wanting to learn to program in Mac OS X and iOS, including developers new to the Mac and iPhone/iPad, developers new to C, or students entirely new to programming. Table of Contents Chapter 1: Go Get the Tools Chapter 2. Programming Basics Chapter 3: C Basics: Staements and Functions Chapter 4: C Basics: Variables and Operators Chapter 5: Debugging Chapter 6: Controlling Your Program's Flow Chapter 7: Pointers and Parameters Chapter 8: More Data Types Chapter 9: The Command Line Chapter 10: Designing Your Own Data Structures Chapter 11: Working with Files Chapter 12: Handling Errors Chapter 13: Advanced Topics Chapter 14: Where Do You Go from Here? Chapter 15: Answers to Exercises
This is a hard sort of book to write well, but I feel Dave Mark has done it. Introductions to programming are tricky because they involve a lot of work laying a firm foundation, but too much of that can be daunting for people new to the subject. I've done a lot of programming in a lot of different languages, all derived from C (e.g. PHP, AS3, VBA) and always felt a firmer foundation in C would be a real benefit. Lately, I've also wanted to try my hand at Objective-C, and going into that without a better grounding in C would likely be disastrous.
So some of this was old hat to me, and some of it was brand new. But Mark lays out it all out in an admirably reasonable way, so I would have no trouble recommending this to anyone new to programming. He includes all the basics with plenty of examples and walks you through every line of code. He doesn't take understanding for granted: he ensures it. And that's one mark of fine teaching.
For those interested in learning C but who don't have a Mac, don't let "on the Mac" scare you. Even though I have a Mac, almost all of these examples can be worked on a Windows machine with Cygwin installed. Mark's focus is on programming logic and command-line apps to demonstrate concepts. As such, it's perfectly portable to any platform that can run a C compiler.
This is a very well written book especially for people who are absolute beginners to programming. Before reading this book my only experience with programming was a few javascript courses on codeacademy.com yet it was very easy to understand this book. The explanations are very clear and even funny at times to break up some of the monotony.