Creative App Development Part 2: Interface Design for Desktop and iOS
Note: this is a 3-part series. We strongly recommend signing up for all three (and you'll receive a discount on this page if you do!) but if you are interested in only one or two of the topics, or are unable to attend one of the sessions, then you're free to sign up for only the workshops you need. Just make sure you've got a good handle on the material presented in the workshops you missed! You can sign up for all three from the first workshop registration page!
You've just been struck with a bolt of inspiration for a "killer app" that will certainly make you millions on the App Store. Or maybe you have an idea for an interactive art project that will use a customized downloadable app. Now, if only you could implement your genius idea...
By learning a single set of skills, you open the door to creating your own native iOS apps and desktop Mac applications. In just a few lessons, you will pick up the basics of writing and compiling your code in Apple’s development environment, XCode, language basics in Objective-C, and navigating the Cocoa framework.
By the end of the workshop, students will be able to use the XCode environment to code, test and build simple applications in Obj-C and Cocoa for iOS and the Mac. We will also examine how to continue exploring the Cocoa framework, and use other external frameworks to easily extend the functionality of our apps.
Finally, by the last session, we'll move on from Objective-C to do a little bit of overview and integration of Apple's new Swift programming language. Be the first one of your friends to code in the hip new style!
In this Session: Interface Design for Desktop and iOS, object communication and Model-View-Controller
Learn how Interface Builder is integrated with Xcode, and how IB objects interact with code. We will design a simple iOS application that interacts with some of the classes created in the first session. Examine MVC principle, and look at working examples of Cocoa design patterns that are used throughout the framework: target-action, delegation, and notifications. Time permitting, look at use of Blocks within the framework, and basic topics in threading.
What, if any, prerequisite knowledge should students have?
We strongly recommend that you take the previous workshop in this series if you're going to be taking this one as well. However, if you're jumping into this because you're already an experienced coder, then just be sure that you're comfortable with Objective-C and the Cocoa frameworks. Email us at workshops [at] interaccess [dot] org and we'll send you the files we created in the previous workshops.
What equipment should students bring?
A Mac computer with XCode installed (freely available from the Mac App Store, see https://developer.apple.com/xcode/downloads/). Don't forget to download and install XCode before coming to class, as it's a big file to download! Note that this means that your laptop should meet the system requirements for running XCode and the current version of the SDK. The latest OS will definitely be preferable. If you don't have a Mac, contact firstname.lastname@example.org, and we may be able to get you a loaner with the software pre-installed.
About the instructor:
ALEX GEDDIE is a Toronto new media artist, computer musician, technologist and huge nerd. He has exhibited his installation works and performed in Canada, France, Belgium, Germany and Taiwan. He studied at Ryerson, OCAD and Le Fresnoy, and is a technology instructor at Ryerson University and Sheridan College.