0.5-5 Day(s)


Starting the process of learning to be a developer can be a daunting task. Many tutorials and courses always assume some form of prior knowledge about C, Objective C and Object Orientated Programming. This course is the best way to make a start from scratch at learning to develop Apps using Apple's developer tools. No knowledge is assumed, and you will be guided through the basics needed to get started in developing for the most popular mobile platform - including iPhone, iPad and iPod Touch. You will be introduced to the fundamentals of programming, and start learning basics including C, Objective C, and XCode. You will also be using the latest development techniques like storyboard, which are designed at simplifying the process of making apps and reducing the amount of code you need to write


This course is designed for people with no experience in coding, and would like to get started in learning to create apps for iOS. This ideally suited for people from non coding backgrounds, like print, design, and even web developers

Skills Gained

  • basic knowledge of programming concepts and software design,
  • fundamentals of C needed for iOS developing
  • basic introduction to Objective C, Object Orientated Programming and MVC
  • XCode for coding, testing and building your apps
  • Storyboard and Interface Builder
  • design and creating simple apps using basic iOS user interfaces


There is no assumed knowledge in the subject

Course Specifics

Course Outline

Programming fundamentals

  • what is programming?
  • languages and common features
  • basic syntax and grammar
  • the design and flow of computer software >
  • memory and variables - storing data
  • data types and casting
  • logic and conditionals - making decisions
  • arrays - lists of information
  • loops - walking through lists of data
  • functions - sets of instructions
  • declarations and header files


  • basic introduction to XCode
  • tour of the user interface, and some basic shortcuts
  • new projects and new files
  • groups
  • building your app
  • Introduction to C for iOS
  • what is the C Language?
  • libraries and frameworks
  • printing information from memory
  • things apple will use in iOS:
  • type definitions
  • structures
  • enumerators
  • macros

Object Orientated Programming

  • what is OOP ?
  • what is an object?
  • properties
  • methods
  • classes and instances
  • abstraction
  • encapsulation
  • inheritance
  • polymorphism
  • Model View Control
  • what is MCV and how does it work?
  • the role of MVC in iOS development

Objective C

  • what is Objective C?
  • introduction to Foundation
  • Objective C basics
  • NSObject
  • NSString
  • NSLog
  • Lists in objective C:
  • NSArray, NSDictionary, NSSet
  • Mutable and Immutable objects
  • The role of logging and how it differs to printing >
  • creating objects and memory:
  • allocating and initialising
  • retain, release, autorelease
  • using Automatic Retain Count
  • building your first object:
  • headers and interfaces:
  • instance variables - IVARS
  • public and private variables
  • getter and setter methods
  • creating properties without getter and setters >
  • declaring methods
  • implementation files:
  • synthesizing variables
  • implementing methods
  • overriding basic methods:
  • init
  • dealloc
  • private headers
  • categories and pragma
  • using properties with and without dot syntax >
  • sending messages with methods
  • using returned data

Building your first iOS app

  • fundamentals of UIKit
  • simple user interface objects
  • Views and controllers
  • Application delegate, view controller and user interface >
  • View Controllers
  • what is a view controller for?
  • finding out when views load and unload from screen >
  • memory warnings
  • Interface Builder and Storyboards
  • outlets for controlling objects
  • actions for sending messages
  • storyboards and NIBS
  • segues

Ways of presenting Views and basic

app designs

  • single view apps
  • modal views
  • popover views
  • navigation controllers
  • tab-bar controllers

Sending messages between controllers

  • protocols and delegation
  • notifications
  • Modal Views
  • presentation and transition style
  • sending data back and forth
  • dismissing

Navigation Controllers

  • how they work
  • pushing and popping view controllers
  • navigation items
  • title and buttons
  • toolbars
  • overview of TabBar Controllers

Table Views

  • creating static tables in storyboards
  • dynamic tables using datasource
  • responding to clicked cells using delegation >

Other Subjects

  • simple animation
  • working with images
  • storing data using property lists

Thinking about Onsite?

If you need training for 3 or more people, you should ask us about onsite training. Putting aside the obvious location benefit, content can be customised to better meet your business objectives and more can be covered than in a public classroom. It's a cost effective option.

Submit an enquiry from any page on this site, and let us know you are interested in the requirements box, or simply mention it when we contact you.

Upcoming Dates

Course Location Days Cost Date
5 1995 £1995 2018-09-12
3 745 £745 2017-11-15
3 745 £745 2017-10-18
3 745 £745 2017-09-20
1 1995 £1995 2017-09-18