The iPad is described as a Post PC device and part of what is known as Ubiquitous Computing (described by Wikipedia as “Machines that fit the human environment instead of forcing humans to enter theirs”). Plenty of debate can be expected about the future of tablets, but rather than try to intellectualise, I just follow what I feel. I find tablets useful as a tool for research, learning and general cloud connected computing on the go. That’s why I’m interested to develop for iPad.
When I’m starting a new project I like to get an end-to-end example running as quickly as I can. In the Agile world this is known as a Zero Feature Release (ZFR). The ZFR is an architectural spike that takes you end-to-end through a software system, touching key boundaries and giving the developer a good exposure to the project ahead.
For learning iPad Development a ZFR might include examining key user interface components e.g. SplitView, Storyboard, Static Table, UICollectionView. A good exploration of the development environment is gained e.g. source control with Git and running the iOS Simulator. Getting up-to-speed with the improvements in Objective-C e.g. new syntax for collection initialisation, Automatic Reference Counting, Blocks for enumerating collections, private declarations for instance variables & protocol implementation, automatic property synthesis, Categories to extend UserDefaults and finally, deployment onto a physical device to verify that the project is properly setup. This can be seen in the download included with this post, a stepping stone towards building a real world iPad App.