Programming in Objective-C 2.0
Posted by admin in iPhone Books on July 26, 2010
- ISBN13: 9780321566157
- Condition: New
- Notes: BUY WITH CONFIDENCE, Over one million books sold! 98% Positive feedback. Compare our books, prices and service to the competition. 100% Satisfaction Guaranteed
Product Description
THE #1 BESTSELLING BOOK ON OBJECTIVE-C 2.0
Programming in Objective-C 2.0 provides the new programmer a complete, step-by-step introduction to Objective-C, the primary language used to develop applications for the iPhone, iPad, and Mac OS X platforms. The book does not assume previous experience with either C or object-oriented programming languages, and it includes many detailed, practical examples of how to put Objective-C to use in… More >>
Programming in Objective-C 2.0
Recommended Product:
Beginning iPhone Development: Exploring the iPhone SDKPlease note that there is now an iPhone 3 edition of this title available!
Are you a programmer looking for a new challenge? Does the thought of building your very own iPhone app make your heart race and your pulse quicken? If so, then Beginning iPhone Development is just the book for you.
Assuming only a minimal working knowledge of Objective-C, and written in a friendly, easy-to-follow style, Beginning iPhone Development offers a complete soup-to-nuts course in iPhone and iPod Touch programming.
The book starts with the basics, walking you through the process of downloading and installing Apple's free iPhone SDK, then stepping you though the creation of your first simple iPhone application. You'll move on from there, mastering all the iPhone interface elements that you've come to know and love, such as buttons, switches, pickers, toolbars, sliders, etc.
You'll master a variety of design patterns, from the simplest single view to complex hierarchical drill-downs. You'll master the art of table-building and learn how to save your data using the iPhone file system. You'll also learn how to save and retrieve your data using SQLite, iPhone's built-in database management system.
You'll learn how to draw using Quartz 2D and OpenGL ES. You'll add MultiTouch Gestural Support (pinches and swipes) to your applications, and work with the Camera, Photo Library, and Accelerometer. You'll master application preferences, learn how to localize your apps into other languages, and so much more.
Apple's iPhone SDK, this book, and your imagination are all you'll need to start building your very own best-selling iPhone applications.
You can discover more about this book, download source code, and find support forums at the book's companion site: www.iphonedevbook.com
Reviews
"People ask me again and again about how to get started in iPhone development, but I never had a very good answer for them until now. Dave and Jeff's book starts at the beginning in clear English, making sure you understand the fundamentals with many large illustrations. From there, they progress into key concepts such as the MVC pattern and ImageBuilder fundamentals. Additionally, I find myself flipping back to it as a reference guide—the plethora of code samples make it a must-have."
"Beginning iPhone Development delivers a clear picture of the entire development process from registering as an iPhone developer through creation of complete applications. There is a wealth of examples illustrating each feature of the iPhone. The authors did an excellent job of demonstrating "best practice" coding methodology throughout the book. You would be hard pressed to find a better guide to creating software for the iPhone."
"Dave Mark has always been the king of Mac programming authors, and now he's proven to be the reigning king for books on iPhone development!
"Beginning iPhone Development is the definitive guide for iPhone development, and anyone aspiring to develop for the iPhone should get this invaluable reference."
"Jeff and Dave have done an exceptional job exploring the iPhone SDK. This book is far and away the single best resource for iPhone SDK development. Developers will latch on to this book and find it useful as they create the next great iPhone application. If you're a developer with an interest in this amazing new platform, this is a must buy."
"If you're planning on coding for the iPhone, start here. Dave and Jeff know their stuff and also know how to explain it. I was amazed how much stuff they cover, from Hello World through analyzing user gestures. Not only do they cover the fun stuff like playing with the camera, they cover real-world development issues like localization. I learned a huge amount from them"
"Starting with an overview of the technology, how to approach the device, the authors lead us straight into the heart of iPhone development. As you progress, you'll learn more about various layout engines and view managers, as well as the more meaty topics like accelerometer and GPS APIs. This book is a must-have for anyone interested in getting started quickly and efficiently with iPhone development!"
"All in all I was very surprised and pleased with the book. I've had the fortune of reading many technical books, and few do a great job of walking someone through the basics without making them feel like a dolt. It felt like every time I was stuck or unsure there was a tip, hint or paragraph which explained what was going on."
Summary of Contents
- Welcome to the Jungle
- Appeasing the Tiki Gods
- Handling Basic Interaction
- More User Interface Fun
- Autorotation and Autosizing
- Multiview Applications
- Tab Bars and Pickers
- Introduction to Table Views
- Navigation Controllers and Table Views
- Application Settings and User Defaults
- Basic Data Persistence
- Drawing with Quartz and OpenGL
- Taps, Touches, and Gestures
- Where Am I? Finding Your Way with Core Location
- Whee!
- iPhone Camera and Photo Library
- Application Localization
- Where to Next?
About the Apress Beginning Series
The Beginning series from Apress is the right choice to get the information you need to land that crucial entry–level job. These books will teach you a standard and important technology from the ground up because they are explicitly designed to take you from “novice to professional.” You’ll start your journey by seeing what you need to know—but without needless theory and filler. You’ll build your skill set by learning how to put together real–world projects step by step. So whether your goal is your next career challenge or a new learning opportunity, the Beginning series from Apress will take you there—it is your trusted guide through unfamiliar territory!



This book is both comprehensive and easy to understand. The sequence of chapters chosen to be read chronologically is well thought out (e.g. having the reader use static data types before introducing the generic id type, or having the reader declare and implement accessor methods before introducing the property and synthesize directives). The end of chapter exercises are also short (i.e. quick to complete) but also thoughtfully designed.
The author chose to make this book serve not only as a reference, but as a tutorial. In other words, a bit like the “… for Dummies” series in its hand-holding (i.e. tutorial) style. However, this book is certainly not for “dummies” as the author does not assume the reader to be slow or requiring interjections of humor or casualness. Other books will have authors write things like “Now grab a slice of pizza before we hit this really hard subject!”, but this author thankfully spares the reader of this. Kochan is concise and direct. There are very few wasted or unnecessary sentences.
Kochan does not assume prior Objective-C, Cocoa framework, or X-code knowledge. However, if you have experience with just about any procedural or object-oriented language, you will have a much easier time with learning any new language, including Objective-C. If you do not have experience with ANY other language, then you will still have a difficult time with learning all of the Objective-C language as some topics just by their very nature are difficult to grasp immediately without practical experience.
Although there is a chapter each on the Cocoa framework and iPhone development, this book is focused on the Objective-C language and Apple’s Foundation framework. Other resources will have to be utilized to learn Cocoa or Cocoa Touch.
BOOK’S TABLE OF CONTENTS:
1. Introduction
2. Programming in Objective-C
3. Classes, Objects, and methods
4. Data Types and Expressions
5. Program Looping
6. Making Decisions
7. More on Classes
8. Inheritance
9. Polymorphism, Dynamic Typing, and Dynamic Binding
10. More on variables and Data Types
11. Categories and Protocols
12. The Preprocessor
13. Underlying C Language Features
14. Introduction to the Foundation Framework Foundation Documentation
15. Numbers, Strings, and Collections
16. Working with Files
17. Memory Management
18. Copying Objects
19. Archiving
20. Introduction to Cocoa Framework Layers
21. Writing iPhone Applications
22. Appendix A. Glossary
23. Appendix B. Objective-C 2.0 Language Summary
24. Appendix C. Address Book Source Code
25. Appendix D. Resources
You may also want to consider reading Apple’s developers’ guides:
-Learning Objective-C: A Primer
-Object-Oriented Programming with Objective-C
-The Objective-C 2.0 Programming Language
Apple’s guides are not easy for a novice, but having read them before reading Kochan’s book definitely made using his book significantly easier and faster for me.
In summary, this book will make learning Objective-C about as easy as it can be since it starts with the assumption that the reader has no prior programming knowledge.
Rating: 5 / 5
I am a web designer and developer and I’ve programmed in a lot of languages (i.e. HTML, javascript, actionscript, visual basic, etc.). I wanted to learn Objective-C as the quickly as I could. I quickly found out that not having experience in programming in C (the predecessor to Objective-C) made it hard to understand the reasoning behind the code syntax and finding resources that didn’t assume I knew C was almost impossible…
After going through the first three chapters of this book in less than an hour, my confidence in the language has increased exponentially. The book is roughly 624 pages, but I feel like I could code the samples and finish the book in just a few days…
The book is organized into four main sections:
I: The Objective-C 2.0 Language
II: The Foundation Framework
III: Cocoa and the iPhone SDK
IV: Appendixes
The separation of these main topics, Objective-C Language features and the Foundation Framework for example, almost guarantees that there won’t be much confusion if you are learning the language for the first time and that there will be a distinction between the topics and concepts for each section.
Kochan does a good job of creating a deep understanding of the material instead of simply saying `just write the code and we’ll explain later’. For example, each chapter provides instructions on how to fulfill basic concepts using Objective-C such as writing classes, inheritance, loops, operators, etc. At the end of each chapter, there are `Exercises’ which may range anywhere from 5-9, which more or less tests the reader’s comprehension on the material that was just covered.
I bought the Beginning iPhone Development: Exploring the iPhone SDK and Cocoa(R) Programming for Mac(R) OS X (3rd Edition) before this book and I should have done the exact opposite. This book can serve as a foolproof foundation and reference guide for either of the aforementioned books and definitely shortens the learning curve to mastery.
Rating: 5 / 5
Note: Typos have been fixed since the edition I originally purchased. I’ve kept my original review below, which was influenced by the number of typos and formatting glitches I encountered in the original edition. Now that it’s all been rectified, there is NO BETTER BOOK for learning Objective-C 2.0 than this book.
*** ORIGINAL REVIEW (noted deficiencies corrected in updated revisions) ***
I’d love to recommend this book as the gateway to learning to program Mac OS X applications, but unfortunately I cannot. It contains more than a few typographical errors, especially in the first few chapters. Those new to programming in C may end up confused and unable to understand why their programs will not compile. This is unacceptable for this type of book.
Beyond typos, my second gripe is the lack of exercise solutions. This book provides challenging exercises at the end of each chapter that are designed to hone your skills and solidify your understanding of taught topics. Frustratingly, there does not seem to be a source containing exercise solutions. None are found in the book, and surprisingly — nothing is offered on the book’s web page either. Nada. Learning is difficult when you cannot check your solution against the author’s intended solution.
My surmise is to blame the editors — someone unaccustomed to working on programming/technical books likely did the final layout.
I learned C Programming over 20 years ago, thanks in large part to Stephen G. Kochan’s original 1988 masterpiece, “Programming In C.” I picked up his latest book looking to master my Objective-C programming skills. Personally, I accomplished my goals — but only because I have a 20+ year history of programming in C (and many other languages). Those new to the language may have to hobble through typos.
This book (minus typos) does an excellent job teaching you Objective-C 2.0. Knowing ObjC is a prerequisite to learning the Cocoa framework for Mac OS X.
Final thoughts:
TWO to THREE STARS for those new to programming. Don’t frustrate yourself with typos and lack of solutions to chapter exercises.
FOUR to FIVE STARS for experienced C/C++ developers looking to jump to Objective-C 2.0.
NOTE: Those giving FIVE STAR reviews to this book knowing that it contains typos are not providing any service to those who are new to programming. What good is it to reward a publisher for poor performance? With any luck, the publisher will fix future versions.
Rating: 5 / 5
I had heard about Kochan’s reputation for writing clear and concise books, so I was anxiously awaiting the release of the second edition of what has been recommended to me as THE book to learn Objective-C from. I was certainly not disappointed. I was able to work through this book in a week’s time and even write my first iPhone application, just from the material presented in this text.
Kochan methodically teaches the mechanics of the language, followed by the Foundation Framework, and then the iPhone SDK. In the last chapter on the iPhone, Kochan shows how to use two of the classes taught in the book (a calculator class and a fraction class) to develop a fraction calculator that runs on the iPhone. I was able to get the program running on the iPhone simulator that comes with the iPhone SDK. You should note that there was a mistake in listing some of the code for this example. I contacted the author and he was aware of the error. He mentioned that all the code, the answers to the exercises, and the errata will be posted shortly. It’s helpful to note that Kochan is active in MacRumors forums and seems to respond quickly to questions posted there as well as to the several emails I sent him.
After I got the iPhone fraction calculator working, I started adding features to the calculator (some came from suggestions in the exercises at the end of the chapter), and this has greatly improved my understanding of how everything works and how it all works together: XCode, Interface Builder, the iPhone Simulator, and Objective-C.
Now I have to dive deeper into Cocoa programming and the iPhone SDK. Kochan has given me a great start to move on to one of the recommended follow-on texts with confidence and a strong footing in the language..
In my opinion, this book is the best way to learn Objective-C and a must read for prospective mac and iPhone application developers.
Rating: 5 / 5
This book is fantastic for beginning programers. I have a little bit of experience with C, and programming in other languages, but am completely ignorant when it comes to Objective-C. Kochan had me understanding complex subjects in minutes.
The analogies used in this book are very clear–using the analogy in this book, I explained how classes work to my wife (whose eyes glaze over when programming is mentioned) and she understood it well.
Another thing the author does well is avoiding overburdening the reader with too many concepts at once. Frequently, the explanations for complex concepts that are not totally relevant to the task at hand are deferred until a later section in the book. This helps you grasp the simple things early on, without feeling overwhelmed. You are then prepared when things get more complex.
If you are a Kindle owner, you’ll be happy to know that the conversion to Kindle has been done flawlessly. When important concepts are referred to, or previous examples mentioned, they are always linked for a quick click back or forward to the relevant location. Images and tables are rendered nice and large, and easy to read. One of the best Kindle formatting jobs I have ever seen.
I fell in love with Objective-C almost immediately after starting this book. Those new to programming or Objective-C will find a lot to love here.
Rating: 5 / 5