Cocoa Programming
Course
In Carshalton
Description
-
Type
Course
-
Location
Carshalton
-
Duration
5 Days
Objective: The emphasis of this course is on programming. The course commences with a detailed overview of Objective C 2.0 and the Foundation Framework. The early GUI examples are devloped programmatically, outside of Interface Builder, so as to provide a fell for the framework and its constituent parts, as well as an understanding of serialisation. 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. Suitable for: The course is for those who already know Objective C and have worked with Apple's XCode IDE. The course will be useful to a wide range of interests related to. iPhone applications development. MAC OSX applications development. iPad and iPod application development.
Facilities
Location
Start date
Start date
Reviews
Course programme
Objective: The emphasis of this course is on programming. The course commences with a detailed overview of Objective C 2.0 and the Foundation Framework. The early GUI examples are devloped programmatically, outside of Interface Builder, so as to provide a fell for the framework and its constituent parts, as well as an understanding of serialisation. 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 interace widgets such as buttons, text fields, sliders and scroll bars
- manipulating table view
- persisting(saving)application state and user data
- connecting to interface objects by using Interface Builder and by direct programming
The course is for those who already know Objective C and have worked with Apple's XCode IDE
The course will be useful to a wide range of interests related to
- iPhone applications development
- MAC OSX applications development
- iPad and iPod application development
The purpose of this course is to
- provide a complete grounding in Cocoa application development.
- a good introduction to user interface design and implementation
- a foundation for multi-media application develoment for MAC OSX
- Overview of object oriented concepts, analysis and design
- Overview of the XCode IDE
- Creating and building projects
- Running and debugging applications
- Working with the class and document browsers
- The Runtime System
- Dynamic typing
- Dynamic binding
- Dynamic loading
- Dynamic Properties
- Use declare accessor methods
- Use synthesize accessor methods
- Sending messages
- Categories and Protocols
- The Foundation Framework
- Delegation
- Key-value coding
- Mutable subclasses
- Introspection
- Testing for methods
- Class membership
- Inspecting classes and protocols
- Storage and retrieval of filesystem and web data
- Serialisation
- Arhiving
- Encoder
- Property lists
- XML
- Copying objects
- Near and far
- Notification
- Deferred messages
- KV observing
- Distributed objects
- Other processes
- Ports
- Pipes
- File streams
- Reference counting
- Garbage collection
- Autorelease pools
- Exceptions
- Assertions
- Errors
- Threads
- Application Class and the App Delegate
- Window server and the main event loop
- Managing the main windows and key window status
- Methods implemented by the delegate
- Application configuration
- Windows and Panels
- Writing code to create and manage windows
- Windows delegate methods
- File panel
- Colour chooser
- 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 target-action idiom
- Grid layout of buttons and text fields
- Built in formatter classes
- Creating custom formatter classes
- Model View Controller (MVC)pattern
- Collection patterns
- Delegation pattern
- Provider - Subscriber pattern
- Subject - Observer pattern
- Composite pattern
- Visitor pattern
- Lazy initialisation pattern
- Factory pattern
- Singleton 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 modelling
- Persistence stores
- Text Handling
- Rich text format
- 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
- Application preferences
- Designing with nil
- Runtime
- Packages and bundles
- Process defaults
- Bundle structure(applications, frameworks, plugins, documents
- Version control - SVN
- Building and debugging
- Performance analysis
- Class modelling and Model Driven Architecture (MDA)
- Unit testing
- Customising XCode
Cocoa Programming