The Objective C Programming Language
Special Notices
This course is currently in development therefore the outline is subject to change
Overview
Understanding Objective-C from the ground up is the aim of this course. Starting with the basics it builds to give you a good knowledge of the key language elements used to write iOS and Mac OSX applications.
Jumping straight in to learning iOS or OSX app programming without understanding the fundamentals of Objective-C first can be a challenge to even the most experienced developers. With all of the framework libraries, tools an techniques involved there is simply too much to learn on top of learning the language.
This course will give you a good understanding of Objective-C first…
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
Special Notices
This course is currently in development therefore the outline is subject to change
Overview
Understanding Objective-C from the ground up is the aim of this course. Starting with the basics it builds to give you a good knowledge of the key language elements used to write iOS and Mac OSX applications.
Jumping straight in to learning iOS or OSX app programming without understanding the fundamentals of Objective-C first can be a challenge to even the most experienced developers. With all of the framework libraries, tools an techniques involved there is simply too much to learn on top of learning the language.
This course will give you a good understanding of Objective-C first and will lead you naturally into app development where you can focus on the key frameworks, techniques and tools used to develop apps for those platforms.
Prerequisites
Delegates for this course need to be competent programmers in another programming language and have an understanding of object oriented programming principals.
Course Outline.
Module 1 – Introducing Objective-C
- A bit of history
- Overview of Objective-C
- XCode Overview
- Anatomy of an Objective-C application
Module 2 – Data Types
- Scalar and Object Types
- Declaring and using variables
- Working with pointers
- Constants and enumerations
Module 3 – Core Language Elements
- Math and Logic operations
- Making decisions
- Loops and iteration
Module 4 – Classes and Objects
- Defining classes
- Adding class variables
- Controlling access to class data
- Creating and calling methods
- Working with objects
Module 5 – Properties
- Overview of properties
- Creating properties
- Controlling property access
- Property attributes
- Custom properties
- Key value coding
Module 6 – Understanding memory management
- Memory management overview
- Reference counting explained
- Manual retain release (MRR)
- Automatic reference counting (ARC)
- Configuring and migrating to ARC
Module 7 – Using Inheritance and Polymorphism
- OO Concepts
- Inheritance in Objective-C
- Method overriding
- Working with generic objects
- Polymorphism
- Objective-C and the dynamic runtime
- Message forwarding
Module 8 – Extending classes with protocols and categories
- Defining contracts with protocols
- Implementing a protocol
- Events sources and delegation
- Selectors and callbacks
- Extending existing classes with Categories
Module 9 – Functions and Blocks
- Working with C Functions
- Programming with Blocks
Module 10 – Working with key framework classes
- NSString
- NSMutableString
- NSArray
- NSMutableArray
- NSDictionary
- NSMutableDictionary
Module 11 – Bringing it all together
- Overview of an iPhone app
- Views and View Controllers
- Understanding table views
- Populating a table view
- The final project
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
