Yelp Facebook LinkedIn YouTube Twitter Instagram

App Development Summer Camp (NJ)

iOS App Summer Coding Camp tailored to High School & Gap-Year Students in NJ

In this course, students learn to develop iOS apps using Swift and Xcode. Throughout the 60 instructional hours, students engage in a series of step-by-step exercises and hands-on projects to gain an understanding of app development processes. Students will even develop two apps within the first week of class!

The course begins with basic programming concepts in Xcode playgrounds and then moves into more advanced topics each day. Students will explore real apps such as Tip Calculator and a Weather App that integrates with an API (an Application Program Interface, which specifies how software components should be programmed to work together).

Students work on in-class projects to learn and practice new skills and then solidify their learning by developing their own final project at home, with plenty 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 York City location. Check out our other New Jersey Summer coding camps

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

Register for a class

$2495 Policies

2 University Plaza, NJ

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 (NJ) 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 activity-based bootcamp will help you take your first big steps toward becoming an Apple mobile developer! After learning foundational object-oriented programming concepts in Xcode and Swift, you’ll build several apps in class in addition to building your own unique and dynamic app at home!  Learn real-world skills with step-by-step exercises in a small class led by an experienced 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

Create Your Own App with Expert Guidance and Feedback

Throughout the iOS Bootcamp, students work to develop their own fully-functional app. On top of 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 Activities that Build Deep, Conceptual Understandings

Our proven instructional methodology empowers students to actively engage with course 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 (NJ)

$2495 Policies

2 University Plaza, NJ

APP Development Summer Program in NJ

Our IOS Development course is one of the most popular classes among the NextGen students. This course is perfect for students because it teaches them coding, design, and implementation. The coding aspect of the course teaches students a technical skill, while the design and building of the applications teach students about user experience and user interface.

This course will be taught in Swift, Apple’s programming language that is used solely to build apps for iPhone, IPads 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 used tools and languages in app development today!

Why Learn App Dev at NextGen?

Easy to Learn: Swift is a great language for first-time coders to learn. This language is very similar to English and also has limited syntax. Additionally, Xcode allows users to type Swift code while simultaneously seeing the output on the same screen. This allows coders to program faster and more efficiently because they are receiving immediate feedback from their code in live time. Furthermore, this gives students a feeling of immediate gratification to see that every line of code is building a new feature into the app.

Capitalize on Ideas: Swift allows students to learn how to build apps, which means that after the class students are equipped with skills to code their own ideas! This leads to students launching successful start-ups or excelling in a school project because of the skills they learned in this program. Students can also render their own services as freelance app developers to make some extra money while also being in school!

Ability to Create Anything: With the skills learned in this class students will be able to create many different types of mobile applications whether it be a game, extension, or a service-based app. This allows the course to appeal to a wide array of students. Students interested in gaming to finance, the app course will be beneficial to all! This class teaches students technical skills that can be applied to building an app in whatever field that interests them.

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!

This course is a great intro to the world of programming, computer science, and design. Anyone who is interested in business, technology, entrepreneurship, journalism, design, UX, UI, and many other different jobs. This course is also perfect for students with business ideas or looking to gain technical skills in order to become a freelance developer. App development is an amazing versatile skill that the students can learn and harness it to turn ideas into a reality. On top of the technical skill, Students will learn important thinking principles associated with design and coding.

Are there any prerequisites for the App Dev course?

This course has no math or coding pre-requisites, but students must be comfortable with basic computer skills and have a desire to learn at an advanced level.

App Dev Course Detailed Overview

This is an applied course that starts by teaching an introduction to the tools used in this program: Swift, IOS, Xcode playground. We teach these tools through a step by step 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. Furthermore, students are taught how to connect the user interface they developed with the code they have written. Students will program the dice and the score using a random number generator, and conditional logic. The second part of the project includes adding more features to the dice app including location, menu, and other front-end accessories within the application.

The second project in this course is a complex tip calculator. This part 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 to be purchased in the app store. Finally, students will be able to share their hard work with friends and family!