CS 157: iOS Programming I

Citrus College Course Outline of Record

Citrus College Course Outline of Record
Heading Value
Effective Term: Fall 2021
Credits: 3
Lecture Hours : 54
Lab Hours: 0
Hours Arranged: 0
Prerequisite: CS 111.
Transferable to CSU: Yes
Transferable to UC: Yes - Approved
Grading Method: Standard Letter

Catalog Course Description

Introduction to iOS programming using Apple's Swift programming language. Students will learn to develop applications that can be run on Apple's iPhone, iPads, Apple Watch and the Apple TV. Students will use the Xcode IDE to develop iOS Apps. 54 lecture hours.

Course Objectives

  • Learn the basic aspects of the Swift programming language.
  • Understand how to create classes and how to instantiate objects from those classes.
  • Use selection structures to navigate decisions in the context of app development.
  • Use repetition structures to navigate loops in the context of app development.
  • Build simple mobile apps.
  • Learn how to use the Xcode development software.
  • Provision your iOS device to execute code based on the Xcode integrated development environment.
  • Exhaustively look at the Xcode IDE (integrated development environment) to understand the usage of the interface builder, simulator and organizer for the pursuit of accurate and rapid code development.
  • Understand the usage of logical and arithmetic operators such as AND, OR, XOR, NAND, NOT and modulus.
  • Understand the usage of View for the placement of various items such as buttons, labels, text boxes, switches, image views, etc.

Major Course Content

  1. Software development via the Xcode development environment.
  2. Understand the basics of the Swift programming language in the context of app development.
  3. Understand the usage of Swift selections structures in the context of app development.
  4. Understand the usage of Swift repetition structures in the context of app development.
  5. Create methods that return values of various data types.
  6. Create methods that receive arguments by reference or by value.
  7. iPhone, iPad and universal apps.
  8. Using Interface Builder
  9. Using the Simulator
  10. Using the Organizer
  11. Working with Strings
  12. Using the Xcode Debugger
  13. Working with numeric data types
  14. Collections - Arrays
  15. Collections - Dictionaries
  16. Working with View Controllers
  17. Working with Views
  18. Working with Data Management
  19. Storyboards

Suggested Reading Other Than Required Textbook

The student will visit several programming online websites in order to analyze documentation about object oriented programming languages.

Examples of Required Writing Assignments

The student will create a flowchart and pseudocode before implementing the programming code for any given assignment.

Examples of Outside Assignments

Students will be required to complete the following types of assignments outside of the regular class time:
- Study course concepts
- Answer various programming questions
- Practice skills (i.e., writing programs and creating flowcharts).
- Read required materials.
- Solve programming problems
- Create programs that apply Object-Oriented programming techniques.

Instruction Type(s)

Lecture, Online Education Lecture

IGETC Area 2: Mathematical Concepts and Quantitative Reasoning