iOS Media App and Game Development

IGME-590

Course Outline

Below is an outline of the course, broken down by week. See mycourses for official due dates and dropboxes.

Week 1 (8/24 - 8/28)

Topics

  • Intro to Course
  • Intro to Xcode
  • Intro Swift:
  • Intro to Playgrounds

Assignments

  • SG-1 (Chapter 1 & 2 - ABC_HelloWorld App)
  • Hello RIT parts 1 & 2
  • Intro to Swift Video HW

Links

Week 2 (8/31 - 9/4)

Topics

  • Storyboards
  • More Swift:
    • Tuples
    • Optionals and Unwrapping
    • Collection classes: Dictionary & Array discussed in SG-2
    • Functions
    • Random Numbers
    • Loading files
    • Playing sound with AVAudioPlayer
    • NSError
  • Installing an App onto iOS hardware

Demos

  • iNoying
  • iNoying2 - making it "bulletproof" with optionals and NSError

Assignments

  • SG-2 (Chapter 3 - ABC_TipCalculator App)
  • Technobabble take-home practical

Links

Week 3 (9/7 - 9/11)

(Monday 9/7 - Labor Day - no classes)

Topics

  • MVC - Model-View-Controller
  • Creating a Model Class:
    • Properties
    • Initializers
    • Methods
  • Application Lifecycle & the App Delegate
  • Notifications with NSNotificationCenter
  • Saving app state with NSUserDefaults
  • Auto Layout - setting constraints and previewing
  • Commenting your code with //MARK: //TODO: and //FIXME:

Demos

  • CountR
  • CountR plus Model

Assignments

  • SG-3 (Chapter 5 - Passport App)
  • SG-Apple Design Video
  • HW - Technobabble with model class and state saving

Links

Week 4 (9/14 - 9/18)

Topics

  • App Design Process
  • Multi-screened apps
  • Navigation Controller
  • Table Views

Assignments

Links

Week 5 (9/21 - 9/25)

Topics

  • UITableView and UITableViewController
  • Delegation and DataSource Patterns
  • A model class for your app's data
  • Singelton Design Pattern
  • Custom Notifications

Assignments

  • Chapter 8 - Maps and Location
  • Chapter 9 - Camera, Photos, and Social Networks
  • Work on Project 1

Links

Week 6 (9/28 - 10/2)

Topics

  • Getting a screenshot of a view
  • Saving/Reading files & the iOS Documents Folder
  • Swift Extensions and Computed Properties

Assignments

  • Work on Project 1

Links

Week 7 (10/5 - 10/9)

Topics

  • UIAppearance
  • NSURLConnection

Assignments

  • Last.fm Web Service HW
  • Music Finder App Design HW
  • Data Downloader HW

Links

UIAppearance
Downloading Data

Week 8 (10/12 - 10/16)

(Monday 10/12 - No classes - Columbus Day) (Tuesday 10/13 follows Monday schedule)

Topics

  • Parsing a web service
  • UISearchBar
  • Thursday 3/19 - Midterm Written Exam

Assignments

  • ...

Links

  • ...

Week 9 (10/19 - 10/23)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 10 (10/26 - 10/30)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 11 (11/2 - 11/6)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 12 (11/9 - 11/13)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 13 (11/16 - 11/20)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 14 (11/23-11/24)

(Class only meets Monday 11/23 - Thanksgiving Break Week)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 15 (11/30 - 12/4)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Week 16 (12/7 - 12/11)

Topics

  • ...

Assignments

  • ...

Links

  • ...

Finals Week (Monday 12/14 - Friday 12/18)

You will present your final projects during finals week: Time/Date TBA