COSC346

Object-Oriented Programming

COSC346 Lectures

Date Title Reading Example code
1

Tuesday

Jul 11th

Course overview

Budd, 2002

  • Ch.1 - Thinking Object-Oriented

Mac Technology Overview, Apple Inc.

Hillegass et al., 2015.

  • Introduction

Xcode Overview

    2

    Thursday

    Jul 13th

    Introduction to Swift

    The Swift Programming Language

    Hillegass et al., 2015.

    • Swift Types
      3

      Tuesday

      Jul 18th

      Classes and objects

      Budd, 2002

      • Ch.3 - Classes, Objects, and Methods

      The Swift Programming Language

        4

        Thursday

        Jul 20th

        Working with objects

        The Swift Programming Language

        Budd, 2002

        • Ch.5.6 - Constructors
        • Ch.5.7 - Destructors
          5

          Tuesday

          Jul 25th

          Inheritance I
            6

            Thursday

            Jul 27th

            Inheritance II
              7

              Tuesday

              Aug 1st

              Polymorphism
                8

                Thursday

                Aug 3rd

                Memory management
                  9

                  Tuesday

                  Aug 8th

                  Object interconnections
                    10

                    Thursday

                    Aug 10th

                    Swift Libraries
                      11

                      Tuesday

                      Aug 15th

                      Object oriented design
                        12

                        Thursday

                        Aug 17th

                        Object oriented design patterns
                          13

                          Tuesday

                          Aug 22nd

                          OOP review
                            14

                            Thursday

                            Aug 24th

                            Introduction to UI
                              Study break
                              Assignment 1 due, Monday, Sep 4th
                              15

                              Tuesday

                              Sep 5th

                              Application programming on the Mac

                              Screencast showing a basic timer being built.

                              Timer (Basic) Xcode project (ZIP)

                              16

                              Thursday

                              Sep 7th

                              Model View Controller

                              Screencast showing an MVC timer being built.

                              Timer (MVC) Xcode project (ZIP)

                              17

                              Tuesday

                              Sep 12th

                              Cocoa: Windows and Views

                              View frame/bounds Xcode project (ZIP)

                              18

                              Thursday

                              Sep 14th

                              Cocoa: Multiple windows

                              Screencast showing a multi-window timer being built.

                              Timer (multi-window) Xcode project (ZIP)

                              19

                              Tuesday

                              Sep 19th

                              Cocoa: Mouse and Keyboard Events

                              Screencast showing a timer that uses the first responder being built.

                              20

                              Thursday

                              Sep 21st

                              Cocoa: Bindings

                              Screencast showing a timer that uses KVO bindings being built.

                              Timer (bindings) Xcode project (ZIP)

                              21

                              Tuesday

                              Sep 26th

                              Cocoa: Controllers and Undo

                              22

                              Thursday

                              Sep 28th

                              Cocoa: Preferences

                              Screencast showing a timer that provides preferences being built.

                              Timer (Preferences) Xcode project (ZIP)

                              23

                              Tuesday

                              Oct 3rd

                              UI design
                                24

                                Thursday

                                Oct 5th

                                Usability and visual design
                                  Assignment 2 due, Friday, Oct 6th
                                  25

                                  Tuesday

                                  Oct 10th

                                  UI review
                                    26

                                    Thursday

                                    Oct 12th

                                    TBC


                                      Last updated:  2nd Oct 2017   11:58