The Top 10 Technologies that Make It Easy to Develop Amazing Apps for iOS
To celebrate Apple's latest announcement of iBooks for the iPad, I have decided to make the first chapter of my latest book iOS 5 Core Frameworks available in this format, for free! To load this chapter onto your iPad, simply open the .ibooks file on your iPad. You can email it to yourself, open in dropbox, or open it from this webpage.
You must have iOS 5 and iBooks version 2.0 installed on your iPad to open this file. Unfortunately, iBooks version 2.0 is not yet iPhone compatible.
The complete book (including Chapter 1) is available for purchase in iBooks. This free sample chapter was designed using the new iBooks2 format and is available here.
Don't get me wrong. I love both iOS and Android. I think both are fantastic platforms and their competition with each other keeps technology changing and moving. That being said, as an independent developer and author, there are few reasons why I have chosen to focus on iOS and Mac OS X with a dozen or so apps in the app store and partners like Kelby Media Group, Adobe, and Pearson. Android shouldn't be ignored, but in my opinion iOS still has much more to offer to developers.
When I look at iOS, there are a few things that jump out at me—a few native technologies that make it easy to do what you want with the power, efficiency, and beauty characteristic of Apple. Last week on TechCrunch, Jon Evans wrote a great comparison of iOS and Android. As stated in the article, once a developer of Android apps steps beyond a "fairly vanilla graphics requirements," the two platforms were clearly different, with iOS coming out on top. Evans cited problems with the OS fragmentation and hardware differences of Android devices. In November of last year, recent numbers showed that iOS 5 already had 40% penetration into the market while approximately 96% of Android users are still on Android version 2.3.3 or lower (which was released 20 months ago), despite the latest Android 4 phones.
The power of these native frameworks, or core frameworks, was the reason behind my latest book, iOS 5 Core Frameworks: Working with graphics, location, iCloud and more. In this book I go through the top 10 technologies (and reasons) for developing applications in iOS. I explain how to use these technologies to make some of the most popular apps around like Flipboard, Twitter, foursquare, and Instagram.
A large percentage of this book is brand new to iOS 5, including iCloud, Newsstand, native Twitter integration, and image processing. And because iOS is not as fragmented as Android, and the install base of iOS 5 is so high (especially on tablets), there is no reason why you can’t start developing for iOS 5 today.
With that in mind, here are the top 10 technologies I cover in my latest book, and how they make it easier to develop amazing apps for iOS like never before.
1) Core Data: Used to provide easy access to persistent data stores of your application model.
2) iCloud: A cloud-based storage system that automatically manages content synchronization, document storage, and data merging (with automatic conflict resolution).
3) Core Location: Provides access to location services including forward and reverse geocoding of location data. New to iOS 5, Core Location now includes region monitoring allowing your app to generate notifications when a user enters and exits a specified region.
4) Accounts/Twitter: New to iOS 5, Apple has included the APIs needed to access a centralized accounts database stored in the protected file system. Using the Accounts framework in combination with the new Twitter frame- work, developers can provide a single sign-on experience with Twitter services, letting iOS automatically handle the complex OAuth workflows.
5) Core Graphics: Core Graphics is essential when creating custom UI elements. Using Core Graphics you can draw custom user interface elements giving your app a unique look-and-feel.
6) Core Image: Starting out as a powerful image processing and analysis library on Mac OS X, Core Image is now available on iOS providing you access to professional quality image editing filters and operations. Additionally, Core Image lets you easily analyze images using face detection algorithms or automatic image enhancement.
7) Core Animation: Core Animation (Quartz Core) has been at the heart of the superfluous animation effects available on iOS since day one. New to iOS 5, however, comes the unique ability to create particle emitters for even more impressive animation effects.
8) Core Audio: Audio adds an intangible aspect to your apps that helps users connect with their data or your game. By using audio effectively, you draw users into your app, providing the best user experience possible.
9) AV Foundation: AV Foundation is the backbone of most high-level audio and video operations. By implementing AV Foundation directly, however, you have more access to your video data than ever before. Using AV Foundation you can incorporate other technologies mentioned previously to build in-camera effects and real-time processing of data.
10) Newsstand Kit: New to iOS 5, Newsstand apps are designed to bring periodical content to a user’s doorstep. Using the new Newsstand Kit, you can create a special class of application that automatically downloads new content providing users with offline access.