Training


Introduction to Objective-C Programming

for iPhone & iPad App Development


3 days, $1,895.00



Overview
This course is designed for beginner or novice programmers as well as for programmers new to the Objective-C programming language. Topics covered will include both the general theoretical concepts of programming - with a focus on Object Oriented programming - as well as the specifics of Objective-C's code-syntax. An in-depth exploration of Xcode - Apple's IDE for developing iOS Apps - will also be an integral part of this class as students use it to write a myriad of programs that demonstrate the concepts being taught.
Students will gain a solid foundation and understanding of how Objective-C works, a strong familiarity of working with Xcode, and be ready to start learning iPhone and iPad App development.


Course Pre-requisites

  • None. Some programming experience is helpful but isn't mandatory.
  • Students may bring their own laptops if they wish.

Course Agenda

  • Learning to program with variables, primitives, conditionals, loops, and using other building blocks of programming
  • Understanding of and working with Collection Objects such as NSArrays, NSDictionaries, and NSSets; use of Fast Enumeration.
  • Creating and using custom user-defined Classes
  • Object-Oriented messaging, Inheritance, Polymorphism, Dynamic Binding and Dynamic Typing
  • In-Depth exploration of the Foundation Framework's classes and data structures.

Course Outline

I. Working with Variables and Data Types
• Writing and Running basic programs
• Working with the Console
• Integers
• Floats
• Doubles
• Booleans
• Chars
• NSString


II. Arithmetics and Expressions
• Addition, Subtraction, Multiplication, Division, Modulus
• Precedence of Operators
• Type conversions through mixed operations
• Type-casting
• Assignment and Comparison operators
• Intro to Math Library functions


III. LOOPS - Automatic Repetition
• The For loop
• The While loop
• The Do-While loop
• The Break statement
• The Continue statement
• Nested Loops


IV. CONDITIONALS and DECISION MAKING
• The If statement
• The If-Else statement
• The If-Else-If statement
• Nested Conditionals
• Compound Relationals
• Boolean Variables
• The Switch Statement


V. CUSTOM CLASSES
• Creating custom Classes - using @interface
• Implementing custom classes - using @implementation
• Creating Instance Variables
• Creating Instance Methods
• Understanding Getters & Setters
• Instantiating Objects from Classes
• Executing and Messaging Methods onto Objects
• Using Self
• Declaring Properties and synthesizing Accessor methods


VI. UNDERSTANDING INHERITANCE
• Root Class, Super-class, Subclass
• Sharing Variables and Methods through Inheritance
• Locating Methods in Classes
• Class Extention through Inheritance
• Overriding Methods
• Using Super
• Class and Object Ownership
• Memory Allocation
• Variable Scope


VII. POLYMORPHISM, DYNAMIC BINDING & TYPING
• Reusing method names in different classes
• Runtime Dynamic Typing and Binding
• Static Typing
• Runtime Querying of Objects and Classes
• The ID type


VIII. THE FOUNDATION FRAMEWORK
• Number Objects
• String Objects
• Array Objects
• Dictionary Objects
• Set Objects
• Number Objects


IX. WORKING WITH THE FILE SYSTEM
• The NSFileManager
• Working with Directories
• Reading, writing and copying files.
• Working with NSData
• File-Paths and NSURL


X. INTRODUCTION TO COCOA TOUCH & iPHONE APP DEVELOPMENT
• Creating the first iPhone App: "Hello World"
• Working with Interface Builder
• Creating GUI's
• Using ViewControllers
• Overview of the View Lifecycle
• About IBOutlets and IBActions
• Creating the second iPhone App: going interactive



Note: The above outline describes topics typically covered in our introduction class. We'll be happy to customize this class to your specific needs and requirements should you wish. Simply contact us and let us know how exactly we can help.

 

 

Follow-Up Class:

iPhone & iPad App Development

Our Courses



iOS6 HTML5 CSS3 jQuery
Javascript AJAX Objective C PHP

Location:


map

Contact:


925 S 10th St.
Philadelphia, PA 94110
T: 267.934.5091
‚Äč
info@snappdecisions.com

Connect with Us:


linkedinfacebooktwitter