Feb 20, 2020  
2019 - 2020 Cowley College Academic Catalog 
2019 - 2020 Cowley College Academic Catalog



3 Credit Hours

Student Level:  

This course is open to students on the college level in either the Freshman or Sophomore year.

Catalog Description:

CIS1768 - iOS App Development 2 (3 hrs.)

This course will prepare students to code apps with extended features for the iOS operating system.  The topics will include stack views, UI Navigation Controller, camera, application states, size classes, touch events, UI Responder, UI Gesture Recognizer, UI Menu Controller, web services, collection views, core data and accessibility.

Course Classification:






Controlling Purpose:

This course is designed to prepare students to code apps with extended features on the iOS operating system.  These concepts provide a foundation for further courses in iOS app development as well as creating midsize apps for use in industry.

Learner Outcomes:

Upon completion of the course, the student will be able to code apps including the following topics: stack views, UI Navigation Controller, camera, application states, size classes, touch events, UI Responder, UI Gesture Recognizer, UI Menu Controller, web services, collection views, core data and accessibility.

Unit Outcomes for Criterion Based Evaluation:

The following outline defines the minimum core content not including the final examination period.  Instructors may add other material as time allows.

UNIT 1: Stack Views

Outcomes: Demonstrate knowledge of how to use different techniques for passing control between different view controllers

  • Use UI Stack View
  • Implement segues that allows navigation between view controllers
  • Use U IView Controllers to bring in data to a view
  • Pass data between views

UNIT 2:  UI Navigation Controller

Outcomes: Demonstrate the knowledge necessary to use the UI Navigation Controller to simplify the changing of views in an app

  • Describe the role of the UI Navigation Controller
  • Navigate with UI Navigation Controller
  • Cause views to appear and disappear
  • Dismiss the keyboard
  • Use the UI Navigation Bar

UNIT 3: Camera

Outcomes: Explain how to use the camera capabilities on an iOS device to incorporate pictures in an app

  • Display images and use UI Image View
  • Take pictures and use UI Image Picker Controller
  • Create an Image Store
  • Give View Controllers access to the image store
  • Create and use keys
  • Implement an Image Store

UNIT 4: Saving, Loading, and Application States

Outcomes: Describe how an app can save the current state of the application

  • Archive an object
  • Construct a file URL
  • Use the NS Keyed Archiver and NS Keyed Unarchiver
  • Implement application states and transitions
  • Write to the file system with data
  • Use error handling

UNIT 5:  Size Classes, Touch Events, and UI Responder

Outcomes: Describe the techniques of controller elements given different screen sizes, how to handle touch events with code and the UI Responder

  • Modify traits for a specific size class
  • Implement touch events
  • Create a line struct
  • Turn touches into lines
  • Implement the UI Responder

UNIT 6: UI Gesture Recognizer and UI Menu Controller

Outcomes: Describe how to write apps that are controlled by different gestures and use menus to organize an app

  • Describe UI Gesture Recognizer subclasses
  • Detect taps with UI Tap Gesture Recognizer
  • Use multiple gesture recognizers
  • Implement the UI Menu Controller
  • Discuss the other states of UI Gesture Recognizer

UNIT 7:  Web Services

Outcomes: Use various external sites and services to enhance an iOS app including Flickr, JSON data, and image data

  • Create an interface to bring photos in from FlickR
  • Parse JSON data
  • Download and display the image data
  • Implement background threads

UNIT 8:  Collection Views

Outcomes: Explain how to implement a collection view of images

  • Display a grid
  • Implement a data source for images
  • Download image data from a collection view
  • Navigate to a photo

UNIT 9:  Core Data

Outcomes: Explain how to use core data to enhance the performance of an app by proper handling of objects

  • Describe and use object data
  • Use entities
  • Implement the Core Data stack
  • Update items and the data source
  • Define relationships
  • Add tags to the interface
  • Manage background tasks

UNIT 10:  Accessibility

Outcomes: Explain how to implement the voiceover service in an app

  • Define accessibility issues
  • Implement voiceover in an app

Projects Required:

Varies, refer to syllabus.


Contact Bookstore for current textbook.

Materials/Equipment Required:


Attendance Policy:

Students should adhere to the attendance policy outlined by the instructor in the course syllabus.

Grading Policy:

The grading policy will be outlined by the instructor in the course syllabus.

Maximum class size:

Based on classroom occupancy

Course Time Frame:

The U.S. Department of Education, Higher Learning Commission and the Kansas Board of Regents define credit hour and have specific regulations that the college must follow when developing, teaching and assessing the educational aspects of the college.  A credit hour is an amount of work represented in intended learning outcomes and verified by evidence of student achievement that is an institutionally-established equivalency that reasonably approximates not less than one hour of classroom or direct faculty instruction and a minimum of two hours of out-of-class student work for approximately fifteen weeks for one semester hour of credit or an equivalent amount of work over a different amount of time.  The number of semester hours of credit allowed for each distance education or blended hybrid courses shall be assigned by the college based on the amount of time needed to achieve the same course outcomes in a purely face-to-face format.

Refer to the following policies:

402.00 Academic Code of Conduct

263.00 Student Appeal of Course Grades

403.00 Student Code of Conduct

Disability Services Program:

Cowley College, in recognition of state and federal laws, will accommodate a student with a documented disability.  If a student has a disability which may impact work in this class and which requires accommodations, contact the Disability Services Coordinator.