I'm only about halfway through at this time, so I'll have to update this when I finish.
I came to this book with rusty programming experience. Some competency with C years ago, writing simple ray tracers and games, and enough knowledge of Python and PHP to do some basic web development. I'd tried to tackle Objective-C previously by diving right into a book on iOS development, but really didn't come away with enough understanding of the language to do the things I wanted to do. This book is filling in those gaps very nicely. After I'm done I'll go back and reread the book on iOS.
I'm not sure how successful I'd be if I'd come to this book with no programming experience. I haven't had any problem following so far, but I do believe some of the provided explanations of concepts would've whooshed right over my head if I'd been a completely newbie.
Programming in Objective-c: Updated for IOS 5 and Automatic Reference Counting (Arc) (Developer's Library) 4th Edition
by
Stephen G. Kochan
(Author)
| Stephen G. Kochan (Author) Find all the books, read about the author, and more. See search results for this author |
ISBN-13: 978-0321811905
ISBN-10: 0321811909
Why is ISBN important? ISBN
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Use the Amazon App to scan ISBNs and compare prices.
Add to book club
Loading your book clubs
There was a problem loading your book clubs. Please try again.
Not in a club? Learn more
Join or create book clubs
Choose books together
Track your books
Bring your club to Amazon Book Clubs, start a new book club and invite your friends to join, or find a club that’s right for you for free.
Buy used:
$25.00
More Buying Choices
This is the 4th edition of the world's bestselling book on Objective-C programming, fully updated to cover Xcode 4.2 and Automatic Reference Counting (ARC). Programming in Objective-C is a concise, carefully written tutorial on the basics of Objective-C and object-oriented programming for Apple's iOS and Mac platforms. The book makes no assumptions about prior experience with object-oriented programming languages or with the C language (which Objective-C is based upon). Because of this, both beginners and experienced programmers alike can use this book to quickly and effectively learn the fundamentals of Objective-C. Readers can also learn the concepts of object-oriented programming without having to first learn all of the intricacies of the underlying C programming language. This unique approach to learning, combined with many small program examples and exercises at the
Customers who viewed this item also viewed
Page 1 of 1 Start overPage 1 of 1
Editorial Reviews
From the Back Cover
"The best book on any programming language that I've ever read. If you want to learn Objective-C, buy it." --Calvin Wolcott "An excellent resource for a new programmer who wants to learn Objective-C as their first programming language--a woefully underserved market." --Pat Hughes
About the Author
Stephen Kochan is the author and co-author of several bestselling books on the C language -- including Programming in C, Programming in ANSI C,Topics in C Programming - and on Unix, including Exploring the Unix System and Unix Shell Programming. He has been programming on Macintosh computers since the introduction of the first Mac in 1984 and wrote Programming C for the Mac as part of the Apple Press Library.
Tell the Publisher!
I'd like to read this book on Kindle
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
I'd like to read this book on Kindle
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Product details
- Publisher : Addison-Wesley Professional; 4th edition (December 26, 2011)
- Language : English
- Paperback : 600 pages
- ISBN-10 : 0321811909
- ISBN-13 : 978-0321811905
- Item Weight : 1.93 pounds
- Dimensions : 7 x 1.25 x 9.25 inches
- Best Sellers Rank: #3,231,250 in Books (See Top 100 in Books)
- #370 in Apple Programming
- #678 in C Programming Language
- #786 in Object-Oriented Software Design
- Customer Reviews:
About the author
Follow authors to get new release updates, plus improved recommendations.

Stephen G. Kochan has been developing software with the C programming language for more than 30 years. He is the author of several best-selling titles on the C language, including Programming in C , Programming in Objective-C , and Topics in C Programming . He has also written extensively on Unix and is the author or coauthor of Exploring the Unix System and Unix Shell Programming.
Customer reviews
4.1 out of 5 stars
4.1 out of 5
98 global ratings
How are ratings calculated?
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzes reviews to verify trustworthiness.
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Reviewed in the United States on February 21, 2012
Verified Purchase
3 people found this helpful
Report abuse
Reviewed in the United States on September 23, 2014
Verified Purchase
This is the best introductory overview book for a language and framework that I have read. I am an old timer starting in this business in the late 60,s with FORTRAN and surviving Algol, C, Assembly Language, PERL, Visual Basic, and C#. The book presents an orderly progression of what you need to know to get started working in the Apple Objective C environment. It emphasizes good programming practices. It stresses object oriented development and hides the nasty procedural crud that still lurks in the C/Unix programming environment. The simple examples build on a common theme that focuses is on program development instead of clever language features. To get the most out of this book, the reader needs a basic understanding of object oriented concepts and some programming experience either on the job or in the classroom. This book will give you the orientation to Objective C that you need to make sense out of the more focused books on application development in the Apple environment.
Reviewed in the United States on August 21, 2012
Verified Purchase
I've attempted to learn iOS and OSX programming numerous times, though numerous books, online classes, and even a university course. I would continually get stuck on the Objective-C, particularly because I didn't have any prior experience with programming, and all these other resources relied on foundational knowledge.
With Programming in Objective-C, I'm going over concepts I remember from my previous learning attempts, but actually understanding them now.
I definitely recommend this book for those wanting to learn Objective-C and/or eventually program for OSX and iOS. I'm about a quarter of the way though the book, and feel like I've learned more than in any other class or book I've attempted.
This book works for the way my brain works. Fantastic.
With Programming in Objective-C, I'm going over concepts I remember from my previous learning attempts, but actually understanding them now.
I definitely recommend this book for those wanting to learn Objective-C and/or eventually program for OSX and iOS. I'm about a quarter of the way though the book, and feel like I've learned more than in any other class or book I've attempted.
This book works for the way my brain works. Fantastic.
3 people found this helpful
Report abuse
Reviewed in the United States on December 29, 2012
Verified Purchase
I got the book during the first quarter of this year and just finished it recently, due to school priorities. I'm just a High School senior.
Anyways, I can honestly say that this book is worth every cent for those seeking to gain a good solid grip on the Objective-C programming language. The author does a great job explaining each concept covered in great detail. In addition, the example programs (code) provided throughout the chapters are well explained and well thought out.
I do want to point out that this might not be the best book for absolute beginners. The book breezes through certain topics like variable declarations, which is essential to any programming language.
For absolute beginners who have never written a single line of code, I recommend starting your quest into programming by learning the C programming language first. This book may leave you scratching your head if you do not have at least a basic understanding of general C concepts.
I've been writing code ever since I was 13, and I can honestly say learning the C programming language is a definately must for those absolute beginners wanting to program in many advance languages like C++ and Objective-C. While it isn't required, it will make learning these languages easier because Many C concepts are adopted by these programming languages.
Anyways, I can honestly say that this book is worth every cent for those seeking to gain a good solid grip on the Objective-C programming language. The author does a great job explaining each concept covered in great detail. In addition, the example programs (code) provided throughout the chapters are well explained and well thought out.
I do want to point out that this might not be the best book for absolute beginners. The book breezes through certain topics like variable declarations, which is essential to any programming language.
For absolute beginners who have never written a single line of code, I recommend starting your quest into programming by learning the C programming language first. This book may leave you scratching your head if you do not have at least a basic understanding of general C concepts.
I've been writing code ever since I was 13, and I can honestly say learning the C programming language is a definately must for those absolute beginners wanting to program in many advance languages like C++ and Objective-C. While it isn't required, it will make learning these languages easier because Many C concepts are adopted by these programming languages.
One person found this helpful
Report abuse
Reviewed in the United States on January 15, 2012
Verified Purchase
The book spent 4 chapters on C programming. Experienced C/C++ programmers may skip it entirely. It goes by describing building simple illustration with fraction class. I wish it could highlight the points specific to Objective-C instead purely going through by describing how he implements a fraction class which isn't much interesting. Many parts of the content describe trivial step by step how to.
The book does briefly explains important constructs such as Interface, Implementation, Property, Category, Protocol, Protected/Public/Private, nonatomic/atomic, copy, strong, weak, etc. For a book solely written for Objective-C, I would expect to see more discussions on when to and when not to use these constructs. Real samples taken from the Foundation classes would be great.
The book only gets you started. You'll need other material to complement for effective Objective-C programming + a lot of practicing.
I give it 4 stars because it does what is required for beginners. But experienced programmers especially C/C++ programmers should look more than this book alone. The step by step given simply made me dumb as a C/C++ programmer. These step by step should be better off provided in the user manual of Xcode.
The book does briefly explains important constructs such as Interface, Implementation, Property, Category, Protocol, Protected/Public/Private, nonatomic/atomic, copy, strong, weak, etc. For a book solely written for Objective-C, I would expect to see more discussions on when to and when not to use these constructs. Real samples taken from the Foundation classes would be great.
The book only gets you started. You'll need other material to complement for effective Objective-C programming + a lot of practicing.
I give it 4 stars because it does what is required for beginners. But experienced programmers especially C/C++ programmers should look more than this book alone. The step by step given simply made me dumb as a C/C++ programmer. These step by step should be better off provided in the user manual of Xcode.
One person found this helpful
Report abuse
Top reviews from other countries
Adso
3.0 out of 5 stars
Difficult and not enjoyable
Reviewed in the United Kingdom on November 12, 2012Verified Purchase
I am a very experienced application developer having worked with IBM and Microsoft languages for the last 20+ years. The last language I learned was c# and it was a doddle, a beautiful, intuitive and simple tool that works really well with the cumbersome .net event model. I had assumed that learning Objective-C would a doddle too. After all it is a C based language, like c#. I haven't found that to be the case, at least while trying to learn it using this book. Maybe the mistake I made was going for a book that says it is for programming novices, but I have never found that to be an issue in the past.
IMO, Chapter 13, which is [mysteriously] stated by the author to be optional, should be Chapter 1 as it explains the C structures upon which Objective-C is based. After reading Chapter 13, I found that I understood what I had read in Chapters 1 - 12 much better, because it answered all the "why has it been written like this" questions that cropped up in my mind about Objective-C.
Throughout the book, new concepts are introduced without sufficient explanation. And when questions are asked on the support website (classroomm.com/objective-c/), there is no longer any response from the author. Luckily the stupendously brilliant people at stackoverflow.com are much more responsive and provide explanations at whatever depth the questioner requires.
Chapter 17, about memory management is a new chapter because changes to the compiler now mean that manual memory management is optional. I found it ambiguous. I am not sure whether any manual memory management issues that were mentioned apply where ARC is in practice or not.
I have just finished reading Chapter 18 about Copying Objects. Once again, nothing is explained clearly, unambiguously or in sufficient depth. Things are stated as facts, and you have to accept them. What I do understand is that slight variations in coding object copy can lead to wildly different results depending on apparently arbritary circumstances. I will be heading back to stackoverflow.com to try and get my head around what I just read.
Overall to be fair, I can give it no lower than 3 stars, because I have managed to learn Objective-C with this book, with a lot of help from other resources, but rather than the days it took me to learn c#, it has taken me weeks to plough through this dry and difficult book, despite total motivation to learn from start to finish. Maybe if I hadn't been so motivated, I would have given up.
IMO, Chapter 13, which is [mysteriously] stated by the author to be optional, should be Chapter 1 as it explains the C structures upon which Objective-C is based. After reading Chapter 13, I found that I understood what I had read in Chapters 1 - 12 much better, because it answered all the "why has it been written like this" questions that cropped up in my mind about Objective-C.
Throughout the book, new concepts are introduced without sufficient explanation. And when questions are asked on the support website (classroomm.com/objective-c/), there is no longer any response from the author. Luckily the stupendously brilliant people at stackoverflow.com are much more responsive and provide explanations at whatever depth the questioner requires.
Chapter 17, about memory management is a new chapter because changes to the compiler now mean that manual memory management is optional. I found it ambiguous. I am not sure whether any manual memory management issues that were mentioned apply where ARC is in practice or not.
I have just finished reading Chapter 18 about Copying Objects. Once again, nothing is explained clearly, unambiguously or in sufficient depth. Things are stated as facts, and you have to accept them. What I do understand is that slight variations in coding object copy can lead to wildly different results depending on apparently arbritary circumstances. I will be heading back to stackoverflow.com to try and get my head around what I just read.
Overall to be fair, I can give it no lower than 3 stars, because I have managed to learn Objective-C with this book, with a lot of help from other resources, but rather than the days it took me to learn c#, it has taken me weeks to plough through this dry and difficult book, despite total motivation to learn from start to finish. Maybe if I hadn't been so motivated, I would have given up.
3 people found this helpful
Report abuse
glintonby
5.0 out of 5 stars
Good comprehensive book
Reviewed in the United Kingdom on April 9, 2012Verified Purchase
This is a very good book for Objective C and basic Foundation classes such as strings, arrays etc. My background is as a C programmer, so I skipped the chapter on C and benefited from an understanding of the underlying language. However, I think the book is a very accessible book for anyone wanting to learn the 'Apple' language of choice. Although covered in one chapter, this is not a book for iOS programming itself and I would recommend other books for iOS. But for Objective-C itself, it is excellent.
3 people found this helpful
Report abuse
John Dallman
5.0 out of 5 stars
Use this to learn the language before you start on your GUI
Reviewed in the United Kingdom on August 29, 2012Verified Purchase
My background is as an experienced C and C++ programmer, who prefers learning things throughly and in stages, rather than mixing several fields at once. This is a solid learning guide to Objective-C, which isn't a difficult language, and to the Foundation, which is a vital and under-appreciated part of iOS programming.
Reading this book and working through the examples will make one aspect of iOS programming pretty straightforward, and let you learn the iOS environment without stumbling in expressing your desires in code.
Reading this book and working through the examples will make one aspect of iOS programming pretty straightforward, and let you learn the iOS environment without stumbling in expressing your desires in code.
Anton
3.0 out of 5 stars
Too basic, not too interesting in general
Reviewed in the United Kingdom on September 24, 2012Verified Purchase
I bought this book in hope to deepen and structure my knowledge in Objective-C and Cocoa as I recently switched to iPhone development and didn't have a handful of knowledge in the area. And the book and the author disappointed me, to say the least. I was expecting something close to "The C++ Programming Language" by Stroustrup or books by Richter on C#, but in reality I got a book for beginners in programming. The book title is very misleading (at least to me) as author describes simple things to someone who never wrote any single program in his life. In fact I think that the approach taken here is completely wrong - were I a newbie in software development, I doubt I'd learn anything good from here.
It took me three days to complete this 600 pages writing just because there was not much discussion of really interesting topics. And I almost started laughing when I finally got to the "Underlying C Language Features" chapter! If you know a bit about Objective-C and C languages you would understand that throughout the book you are reading about C language features. Than why did author decided to make a separate chapter for things like arrays or pointers and call them "C features", disregarding that everything before was also C features???
100 pages spent on Foundation Framework are not serious. If you are a seasoned developer - this information would be just enough to get started, but if you have no prior experience in development - half-page intro to collection classes would confuse you too much. Not to say about more advanced topics.
So, what I expected - a well-structured, deep book on Objective-C features, telling me how things work and why.
And what I got - a mediocre intro to the C language, plus brief explanation on Objective-C features built on top of C. Then a rush into Foundation just so that the book feels complete, but it doesn't.
For me this book is useless, I'm not even sure if I will ever reference it if I have any question in Objective-C
It took me three days to complete this 600 pages writing just because there was not much discussion of really interesting topics. And I almost started laughing when I finally got to the "Underlying C Language Features" chapter! If you know a bit about Objective-C and C languages you would understand that throughout the book you are reading about C language features. Than why did author decided to make a separate chapter for things like arrays or pointers and call them "C features", disregarding that everything before was also C features???
100 pages spent on Foundation Framework are not serious. If you are a seasoned developer - this information would be just enough to get started, but if you have no prior experience in development - half-page intro to collection classes would confuse you too much. Not to say about more advanced topics.
So, what I expected - a well-structured, deep book on Objective-C features, telling me how things work and why.
And what I got - a mediocre intro to the C language, plus brief explanation on Objective-C features built on top of C. Then a rush into Foundation just so that the book feels complete, but it doesn't.
For me this book is useless, I'm not even sure if I will ever reference it if I have any question in Objective-C
One person found this helpful
Report abuse
valveamp
5.0 out of 5 stars
Very helpful if you want to master Objective-C programming
Reviewed in the United Kingdom on October 18, 2013Verified Purchase
This book is not really a beginners book but, does take you through all the basic steps slowly so that you can master each area of Objective-C. There are many examples to work through, which can be hard work, but it is well worth the effort to get through the book. A good understanding of Object Oriented Programming is helpful, as it helps to get your programs structured properly. Being a Microsoft Certified Solution Developer this book has greatly helped my transition to learning Objective-C, which I think is a great language, once you get to know it, but it does seem a little hokey to start with. One of the better Objective-C programming books.


