5 reasons iOS7 marks the best time to get started in app development
The imminent release of Apple's new mobile operating system means that now is the time to get started developing apps. Here are 5 reasons it's a good time to get started.
1. SPRITEKIT (NATIVE OBJECTIVE-C GAME ENGINE)
Games are the biggest category of apps in the App Store, both in number of downloads and in top grossing. There have been a small handful of iOS games written in pure UIKit but the majority of iOS games are built using 3rd-party game engines such as cocos2d, Unity3d, Unreal Engine and a plethora of other options. While Unreal or Unity3D will likely remain the best choice for 3D game development on iOS for the foreseeable future, SpriteKit (available on iOS7 and OSX 10.9 Mavericks) provides an elegant and powerful set of APIs for sprite animations, a collision/physics engine and out-of-the-box support for game controllers.
2. XCODE SERVER (CI SERVER AND NEW TESTING FRAMEWORK FOR COCOA APPS)
Testing tools in Cocoa have always been somewhat lacking compared to the robust options available for other development environments like Ruby. With Xcode5, Apple introduces a brand new testing framework (XCTest) as well as a new component for OSX Server called Xcode Server. With Xcode server you can do automated acceptance and integration testing on a variety of devices/targets and since it runs on OSX server, you can easily monitor a Github repo and run tests automatically after each commit.
3. UIKIT DYNAMICS (PHYSICS ENGINE FOR IOS APPS)
UIKit Dynamics is one of the most interesting additions to the iOS7 SDK, providing a full-fledged physics engine for your app's views. Be sure to watch the UIKit dynamics sessions from WWDC 2013 to see it in action and get a sense for it's capabilities and how to utilize it in your apps. With UIKit Dynamics, you can easily add physics-based behaviors to your UI elements.
4. AUTOMATIC CONFIGURATION (NO MORE BOUNCING BETWEEN THE WEB AND XCODE)
With Xcode5, you can now setup provisioning profiles, ad-hoc distribution, entitlements and a slough of other app-specific configuration settings without leaving Xcode. Guaranteed to save hours of busy-work, particularly for beginning developers.
5. IOS7 INTERFACE CHANGES (THIS IS A BIG ONE)
The user interface for iOS7 includes an entire ground-up overhaul of the rendering engine as well as the UI paradigm for all of the UIKit interface elements you've come to know and love (or hate) over the past 7 years. It also represents the biggest change to the overall design of the apps that run on your device. Apple provides an excellent document as well as video sessions from WWDC explaining the new UI idioms, how to transition your apps to the new UI paradigm and how to layout your views to support iOS7 and iOS6 in the same app bundle.