Class overview :
The emphasis on this course is on programming. The course commences with a detailed overivew of Objective-C 2.0 and the Foundation Framework. The early GUI examples are developed programmatically, outside of Interface Builder so as to provide a feel for the framework and its constituent parts, and an understanding of serialisation.
Class goals :
As well as developing proficiency in working with XCode and Interface Builder attendees will learn how to design effective event driven user interface based applications including:
- Implementing code for drawing and animation
- Laying out and managing user interface widgets such as buttons, text fields, sliders and scoll bars
- Kanipulate table views
- Persist (save) application state and user data
- Connect to interface objects both by using Interface Builder and by direct programming
Content of Cocoa Programming
Basic Concepts of Object-Oriented Analysis and Design
Overview of the Cocoa framework architecture
Mastering the XCode IDE (Integrated Development Environment)
- creating and building projects
- running and debugging applications
- working with the class and documentation browsers
Intensive overview of ObjectiveC
- dynamic typing
- dynamic binding
- dynamic loading
The Runtime System
- dynamic method lookup
- resolution of unmatched selectors
- message forwarding
Dynamic Properties
- use of @property to declare accessor methods
- use of @synthesize to synthesize accessor methods
Categories and Protocols
Foundation Framework
- delegation
- key-value coding
- mutable subclasses
Files and URLs
- storage and retrieval of filesystems and web data
Memory Management
- reference counting
- garbage collection
- autorelease pools
Property lists and Key-Value pair coding idioms
Application Class and the App Delegate
- window server and the main event loop
- managing main window and key window status
- methods implemented by the delegate
- application configuration
Windows and Panels
- Writing code to create and manage windows
- window delegate methods
Menus and Submenus
- creating and modifying
- adding and removing menu items dynamically
Views and Responders
- handling mouse and keyboard events
- drawing to the screen
- View hierarchies
- implementing custom drawing functionality
Animation
- the core animation layers
- layer backed views
- custom animation
Controls and cells
- action methods and the targe-action idiom
- grid layout of buttons and text fields
String – object conversion
Formatters
- built in formatter classes
- creating custom formatter classes
Understanding object oriented patterns
- Model View Controller pattern
- Composite pattern
- Visitor pattern
Cocoa bindings
- model-view synchronisation
- the key-value observing protocol
- NSController hierarchy
- NSEditor hierarchy
- customising binding behaviour
Data persistence and object-relational mappings
- data modeling
- persistence stores
Text handling
- rich text formats
- cutting, copying, pasting
Data sources and Table Views
Interface Builder
- .nib and .xib files
- archiving and unarchiving of objects
- file ownership
- outlets and actions
- NSBundle
- dynamic loading of .nib files
Storage and retrieval of user settings
Onze voordelen :
- Type of training: Inter-company, intra-company and individual
- 100% flexible & personalised training : You choose the place, the dates and the training program
- Offer request : Response within 24 hours
- 50% discount for SME’s from Brussels-Capital Region
- Free parking, lunch & drinks
- Free use of our Digital Competence Centre: Manuals, courses, exercises, …