iOS201 | iOS 5 Professional iOS Coding
So You Want To Be A 'Code Warrior'?
Tap-Quiz
How can I execute javascript in an embedded webview?
Create a string with the javascript commands then ask the webscript bridge to execute it in the embedded webview.
The topics in iOS201 allow you to bring a level of sophistication and polish to to your apps, taking them to a level of commercial calibre, incorporating both visual enhancements and performance enhancements.
iOS201 builds on the foundation taught in Splice's iOS101. The concepts are no more difficult to understand or implement in your application design than the topics of iOS101, but they do build on the earlier topics. You'll explore items in a greater level of detail to take you from novice coder to master programmer.
In iOS201, students work on a single project - a peer to peer game from beginning to end. Special attention is paid to creating animations, working with tables, using CoreData and iCloud and on integrating the app with system services, like Calendar, Contacts and Spotlight. Students finish the week with the very impressive GameKit, which despite the name, can be used for any peer to peer apps or even single-user apps where the developer wants to incorporate rewards or achievements.
Day 1
Visually Delightful
- Integrating rich media playback into your iOS applications
- Using motion video in the background with MPMoviePlayer
- Animating your User Interface
- Fading, Repositioning, Scaling and Rotating UIView Subclasses
- Controlling independent batches of animation (like side-scrolling games)
- Skinning the standard controls
- Communicating with your Graphic Designer (Programmers are from Mars, Graphics Designers are from Venus)
- Using AVFoundation for media playback and camera acquisition
Day 2
Advanced TableViews
- Creating Indexed TableViews
- Searching using the UISearchField, with scope and search history
- Creating Sections in a UITableView
- Organizing, sorting and filtering of TableViews using the NSFetchedResultsController and CoreData
- Background Refreshes
- Animating the Addition and Removal of Cells
- Implementing the "Pull to Refresh" gesture
- Re-ordering and re-arranging TableViews and synchronization of order-changes with the model layer
- Using Objective-C ^Blocks
Day 3
iCloud + Advanced CoreData
- Checking for and using iCloud for storage
- Building CoreData Models that work with iCloud
- Saving Preferences to iCloud
- Creating relationships between tables
- Storing fetch requests within the model
- Performing lightweight migration between model versions
- Using a RAM store for performance benefits
- Setting batch limits
- Using Faulting to enhance NSFetchRequest performance
- Storing complex datatypes and objects in CoreData
- Asynchronous Background Data Requests
- Using the NSNotificationCenter
Day 4
Integrating with the Ecosystem
- Integrating with the system Spotlight services
- Accessing the System Address Book
- Creating Contacts
- Searching for Contacts
- Handling permission requests for Contacts and Calendar Data
- Retrieving events from the Calendar
- Creating an Event
- Creating a Recurring Event
- Creating a Reminder
- Registering your App to handle Specific Document Types
- Asynchronous Background Data Requests
- Working with Push Notifications
Day 5
GameKit
- Locating other players for a multiplayer/multiuser app
- Sending data between two peers in a multiplayer app
- Creating a leaderboard of top scores
- Registering achievements
On this day, students will work to create a game that they will then load onto their devices. Their games will be able to locate other players, register top-scores, log-in to game centre, note when achievements are made and keep a top-score. The copies of the game will send data to each other after having located players with similar abilities using the GameKit API.
What's Covered
We build on techniques from iOS101 to help you create apps with a professional polish.
A whole day on Core Data?
Absolutely. We only touch the surface of it in iOS101, now we want to reduce trips to the storage by optimizing our fetch requests, build better and faster predicates of the caliber that Apple uses in the Mail app, and get UITableView sections, searching and indexing with very little code thanks to the new(ish) UIFetchController & UISearchController classes.
Is this for iPhone or iPad?
The course is based on the iOS SDK 4.2, so it's actually for both.
Can I write a game with this course?
You'll have the techniques to make a multi-user, network based game with leaderboards and achievements. You'l be able to find other players for your app that have a similar ability to the current user. These techniques aren't limited to games, you can also use them for corporate apps for employee competitions and they've been used to match people in dating apps.
Am I ready?
If you know the contents of iOS101, you're probably ready. And if it's too much, don't forget you can take it as often as you like for a year (space provided).
You should also be comfortable with retain/release methods of memory management, Objective-C Protocols and categories.
faster data, slicker graphics
need some iOS coding experience
will call them today!
1 (902) 444 4225 ask for Leslie
Instructor Bio
Woody spends about as much time teaching each week as he does coding. It has been a passion for over twenty years. His focus is presently on internal corporate-style productivity apps. Prior to working for Splice, he was the product designer at a software start-up that focused in broadcast automation solutions.
Woody received his indoctrination to Cocoa and Objective-C in 2005 and has been teaching it since 2008. He is presently the co-chair of the Atlantic CocoaHeads Chapter.
Student Case Studies: Allen in Edmonton
"The instructor was great. I loved the challenges he presented to me. I enjoyed the opportunity to take basic concepts and adapt them to meet larger, and sometimes quite different programming challenges. I believe that he has a high level of expertise. If there was one word to describe my experience I would say AWESOME. Not only was the training awesome, but the location and atmosphere was truly awesome. I can easily see why people fall in love with Halifax as it truly is a great city and the location of Splice offered my an opportunity I hope I will never forget.
Read More from Allen about his experience in Splice's iOS4 Development Bootcamp