Bootcamp iOS Developer Specialization

Logo-2021-1
Bootcamp AI

About This Course

6 months program

The journey to becoming an iOS developer begins in your imagination—that moment when you first dream up a great idea for an app. This Nanodegree program will prepare you to publish your first iOS app, whether you’re already programming or just beginning. As you master the Swift programming language and create a portfolio of apps to showcase your skills, you’ll benefit from detailed code reviews, valuable career advice, and coaching from professional iOS developers.


Certificate

To share in LinkedIn

You can share your Certificates in the Certifications section of your LinkedIn profile, on your printed resume, or in other documents.

 


 

Learning Objectives

This Nanodegree program will prepare you to publish your first iOS app, whether you’re already a developer or relatively new to programming. In this program, you’ll not only learn how to build iOS apps, you’ll also learn best practices in mobile development, and gain mastery of Swift, an opensourced object-oriented programming language. Through 6 hands-on, reviewed projects, you’ll gain the skills you need to become an iOS Developer.

Requirements

  • You are self-driven and motivated to learn. Participation in this program requires consistently meeting deadlines and devoting at least 10 hours per week to your work.
  • Collaboration with peers and interactive feedback are critical to the success of the program.
  • You must be a committed and contributing participant of the community.
  • Access to a Mac computer running macOS 10.14.3 or late

Target Audience

  • This program is designed to prepare you for a job as a professional, juniorlevel iOS Developer within a wide range of organizations and environments:
  • from large corporations where you’d likely be part of a development team, to entrepreneurial start-ups and contract projects where you could be working independently to deliver an application.

Curriculum

1356 Lessons

Intro – 01_Objective-C vs. Swift

01. Introduction1:13
02. Welcome to Objective-C for Swift Devs!00:00:00
03. Intro to Dasmer Singh00:00:00
04. Interview with Dasmer Singh00:00:00
05. Compare and Contrast00:00:00
06. Similarities Objective-C and Swift00:00:00
07. Differences Handling Nil00:00:00
08. Differences Mutability00:00:00
09. Mutability in Objective-C
10. NSArray vs. NSMutableArray00:00:00
11. Differences Typing00:00:00
12. In Objective-C Arrays are not Typed00:00:00
13. Dynamic Method Resolution00:00:00
14. The Power Is In Your Hands
15. With Great Power…00:00:00
16. Interview Questions About Objective-C00:00:00
17. Practice NSArray vs. NSMutableArray00:00:00
18. Practice Invoking Methods on Nil
19. Interview Question Inheritance
20. Seek Out More Practice Questions00:00:00

Intro – 02_Writing Classes in Objective-C

Intro – 03_Methods and Messages in Objective-C

Intro – 04_Porting from Objective-C to Swift (Part 1)

Intro – 05_Porting from Objective-C to Swift (Part 2)

Intro – 06_Common Interop Challenges

Intro – 01_Interoperability Problem Set

Get Ready to Learn iOS

You will complete a series of coding exercises to test your understanding of Swift. There will be exercises for variables, strings, if (else-if and else) statements, and functions.

Variables and Types

Operators and Expressions

Control Flow

Functions

Structures and Enums

Optionals

Strings

Collections

Object-Oriented Programming

Introduction and Xcode

Build your first app with Swift and Xcode, Apple’s programming environment for app development. You’ll learn how to use AutoLayout, UIButtons, and UILabels to create an interface, and how to react to touch events in an app using ViewController and multiple views. You’ll also learn how to set up audio recording and playback in a voice recording app.

AutoLayout and Buttons

ViewController and Multiple Views

Delegation and Recording

Playback and Audio Effects

Brainstorm Ideas for Your Final App!

Pitch Perfect

What is Version Control

Git course.

Create A Git Repo

Review a Repo’s History

Add Commits To A Repo

Tagging, Branching, and Merging

Undoing Changes

Working With Remotes

Working On Another Developer’s Repository

Staying In Sync With A Remote Repository

Develop Your Personal Brand

LinkedIn Review

GitHub Review

Outlets and Actions

You will create a first version of the MemeMe app that enables a user to take a picture, and add text at the top and bottom to form a meme. The user will be able to share the photo on Facebook and Twitter and also by SMS or email.

View Presentations and Segues

The Delegate Pattern

Build of the MemeMe App

MemeMe The Meme Editor

Table Views

Navigation

Complete the MemeMe App

MemeMe 2.0 The Final Product

Suggested Electives

Introduction to AutoLayout

Suggested Electives AutoLayout

Using AutoLayout

View Properties used by AutoLayout

Beginning StackViews

Positioning Views Constraints

Horizontal Layouts

Vertical Layouts

Beyond AutoLayout

Sketch UI Elements for Your Final App!

Making a Network Request

Incorporate networking into your apps, and harness the power of APIs to display images and retrieve data. Use Apple’s Grand Central Dispatch, or GCD, framework to create asynchronous apps, ensuring a smooth user experience, even while your apps run lengthy operations in the background.

Using Web Services and APIs

Problem Set JSON Parsing

Chaining Asynchronous Requests

Authenticating Requests

Improve Networking with MVC

Preparing for On the Map

Closures Reloaded

GCD and Queues

Backgrounding Lengthy Tasks

On the Map

Suggested Electives

Conduct a Job Search

Refine Your Entry-Level Resume

Refine Your Career Change Resume

Craft Your Cover Letter

Find Web APIs for Your Final App

Debugging, Printing, and Logging

Suggested Electives • iOS Debugging.

Stepping Through Code

LLDB and Breakpoint Actions

Breakpoints and Visual Tools

Simple Persistence

Learn about simple persistence, the iOS File System, and the “sandbox.” Set up the classes we need to get Core Data up and running so that we can create, save, and delete model objects. Enable user interfaces to reactively update whenever the model changes, and safely migrate user data between versions.

iOS File System and Sandboxing

Introducing Core Data

The Core Data Stack

Simpler Code with Core Data

Rounding Out Core Data

Optional Elective Firebase in a Weekend – Saturday

Optional Elective Firebase in a Weekend – Sunday

Optional Elective Firebase in a Weekend – Monday

Virtual Tourist

Introduction to Digital Analytics

Introduction to Firebase Analytics

Implementing In-App Analytics

Analytics Integration

Research

This is your chance to let your iOS Developer skills shine! For this final project, you’ll design and build your own iOS app, taking the design from the drawing board to the App Store.

Build

Reflect

You Decide!

Ace Your Interview

Practice Behavioral Questions

Interview Fails

Land a Job Offer

Interview Practice (iOS)

Principles of Software Design

Selective Electives • Mobile Design Patterns.

Creational Design Patterns

Structural Design Patterns

Behavioral Design Patterns

Software Anti-Patterns

Please Read Before Taking this Course

Introduction and Efficiency

List-Based Collections

Searching and Sorting

Maps and Hashing

Trees