Author: Wayne Bishop

  • Reading Guide for iPhone App Development

    For those of you wanting to learn iPhone development, there are a number of resources available. Besides blogs (like ours) there are a number of books that can help pull things together for new and budding developers.

    New Stuff to Learn

    There’s been a lot of press lately about Apple development tools and the programming language, which is Objective-C. While folks that come from a C and C++ background feel quite at home with Objective-C, there are various developer groups feeling left out of the iPhone app gold rush. Specifically, I am speaking to the legions of .NET and Flash developers who have spent many years mastering their craft and are now being asked to learn a new set of tools, programming language and SDK.

    As someone who went through that transition I thought I would document the books that helped along the way. While I did learn Mac development in a classroom setting, the books I’ll recommend were instrumental to it all making sense. My recommendations are listed in suggested reading order.

    The Basics

    The first book that can help orient new Mac developers is Learn Objective-C on the Mac by Apress. While the book doesn’t specifically focus on the iPhone SDK it does provide fundamental answers to beginner programming questions. This includes how to program Objective-C properties, methods, classes, variables and OO design. It also introduces important concepts such as NSDictionary and NSPredicate which become useful when learning database development using Core Data.

    Build On What You’ve Learned

    Once you get your bearings you can build on the fundamentals by reading Beginning iPhone Development by Apress. This book introduces the basic aspects of the iPhone SDK. As you may know, learning Objective-C doesn’t necessarily make you an iPhone expert. You will also need to learn how to apply the iPhone SDK using Objective-C which is the focus of this book.

    Create User Interfaces

    I’ve heard a lot of people comment about their experience with Interface Builder (IB). Granted, IB may not be what most existing developers are used to, I do find working with it to be fun and different. There’s a lot you can do with IB, but working with XIB files (pronounced “nib”) IBOulets and IBActions can be complex. In the book Cocoa Programming for Mac OS X by Aaron Hillegass, he provides almost all of his code examples in an illustrated step-by-step approach. Readers also get exposed to additional concepts such as Key-Value-Coding, which is used in Mac desktop development.

    Fill In the Gaps

    At this stage you’ll certainly understand most, if not all of the language syntax and SDK fundamentals. However, you may not understand why some things work they way they do. This may include items such as memory management, synthesizing properties, calling delegates and handling notifications. One of the best books to help fill in the gaps is Head First – iPhone Development by O’Reilly. It provides one of the best introductions to Core Data that I’ve seen. One cruise through this book and you’ll be a happy camper.

    Build Something Cool

    By now you should have the knowledge to put your development ideas into action. Add to your new found expertise by reading More iPhone Development by Apress. This book skips the preliminaries and gets right into the good stuff such as Core Location, GameKit and the MediaPlayer Framework. I’ve been surprised by how many times I go back to this book as a reference for new and existing projects.

    Have a Reference

    Finally, the last resource that I recommend is the online reference material provided by Apple. This is not to say that its documentation is not good. On the contrary, it’s a great resource, but almost to a fault. Due to the complexity of its documentation I find it most useful as a reference and not for learning new concepts. I feel many new developers rush to the iPhone Developers Reference documentation as their first information source only to be discouraged when none of it makes sense.

    Conclusion

    Learning iPhone Development is indeed challenging but is not impossible with the right resources. As you continue to build your skills in app development we’ll be here to help take your ideas from concept to the App Store. In meantime these books should ease the learning curve.



    Alcatel-Lucent NextGen Communications Spotlight — Learn More »

  • TAB Welcomes: Wayne Bishop

    Well, where do I begin? First of all, it’s great to become a contributing member of TheAppleBlog. I’ve been a TAB fan for quite some time so it feels pretty surreal to be part of the team. I look forward to hearing about your projects and ideas!

    I’ll start off by letting you know that I hail from The Emerald City (yeah that’s Seattle). Most folks think we are an unassuming bunch who drink too much coffee while working on our Windows PC’s. While I do like a good a mocha, I’m also part of Seattle’s growing Mac community that’s building some pretty cool stuff for the iPhone and iPod touch.

    As a self-described geek and software engineer I’ll be writing articles to help unravel the mystery of developing apps for iPhone OS. In addition to writing code, I’ll examine various aspects of the software development process including planning, testing and design. If you’re planning the next great app hopefully I can provide the “secret sauce” to help move your concept from idea to the App Store.

    Don’t think coding is for you? Even if you are a project manager, sales person or business type, learning about the technology that has captured world attention may prove useful to your company or career.

    My Background

    I’ve spent my entire career in software development, with a primary focus on building web-based applications. Over the years I’ve worked in project management, coding, database development and quality assurance. I also ran my own software consulting company for 5 years.

    In 2009 I took notice of iPhone OS as a legitimate development platform when Apple announced they had 50,000 apps in its app store. Like many iPhone developers I’d spent most of my career immersed in other technologies so I spent many months learning a new set of tools, processes and programming language.

    This past year I released my first iPhone app called Jingle! that integrates music and social media. I also have an interest in education, mapping and GPS systems and plan to develop new titles for the iPad.