Yelp Facebook LinkedIn YouTube Twitter Instagram

App Development Summer Camp

iOS Programming Summer Courses for High School & Gap-Year Students in NYC

Throughout this 60-hour iOS summer course, students will learn to develop several apps, including two in the very first week! Our curriculum begins with basic programming concepts in Xcode playgrounds and then moves into more advanced topics using Xcode 9 and Swift 4.

Students will complete step-by-step activities to code working apps, including a tip calculator and a weather app that integrates with an API (an Application Program Interface, which enables developers to program software components to work together).

After learning new skills and techniques in class, students reinforce important concepts by developing their own final project at home, with tons of instructor guidance along the way!

Prerequisites & Ages: The program is ideal for ages 13-19 with a strong interest in coding. Prior coding/programming experience is not required, but students must be comfortable with computer basics.  

More Summer Code Camps: This summer camp is also offered at our New Jersey location. Check out our other NYC summer coding camps

  • 60 Hours
  • Mac or PC provided
  • Book included
  • Top Instructors

Register for a class

$2495 Policies

594 Broadway, NYC

What You’ll Learn

  • Learn to build and develop apps using Swift & Xcode
  • Create numerous real-world apps
  • Add interactive elements such as buttons, taps & swipe gestures
  • Connect the user interface to code that makes the app work
  • Learn programming concepts and logic to create an efficient app
  • Add image assets for your apps, launch screen, & app store
  • Build adaptable layouts that work across all iPhones & iPads
  • Add embedded videos, map location, external web links
  • Learn to use data models, including external datasets
  • Preview your apps on your own device
  • Create your own app with guidance from the instructor
View full syllabus

App Development Summer Camp Class Syllabus

What You’ll Learn

Week 1
Introduction to Tools of the Course

Topics

  • XCode
  • iOS
  • Swift
Hello World App
Roll The Dice App
The Swift Programming Language

Topics

  • The Swift Playground
  • Comments
  • The println() function
Variables

Topics

  • Variables
  • Constants
  • Data types
  • Optionals
  • Type inference
Conditional Statements & Operators

Topics

  • The if statement
  • The else statement
  • The else if statement
  • Comparison operators
  • Arithmetic operators
  • Logical operators
Strings

Topics

  • Literals
  • Mutable strings
  • Comparing strings
  • Concatenating strings

Week 2
Tip Calculator App
Functions

Topics

  • Functions with parameters
  • Functions with returned values
Optional Unwrapping

Topics

  • Forced optional unwrapping
  • Implicitly unwrapped optionals
  • Optional binding
Loops

Topics

  • For loops
  • While loops
  • For in loops
  • Iterating over arrays
Creating a Class

Topics

  • Object-oriented programming
  • Objects & classes
  • Methods
  • Properties
Methods

Topics

  • Methods with parameters
  • Methods with return values
Structs

Topics

  • Creating a struct
  • Accessing a struct
Inheritance

Topics

  • Creating a subclass
  • Method overriding
Extensions

Topics

  • Extending existing classes
  • Using extensions
Protocol & Delegates

Topics

  • Defining & implementing protocol
  • Delegate design pattern
  • Implementing & using delegates
Closures

Topics

  • Defining a closure
  • Closures with parameters
  • Closures with returned values
  • Closures as callbacks
Week 3
ENUMS

Topics

  • Creating & using enumerations
Type Casting

Topics

  • Type checking
  • Type casting
  • Downcasting
Tuples

Topics

  • Creating & using tuples
Type aliases

Topics

  • Creating & using type aliases
ARC

Topics

  • Strong & weak references
  • Avoiding strong reference cycles
Card War App

Topics

  • Importing the images
  • Adding the button that draws the cards
  • Labeling the deck & each player’s score
  • Adding constraints to our labels
  • Adding a button to restart the game & constraining it
  • Adding & constraining the background image
Week 4
Auto Layout

Topics

  • Stacks
  • Nested Stacks
  • Downcasting
  • Constraints
  • Content Hugging Priority
  • Compression Resistance Priority
Card War: The Data Model & Linking the UI to Code

Topics

  • Connecting the UI to the View Controller
  • Modeling a single card by adding a Card class
  • Modeling all the cards by adding a Deck class
  • Adding the shuffle functionality
Card War: Adding Variables to the View Controller

Topics

  • Declaring variables
  • Responding to changes in a variable’s value using the didSet property observer
  • Starting with the drawingCards function
Card War: Displaying the Cards & Score

Topics

  • Creating the UIImageViews that will hold the cards
  • Setting the size & position of the cards that are drawn
  • Revealing the cards & updating the winner’s score
  • Defining what happens when the game is restarted
Card War: Animating the Cards

Topics

  • Animating the cards’ move from the deck button to their respective positions
  • Revealing the cards’ values after they are done moving
  • Revealing the cards’ values with a flipping transition
  • Incorporating the final code into the animation

Week 5
Building the Lists App
Previewing on iPhone without Developer Account
Establishing an Apple Developer Account

Topics

  • Creating an Apple Developer Account
  • Registering your device to run apps directly from Xcode
Lists: UI with Two View Controllers That Display Table Cells

Topics

  • Creating files for a dual View Controller app
  • Adding a Navigation Controller to manage our two views
  • Adding UI elements to the first View Controller
  • Constraining the UI objects on the first View Controller
  • Copying the first View Controller to create the second
Lists: Refining & Beautifying the UI

Topics

  • Adding images from the designer
  • Improving the UI design on our Storyboard screens
  • Differentiating the two View Controllers
  • Setting View Controller & Table View Cell classes
Outline Your App Idea
Week 6
Building the Lists App, Continued
Lists: The Data Model & Linking the UI to Code

Topics

  • Cleaning up the View Controller & Table View Cell files
  • Connecting both UI screens to their respective files
  • Creating List & List Item classes in the data model
Week 7
Weather Forecast App

Topics

  • Acquiring an API Key
  • Using the Weather Underground API
  • Reading JSON
  • App Transport Security Settings
  • Adding Error Messages
  • Linking to an Outside Website
  • Completion Handlers
  • Do... Catch
  • Converting Strings into Floats
  • Displaying the Keyboard in the Simulator
  • Dismissing the Keyboard

Week 8
Met Gallery App Part 1
Met Gallery: Assets, Launch Screen, & Home View Controller

Topics

  • Creating files for a multiple View Controller app
  • Adding assets & using the Assets Catalog
  • Creating a launch screen
  • The Home View Controller & UI elements
  • Adding constraints to the UI elements
  • Connecting the View Controller to its code file
Met Gallery: View Controller with a Collection View

Topics

  • The gallery view controller UI
  • Refining the collection view
  • Connecting the view controller to its respective files
Met Gallery: The Painting Detail View Controller

Topics

  • Adding the UI objects to the Painting Detail VC
  • Constraining the UI objects
  • Adding Swipe & Tap Gesture Recognizers
  • Connecting the View Controller to its code file
Final Project: Start Coding!
Week 9
Met Gallery App Part 2
Met Gallery: Full Screen View Controller with a Scroll View

Topics

  • Creating the full screen painting View Controller
  • Setting size classes
  • Constraining the scroll view & connecting the code
Met Gallery: Adding a Spinner, Data Model, & Gallery VC

Topics

  • Adding a Spinner
  • Creating the data model
  • Adding the Collection View methods
Met Gallery: Painting Detail & Adding Gesture Recognizers

Topics

  • Loading the painting details
  • Refining the Image View
  • Making the online reference button functional
  • Segueing to the full screen scroll view
  • Adding the image to the full screen view
  • Implementing the swipe gestures
Work on Final Project
Week 10
Course Wrap Up
Test Flight and Submitting to the App Store
Final Projects
Final Project Presentations

Class Overview Video

Learn How to Build iOS Apps for iPhone & iPad

Our immersive training program, iOS App Development Bootcamp, will have you on your way to becoming an Apple mobile developer! After learning foundational object-oriented programming concepts in Xcode and Swift, you’ll build several apps in class and have the skills to build even more apps at home! Engage in step-by-step exercises in a small class led by a professional iOS developer. 

Immediately Applicable to Real-World Professional Contexts

“Noble's iOS Development course has taken me from pure novice in code of any kind to about to publish my very own iOS app. I'd tried paid online courses, tutorials and books but it all ended in frustration...Noble finds excellent teachers (who are also patient with beginners) and is very generous with workbooks, downloadable materials and files in order to keep everything up to date. Taking this course was the best decision I've made in the last ten years..!”

Nancy, Illustrator (on Noble Desktop's equivalent iOS Development Course for adult learners) 

Example of iOS coding exercise

Collaborate with an Industry Expert to Create Your Own App

Throughout the iOS Bootcamp, students work to develop their own dynamic and unique app. Beyond learning how to program apps for iOS devices, students gain real-world skills as they experience first-hand what it takes to turn their ideas into reality 

Expert Instructor Guiding a Student

Step-by-Step Exercises that Promote Active Learning

Our proven educational methods empower students to actively engage with class material. Students watch a short demonstration and then dive right into practicing skills on their own through expertly-crafted activities and projects.  

Custom iOS step-by-step training manual

Register for App Development Summer Camp

$2495 Policies

594 Broadway, NYC

Learn more about our App Development Course

Our iOS Development course is one of the most popular classes amongst our students! This course is great for students because it teaches them how to design, code, and build mobile applications. Students move beyond simply being "users" of apps and instead become the "creators" themselves! 

To create an app, developers need technical skills (coding) and design skills (user experience and user interface design). NextGen's App development course uses engaging activities and projects to teach kids both! 

This course will be taught in Swift, Apple’s programming language that is used solely to build apps for iPhone and other Apple devices. Students will be coding Swift in Xcode, which is an integrated development environment for Apple. Throughout this course, students will learn how to use both Swift and Xcode, two of the most important tools in app development today!

Why Learn App Dev at NextGen?

Easy to Learn: Swift is a great language for beginners to learn because it is remarkably similar to English and has limited syntax rules. Additionally, Xcode allows users to type Swift code and see the output on the same screen. This allows coders to program faster because they are receiving immediate feedback from their code. Furthermore, this gives students immediate gratification to see how every line of code they write contributes to building a new feature of the app!

Capitalize on Ideas: Through our curriculum, students learn how to use Swift to build apps, which means that after the class is over, students will have the skills to continue programming on their own! Students may go on to generate successful school projects and even businesses using the skills they learned over the summer. Students can even apply their skills to provide freelance app development services to tech companies, enabling them to make money and earn valuable job experience while they are still in school!

Ability to Create Anything: With the skills learned in this class, students will be able to create a variety of mobile applications. Whether students want to create a game, a utility tool, or an aggregator, this course has it covered! Students interested in gaming, software development, digital design, finance, or another industry entirely can all benefit from the technical skills and real-world activities presented in this summer class. 

Who should attend our App Dev Summer courses?

Our app development course is designed mainly for high school students but college students are welcomed as well! There is no math or coding pre-requisite for this course.

This course is a great introduction to the world of programming and computer science. Anyone who is interested in business, technology, entrepreneurship, journalism, and many other different jobs should attend. This course is also great for students with business ideas or those who are looking to gain technical skills to make money as a freelancer. App development is an amazingly versatile knowledge base that students can harness to turn their ideas into reality. 

App Dev Course Detailed Overview

This is an applied course that starts with a detailed introduction to the tools used in this program: Swift, IOS, Xcode playground. We teach these tools through a guided app development project.

The first project is a simple dice application where students learn how to add auto layout constraints, formatting on different size screens, as well as positioning sections of the applications. In addition, students learn how to connect the user interface they developed with the code. Students will program the dice and the score using a random number import and conditional logic. The second part of the project includes adding more features to the dice app including location, menu, and other accessories within the application.

The second project in this course is a tip calculator, followed by other app development projects. This part of the course focuses on user experience features as well as making your app live and dynamic. This means that students will learn how to embed video into their app as well as learn how to make their app available for purchase in the app store. Finally, students will be able to share their hard work with friends and family! 

Interested in learning more than just iOS App Development this summer? Check out our Summer Code & Development Intensive, in which students learn Web development and Game Design in addition to App Development.

For adults interested in iOS Development, please check out our IOS bootcamp at Noble Desktop!