iOS Programming Summer School
Learn to use the latest technologies from Apple.
Swift 2See how Swift and Objective-C can be used together to build modern iOS apps. Explore the expressive and concise syntax of Swift using Playgrounds in Xcode 6.
Work with the latest developer toolset for iOS Development. Learn to utilize the full power of the Xcode IDE, iOS Simulator and Storyboards with Auto Layout to build iOS apps.
Develop apps targeting the latest release of iOS. Extend the reach of your app content and functionality by building on the new APIs introduced with iOS 9.
Objective-CLearn to read code written in Objective-C, square brackets and all! Objective-C inherits the syntax, primitive types, and flow control statements of C and adds syntax for defining classes and methods. Unlock the gold held in Stack Overflow answers!
Master details of the Foundation framework classes including NSObject, NSString, NSArray and NSDictionary. Study common Object-Oriented Design Patterns as implemented by Apple.
UIKitLearn how core UIKit classes are used to construct the user interface for your app. Use view controllers, views, tables, collections, gesture recognizers and animations.
Build a Practical Real-World App in 5 Days!
We will teach you a proven four-step process to turn your ideas into beautiful native iOS applications. You will build Count’em Up as we guide you from idea through design, development and release of this native iOS application.
Once the app is running on your phone, we’ll take things even further and show you how to add Watch support. Use the watch to increment, decrement and reset a counter, switch between counters and more.
No toy example applications here or sample code that leaves you wondering “Gee, how would I use this in a real app?”. No sir! This is a full featured application that has gone through the App Store approval process and is available in the store today.
IdeaCount’em Up is an iPhone application used for counting and timing things. It incorporates many aspects of a typical mobile app and provides a terrific structure for introducing you to iOS programming. Read the App Definition Statement for more information about the app idea.
DesignThe expectations for mobile app users are high. Success is defined as much by the user experience of an app as the functionality. Count’em Up was conceived as a gesture-based app with a sleek flat UI design. Wireframes and pixel-perfect mockups for the app were produced by a professional designer.
DevelopSomeone once said “Startup ideas are worthless; execution is everything” and that holds for app development too. Xcode, the development environment provided by Apple, will be used to build Count’em Up. Programming will be done using Swift, the new object-oriented/functional language developed by the folks at Apple.
ReleaseThe phrase “Just Ship It” takes on new meaning when developing iOS apps. Navigating the approval process with Apple requires familiarity with developer certificates, provisioning profiles, ad-hoc or app store distribution, iTunes Connect, planning the marketing for your app, pricing, in-app purchase, etc. We will discuss strategies for dealing with these challenges and more during the weekend.
We will teach you how to build sophisticated user interfaces with Storyboards and Auto Layout. You will design custom views to render properly on the iPhone, iPad and Watch by expressing your intent using auto layout constraints and size classes. Master the use of auto layout constraints in code as well as by using storyboards.
Apps today are connected to the cloud. We will show you how to expand the reach for your app by connecting to the cloud. Learn how to interface with REST web services and work with JSON data. Build responsive applications utilizing asynchronous network operations and multiple threads. Handle intermittent/unreliable network connections. You will add Cloud Kit support to the app, storing all counter information in the user’s iCloud account.
Frequently Asked Questions
How much programming knowledge is required for the course?
The course is designed for people with experience in one or more of the following languages:
- C, C++, C#
- Ruby, Python
You should have a good grasp of object-oriented software development and be comfortable with the concepts of inheritance, polymorphism and encapsulation.
Is the course taught in Swift or Objective-C?
The primary language used during the course is Swift. All in-class exercises will be done using Swift. Upon completion of the course you will be ready to turn your ideas into apps using all the power offered by Swift.
During the course we will also teach you just enough Objective-C to read code found on sites such as Stack Overflow. Also, the exercise solutions will be provided in both Swift and Objective-C.
Do I really need to understand Objective-C?
As part of becoming an iOS developer, it is our view that you should be able to read Objective-C code and understand how to transform it into equivalent Swift code. Today it is still the case that many of the on-line resources available to help you answer question are presented in Objective-C.
I'm a PC developer and just got my first Mac. Will I be able to keep up?
Many of our students are new to the Mac platform and find some of the OS X user interface to be foreign to them. You should have no problem keeping up in the class. We always have two instructors present for the hands-on workshops and provide plenty of tips and guidance.
Can I use a PC to develop iOS apps?
Unfortunately the answer is no. You must have a Mac running a recent version of OS X in order to develop iOS applications at this time.
Do I need to pay Apple to develop iOS apps?
Yes and no. As of June, 2015 Apple no longer requires you to be a paid member of the Apple Developer Program to test your apps on actual hardware. You simply need to join the Apple Developer Program at their free level. This will give you access to the latest version of Xcode, Swift and the various frameworks required for developing mobile apps.
Once you are ready to submit an app to the iTunes App Store you will need to become a paid member of the Apple Developer Program. The lowest cost for a paid membership is $99 per year.
How do the on-line Office Hours work?
Becoming a master iOS developer takes time and we want to make sure you have plenty of opportunities to get our help during your journey.
We hold formal office hours four times during the course using a tool called GoToMeeting. When you register for the class we provide you with a meeting URL and password. You will need headphones with a microphone to ask questions. The earbuds that come with an iPhone work fine for this.
Even if you don’t have a specific question it is often valuable to join the call and listen in as other students ask questions.
What if I have questions after taking the course?
Everyone who takes an iOS Weekend course is invited to join our on-line discussion forum. If you have a question about an API call, how best to use the tools, etc, you may post to the forum. Questions posted are seen by all students and we do our best to answer them quickly and thoroughly.
Can you teach the course on-site at my company?
Sure. Contact us using the form below.
Have a question we didn't answer? Shoot us an e-mail.
Our Approach to Teaching
Training classes are offered in the San Francisco Bay Area. Future classes are planned for the greater San Diego Area and Portland, OR. Hope to see you at the next iOS Weekend. Remember, to grow as a software developer you need to Invest in your future one weekend at a time!