Cocoa I Bootcamp

If you need to learn to develop applications for Mac OS X, Cocoa I Bootcamp is the absolute best Cocoa training available. The class is intensive, and you should be prepared to work hard. We are using Mac OS X Mavericks and Xcode 5. This course can be taught at your company site. We have taught it for Apple, Intuit, Google, AutoDesk, and many other smaller companies.

UPCOMING CLASSES

Date Course Instructor Total Price Status

Atlanta, Georgia

Jul 21 -
Jul 25
Instructor(s): Preble
$ 3,700

What You'll Learn

Upon completion of Cocoa I Bootcamp, the student will be able to:

  • Write complex applications for Mac OS X
  • Demonstrate fluency in Objective-C
  • Master Interface Builder and Xcode
  • Find and understand the online documentation
  • Demonstrate experience with the most common classes in the frameworks
  • Understand the design patterns used in Cocoa
  • Recognize several common idioms of the Cocoa community

Cocoa I Bootcamp SYLLABUS

Section Content
Cocoa I BootcampOpen
Why am I here?
An introduction to Cocoa, the instructor, and the course.
Get started
Build a simple app. Discuss tools, frameworks, and workflow.
Objective-C
Master the Objective-C language in two hours.
Controls
Use the target/action design pattern.
Helper Objects
Use the delegation design pattern.
Controller and Bindings
Use bindings to eliminate a lot of glue code.
Toward a Deeper Understanding of Bindings
A series of experiments that explain what bindings are and how they work.
Core Data
Use CoreData with bindings to create full-featured applications easily.
Undo
Allow your users to undo and redo their edits.
Archiving
Serialize and deserialize object graphs using keyed archiving.
Nib Files and NSWindowController
Discover what "File's Owner" really means.
User defaults
Save and use preferences
Using Notifications
Register for notifications. Post notifications. Handle notifications.
Alerts
Make the user confirm their choices with an alert panel.
Localization Internationalization
Prepare your application for the global marketplace.
Custom views
Do custom drawing. Learn to save your view as a PDF.
Images and Mouse events
Make your custom view deal with mouse events, images, and the open panel.
Responders and Keyboard events
Make your custom view deal with keyboard events.
Fonts and Attributed strings
Draw character strings in your custom view and understand how Mac OS X deals with rich text.
Pasteboards and nil-targeted Actions
Implement copy, cut, and paste. Understand how to take advantage of the responder chain.
Categories
Add a method to an existing class without subclassing.
Drag and Drop
Add drag and drop to your custom views.
NSTimer
Create and use timers.
Sheets
Display sheets on your application's windows.
Formatters
Format a character string and convert it to an object with a custom formatter subclass.
OpenGL and Cocoa
Create and manipulate 3-D views in your Cocoa app.
Processes
Create Unix processes and communicate with them from a Cocoa application.
iOS SDK
A brief introduction to the iOS SDK. This will be the first step in transferring your knowledge of Cocoa to the iPhone or iPad.
Core Animation
Learn to use CALayer for animation and custom interfaces.
Web Services
Use NSURLConnection and NSXMLParser to interact with web services.
Table Views
Use cell- and view-based table views to display data.
Memory Management
Learn to manage your application's memory using ARC and retain counts.
Core Data Relationships
Use Core Data to create more sophisticated object graphs using relationships.
Blocks
Use blocks to make your code more powerful and easier to maintain.
Concurrency
Learn the basics of multithreading in Cocoa.
Instruments
Learn how Instruments can help with analyzing performance and memory issues in your application.
Debugging
Get familiar with the Xcode's graphical debugger as well as the lldb console.
Application Architecture
Learn how to use Model-View-Controller to structure a complex, maintainable Cocoa application.

Requirements

The class assumes that the student already knows an object-oriented language like Java or C++. Students are not expected to have any experience programming Macs before.

IMPORTANT TELEPHONE NUMBERS

For information or to enroll in a class in United States: (770) 817-6373