Mobile App Development IGME-590

Course Topics

Course Outline by Topic

  • Software Design Patterns
    • Interface v. Implementation
    • Target-Action
    • MVC
    • Notifications
    • Delegation and Protocols (Dynamic Dispatch)
    • Inheritance
    • Composition
    • Separation of Concern
    • Singleton
    • Categories
    • Message Sending - receiver/message/arguments
    • Call-by-prefix (property generation)
  • Mobile App Design
    • Design Process
    • Application Definition Statement
  • Navigation
    • Drill Down
    • Tab Bar
    • iPad Split View
    • iPad Collection View
  • C Language Features and Concepts
    • Main Method
    • Variables, Scope, and Data Types
    • C arrays
    • C structs
    • Writing C Functions
    • Compiler Build Phases
    • Pre-processor
    • linking
    • Heap and Stack
    • Pointers
    • Passing By Reference v. By Value
    • Math Functions
    • stdlib.h
    • pre-defined macros: __FUNCTION__ , __FILE__
    • #include, #import, #pragma, #define
    • functions v. macros v. inline C functions
  • Objective-C Language Features and Concepts
    • Classes
    • Initializers
    • ivars
    • Properties
    • Methods
    • Delegates and Protocols
    • Categories
    • Class Continuations
    • C Blocks
  • Foundation Classes
    • NSString & NSMutableString
    • NSArray & NSMutableArray
    • NSDictionary & NSMutableDictionary
    • NSDate
    • Objective-C Literals
    • Objective-C 2.0 Enumeration
  • Cocoa Touch
    • Application Delegate - application lifecycle
    • UIView and its subclasses
  • Other iOS Frameworks
  • Debugging
  • Testing - Unit Testing - SenTestKit Framework
  • Profiling with Instruments
    • Core Animation Tool
    • Leaks Tool
  • Case Studies
    • CountR & Technobabble Generator
      Concepts explored:
      • Interface Builder
      • Target-Action
      • View Controllers
      • Writing Methods
      • Calling Methods on Foundation classes
    • Acey Ducey
      Concepts explored:
      • Custom Classes
      • Images
    • ...