Advanced Apps Programming using Apple Mobile Devices
I. Course Prefix/Number: CIS 267
Course Name: Advanced Apps Programming using Apple Mobile Devices
Credits: 4 (3 lecture; 2 lab)
III. Course (Catalog) Description
IV. Learning Objectives
Upon completion of this course, the student should be able to:
- Explain data key.
- Design and develop split views (Master/Detail views) for the iPad.
- Write code to recognize gestures (swiping, rotation), detect touches (pinch, drag) and orientations for both iPhone and iPad devices.
- Use Storyboards for rapid application development.
- Use data persistence.
- Explain memory management and efficient memory usage including plists, NSDictionary, SQLite databases.
- Store, retrieve, create, modify and query SQLite databases.
- Explain Interface layout and resizing techniques.
- Explain file handling procedures.
- Create robust graphical drawing and animations.
- Integrate iAds into mobile apps.
- Integrate location services and map management into mobile apps.
- Integrate camera accessibility and video playback support into mobile apps.
- Integrate Push notifications into mobile apps.
- Upload apps to Apple’s AppStore.
V. Academic Integrity and Student Conduct
• plagiarism (turning in work not written by you, or lacking proper citation),
• falsification and fabrication (lying or distorting the truth),
• helping others to cheat,
• unauthorized changes on official documents,
• pretending to be someone else or having someone else pretend to be you,
• making or accepting bribes, special favors, or threats, and
• any other behavior that violates academic integrity.
There are serious consequences to violations of the academic integrity policy. Oakton's policies and procedures provide students a fair hearing if a complaint is made against you. If you are found to have violated the policy, the minimum penalty is failure on the assignment and, a disciplinary record will be established and kept on file in the office of the Vice President for Student Affairs for a period of 3 years.
Please review the Code of Academic Conduct and the Code of Student Conduct, both located online at
VI. Sequence of Topics
- Review Swift and OOP programming basics
- iOS Architecture and SDK Frameworks
- Testing Apps on iOS devices with Xcode
- Writing iOS Code to Hide the Keyboard
- iOS views, windows, and view hierarchy
- Using Table Views and Storyboards in Xcode
- Build dynamic Tableviews with prototype table view cells
- Static table view
- iPad Splitview and Popover examples
- Implementing a page based App using UI PageViewController
- Using UI PickerViews and UI DatePicker Components
- Working with directories and files
- iCloud storage use
- Managing files using the UI Document class
- Synchronizing Key-Value Data using iCloud
- Data Persistence with Archiving
- Data Persistence using SQLite
- SQLite and iOS Apps
- iOS Multitouch, Taps and Gestures
- Detecting touch screen gesture motions
- Collection Views and Flow Layout
- Subclassing and extending the iOS Collection View Flow Layout
- Drawing iOS 2D graphics with Core Graphics
- iOS animation using core animation
- iOS UI Kit Dynamics
- Sprite Kit Programming
- Integrating iAds into an app
- Multitasking, background transfer service and fetching
- Scheduling local notifications
- Application State Preservation and restoration
- Integrating Maps using MKMapItem
- Getting location information using Corec Location framework
- Working with Maps with MapKit, MKMapView Class and Mapkit Local Search
- Using MKDirections to get iOS Map Directions and Routes
- Using Event Kit to Create Date and Location Based Reminders
- Accessing the Camera and Photo library
- Playing Audio using AVAudioPlayer
- Recording Audio on iOS with AVAudioRecorder
- Implementing Twitter and Facebook into an app
- Facebook and Twitter Integration using SLRequest
VII. Methods of Instruction
- Hands-on demonstrations
- Group and individual projects
- Class discussion
Course may be taught as face-to-face, hybrid or online course.
VIII. Course Practices Required
Course may be taught as face-to-face, media-based, hybrid or online.
IX. Instructional Materials
X. Methods of Evaluating Student Progress
XI. Other Course Information
If you have a documented learning, psychological, or physical disability you may be entitled to reasonable academic accommodations or services. To request accommodations or services, contact the Access and Disability Resource Center at the Des Plaines or Skokie campus. All students are expected to fulfill essential course requirements. The College will not waive any essential skill or requirement of a course or degree program.
Oakton Community College is committed to maintaining a campus environment emphasizing the dignity and worth of all members of the community, and complies with all federal and state Title IX requirements.
Resources and support for
- pregnancy-related and parenting accommodations; and
- victims of sexual misconduct
Resources and support for LGBTQ+ students can be found at www.oakton.edu/lgbtq.
Electronic video and/or audio recording is not permitted during class unless the student obtains written permission from the instructor. In cases where recordings are allowed, such content is restricted to personal use only. Any distribution of such recordings is strictly prohibited. Personal use is defined as use by an individual student for the purpose of studying or completing course assignments.
For students who have been approved for audio and/or video recording of lectures and other classroom activities as a reasonable accommodation by Oakton’s Access Disabilities Resource Center (ADRC), applicable federal law requires instructors to permit those recordings. Such recordings are also limited to personal use. Any distribution of such recordings is strictly prohibited.
Violation of this policy will result in disciplinary action through the Code of Student Conduct.