This hands-on course is designed for experienced object oriented programmers who already know how to write code and are already able develop a software application. Students should be avid users of iPhones and iPads and must provide their own iPhone/iPad/iTouch devices, plus an Intel based MacBook with OS X Sierra or higher in order to register. BCIT Computing students who do not currently own an Intel based MacBook are entitled to purchase one from Apple Canada at a student discount. The main focus of this course is to learn to design and develop apps for the latest iOS platform to Apple standards. During this course students have access to Apple resources for the development and testing of iOS applications. Students will design an application, write code on their own Intel based Mac and run their application on their own iOS device. Starting with an intensive overview of the Swift programming language and the Model View Controller design pattern, students are introduced to the iOS platform. Special attention will be placed on the user interface components of current popular iOS business applications. Topics include; Xcode, Cocoa Touch API, Swift, troubleshooting and debugging, Git source control basics, memory management, user input and gesture recognition, Auto Layout, data persistence including Core Data, NSUserDefaults and Plists. Other selected topics will include working with audio, video, networking, SpriteKit, Core Location and multi-threading. Participants will also be required to work in teams and participate in the online component. Upon completion, successful students will be able to design and build a commercial quality iOS application for iPhone or iPad.
This course is 48 hours offered as a classroom (36 hours) AND online (12 hours) format. The class meets once per week for 3 hours face to face and requires an additional 1 hour per week online. No registration is permitted after the course has started without department approval.
Upon successful completion of this course, the student will be able to:
Explore the basics of iOS device capabilities and limitations.
Illustrate the iOS development Process.
Explain the basics of the Model View Controller architecture.
Leverage some of the networking and multi-threading capabilities that exist in iOS.
Utilize the Swift programming language including properties, conditionals, instance variables, classes, strings, arrays, loops, methods and enums.
Employ basic Debugging and trouble shooting.
Explore and use UI Elements and Auto Layout.
Utilize Git source control.
Persist data (Plists, User Defaults, Core Data).
Handle user touches and gestures and audio and video and build a simple interactive game with SpriteKit.
Utilize Cocoa Touch, the UIKit and Swift to create iPhone/iPad applications.
Experience working in teams on iOS related projects.
Explain the process of creating a universal app that will run on both iPhone and iPad devices.
Detail the process required to publish and submit an iOS application.
Design, develop, create and present a significant final iOS business application project.
Effective as of Fall 2017
COMP 3912 is offered as a part of the following programs:
No information on books is currently available for Fall 2018 offerings of this course.
If you have a comment or question about this course, please complete and submit the form below.
Interested in being notified about future offerings of COMP 3912 - iOS Application Development?
If so, fill out the information below and we'll notify you by email when courses for each new term are displayed here.