Training » iOS Courses » Intro for Beginners » iOS Development for Beginners

iOS Development for Beginners

Learn iOS programming from the ground up.

Learn to use Xcode and core iOS SDK frameworks such as Foundation, UIKit, and Core Animation to develop sophisticated, full-featured iOS apps for the iPhone, iPad, and iPod touch. You'll gain proficiency on such key aspects of iOS development as the following: implementing custom drawing and animation, handling touch events, working with views and view controllers, handling editable fields and managing the keyboard, presenting scrollable rows of data in table views, and using a navigation controller to manage navigation between views.

Craft native iOS applications.

You'll learn the essentials of iPhone and iPad development: the tools, frameworks, concepts, and best practices—reinforced by plenty of hands-on exercises to strengthen your understanding.


Updated for iOS 8

Duration

5 days.

Objectives

We take a somewhat different approach to teaching iOS (iPhone and iPad) development. First, we spend a lot more time on Objective-C 2.0 and the Foundation framework. We think that's essential to becoming a competent iOS developer.

Second, we don't jump right into Xcode's Interface Builder when we start getting into user interface development on the iPhone and iPad. Instead, we'll show you how to do everything programmatically at first. Once you have a solid grasp of how the user interface works at the API level, we'll show you how to integrate IB into your development process. That will help clear up a lot of the confusion that usually results when developers first start trying to use IB. (Interface Builder is unusual in that it's not a code generator—instead, it works with serialized objects, so it can seem awfully magical at first.)

This approach is in keeping our overall training philosophy, which favors a bottom-up methodology that allows you to learn from scratch, step-by-step. Not only does this make learning easier; it'll help you lay down a more solid foundation for iPhone and iPad development.

We combine this approach with a smaller class size that ensures plenty of individualized attention from the instructor. That way, you can be sure you'll have a chance to get all your questions answered, and get all your lab exercises completed successfully.

  • Gain hands-on proficiency with Objective-C 2.0 and the Foundation framework for iOS development
  • Get up to speed fast on Xcode 5 including its integrated Interface Builder
  • Learn to write custom iOS drawing and animation code
  • Access iPhone and iPad user input from touches
  • Set up and manage iOS controls such as text fields, buttons, and pickers.
  • Work with table views, navigation controllers, and other UI components
  • Persist iPhone and iPad application state and user data

Audience

Take this course if you're:

  • A C programmer (or have taken ANSI C Programming or the equivalent)
  • Interested in learning the iOS SDK to create great iPhone and iPad applications.

For further information on which courses would suit you best, please take a look at our guide on iPhone and iPad development classes.

Outline

  • Xcode: Use Xcode 5 to edit, build, and debug your iPhone applications and to manage project resources.

  • Objective-C: Get hands-on familiarity with the iPhone's Objective-C programming language and Foundation framework.
  • Nib Files and Storyboards: Learn to use Interface Builder to design your iOS app's UI and connect it to your code—and learn the real meaning behind File's Owner, First Responder, and other mysteries.
  • Cocoa Touch Design Patterns: Discover how Apple leverages Model-View-Controller and other design patterns in the iPhone's UIKit framework.
  • Table Views and Collection Views: Work with the iOS SDK's UITableView and UICollectionView classes and their corresponding controllers to present data and interact with the user.
  • Navigation: Learn to use navigation controllers, tab bar controllers, and other UIKit components, as well as iPad-specific controls such as popovers.
  • Handle Touch Events: Manage standard iPhone and iPad UI controls and custom components correctly in response to user input.
  • Custom Drawing: Learn to use Core Graphics and Core Animation to customize iOS UI components, display and manipulate images, and provide rich animation for graphical elements.
  • Persist iPhone/iPad Application Data and UI State: Learn a variety of efficient techniques for saving info to various types of data stores.
  • Memory Management: Learn to use Automatic Reference Counting (ARC) and autorelease pools to manage your iOS app's memory, while avoiding common pitfalls.
  • Design for Modularity: Leverage the iPhone/iPad's dynamic loading capability to reduce complexity, improve performance, and dramatically simplify maintenance.
  • iOS Performance Monitoring and Debugging: Use Instruments and the LLDB debugger to find and fix problems and eliminate hot spots and memory leaks.

Instructors

Learn from seasoned developers and teachers.

Need a machine? Reserve a 13” MacBook Pro or MacBook Air Today!

If you’re unable to bring your own MacBook Air or MacBook Pro to class, we have a limited inventory of loaner machines. Please call ahead (main: 571-346-7544) to check on availability.

Links

For additional information on iOS programming, please visit Apple's iOS Dev Center: http://developer.apple.com/ios/

Also, please feel free to download our free iOS development tutorials. These are Xcode projects that will take you step-by-step through detailed examples that cover the basics, including working with UIView and UIViewController; Core Animation and custom drawing; working with subclasses of UIControl such as UITextField and UIButton; working with UITableView and UITableViewController, including making a UITableView editable, and creating editable instances of UITableViewCell; and managing navigation with UINavigationController.