iOS 9 and Swift 2: Step It Up!

Learn By Doing & Take Your App Building Skills to the Next Level
4.8 (118 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
401 students enrolled
92% off
Take This Course
  • Lectures 93
  • Length 17.5 hours
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 2/2016 English

Course Description

Emphasis on solid theoretical background, design principles, app architecture, best coding practices, monthly new videos and updates.

34 coding sessions, 4 challenges, 4 exercises, 3 quizzes and interview questions 

NEW - refer to the bonus section

  1. SWIFT Coding Challenge  
  2. Music Video App Open Source Project  - Challenges
  3. Ask Michael - Q & A -  Interview Questions
  4. Apple’s Annual World Wide Developers Conference (WWDC 2016 Updates)

The goal is for everyone to take the skills learned throughout this course and apply them to the challenges. This will allow you to gain more experience through actual work and collaboration.

This is not just a course but a growing community to constantly push the limits and share and collaborate. 

Have you taken an iOS development course that has left you with more questions? Do you have the basic fundamentals, but want to take your knowledge to the next level? If so, this course is for you!

You can Step It UP using REST-APIs. Through this interactive course, you will have the opportunity to use available APIs to build apps that are specific to your interests and build incredible mobile apps.

With each of the 77 lectures building off of the proceeding one, you’ll build a music video app from scratch following the model-view-controller design pattern and best coding practices. You will have the opportunity for hands on practice to apply the newly acquired skills to your own concept through challenges and exercises.

After the completion of this course our journey just begins. You will have the opportunity to continue your education by watching a new lecture presented every month. Your feedback will determine the direction of additional content in the bonus section.

I look forward to taking this journey with you.

What are the requirements?

  • You should have a computer running OS X El Capitan
  • You should have Xcode 7.01 or higher installed on your computer.

What am I going to get from this course?

  • Learn source control with Git/Github & Xcode integration
  • Understand the model-view-controller design pattern & best coding practices
  • Use available REST-APIs to build apps
  • Understand the JSON format & use the JSON Editor
  • Handle back-end processing using grand central dispatch
  • Obj C Class - Reachability using Swift Bridging Header
  • Add search bar
  • Create a settings page
  • Add refresh functionality
  • Stream and play videos
  • Implement Touch ID
  • Implement social media sharing
  • Implement In-App Email

Who is the target audience?

  • This course is designed for developers who already have taken prior iOS development course.
  • You should be comfortable working with Xcode integrated development environment.
  • You should have a basic understanding of the Swift programming language.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Introduction

In this lecture, I walk you through a demonstration of the Music Video App that you are going to build within the 32 coding sessions. Discuss all the libraries and frameworks that you are going to learn in this course.


In this lecture, I give a special dedication to the person who inspired me. I go over my background and talk about why I decided to put this course together.


In this lecture, I discuss the big picture (goals of the class) of what you are going to learn when you complete this course.


In this lecture, I give you detail explanation of why you should take this course. What makes this course unique and stand out from other online courses?


Updated - April 8, 2016 - In this lecture, I walk you through the Roadmap of the course. Discuss tips for success and layout the course journey.

Section 2: Web Service Technologies

In this lecture, you are going learn all about REST-APIs. Why this is great opportunity for developers?


In this lecture, you are going learn

What is JSON?

How to read it?

What is a JSON Editor?

Walk through some examples?

Discuss interview Questions regarding JSON.


In this lecture, you are going to learn all about the iTunes REST-API.


In this lecture, we are going to discuss a website that goes over thousands of REST-APIs for you to pick from for your first challenge.

Section 3: Object Oriented Programming Principles in Swift
Object Oriented Programming Principles
Classes and Objects
The power of OOP - iOS Frameworks and Foundation
Object Oriented Programming Principles
10 questions
Section 4: Key Concepts in iOS Development
Model-View-Controller Design Pattern
Model-View-Controller Communication Rules
Delegation and Protocols Design Pattern
Singleton Design Pattern
Application Lifecycle
View Controller Lifecycle
Key Concepts in IOS Development
10 questions
Section 5: Source Control Management
Git Basic Concepts - command-line tool
Add git repository manually to Xcode Project
GitHub - Web Based Git repository hosting system
Managing source code with Xcode and GitHub
Exercise - create free account with GitHub
Source Control Management
10 questions
Section 6: Building Our App Back-End
Overview of the Back-End Processing
Setting up our project
Part 1 Project Setup
Connect to the API

Part-2 NSURLSession source code

Convert the NSData to JSON

Part-3 NSJSONSerialization source code

Define the data model

Part-4 Create class with custom initializer source code


Exercise source code


Part-5 Completed custom initializer source code

Recap - what we learned so far....

Part-6 Call Custom initializer to build array source code

Part 7 Obj-C Reachability bridging header

Part-8 Obj-c Reachability App Delegate source code


Part-9 Objc Reachability view controller source code

Part 10 Debugging tips
Challenge 2
Section 7: User Interface - list screen Part 1
Overview of the User Interface
Table View vs. Table View Controller explained

MusicVideo App Part11 Source Code


MusicVideo App Part12 Source Code


Music Video Part-13 Source Code

Objectives - Implement custom cell

Music Video Part-14 Source Code

Part 15 - Get image from the URL
Part 16 - App Transport Security
Part 17 - Preferred Fonts
Challenge 3
Section 8: User Interface - detail screen Part 2
Part 18 - Create detail screen and setup UI
Part 19 - Pass data to detail screen from row selected

Updated 4/8/2016 - In this lecture, we will discuss how to implement different screen layout for all iPhones in landscape orientation and different look for all other devices.

Exercise - Preferred Fonts
Section 9: User Interface - settings page Part 3
Part 21 - Create and layout UI
Part 22 Create class and connect to storyboard
Part 23 -Switch and NSUserDefaults
Part 24 - Slider and NSUserDefaults
Exercise - Implement About screen
Section 10: Featured Functionality - Part 4

In this lecture, I discuss how to stream and play video over the web.


In this lecture, I discuss how to refresh the data from the API by pulling down on the table list.


In this lecture, I discuss how to share information through social media.


In this lecture, I discuss how to setup in-app e-mail for customer feedback.


In this lecture, I discuss how to use touch id for added security before sending information through social media.

Our Design Session

In this lecture, I discuss how to setup search using UISearchController.


In this lecture, I discuss how to code our string matching for our search using the Swift filter.

Part 32 - Class Extensions
Challenge 4
Section 11: Where to Next?
App Store Review Guidelines

In this lecture, I explain why our journey never ends? Our journey just begins.....

Every month I will be adding at least one new lecture on topics that you will decide.

I outline the strategy and objectives of the bonus section.

Section 12: Bonus
Our Journey Continues
Part 33 - Swift 2.2 - New #selector syntax
Code review/optimize - Music Video Class
Code review/optimize APIManager
Part-34 - Optimize APIManager - Coding Session
NEW Music Video App Open Source Project - Challenge
NEW - Apple’s Annual World Wide Developer Conference - WWDC 2016
Section 13: Bonus - SWIFT Coding Challenge

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Michael Rudowsky, Swift Developer and Teacher

Michael A. Rudowsky, Founder of MAR Software Technologies LLC has thirty plus years experience working in information technology and has been passionate about computers since the late 1970's. In the early 1980's Michael mastered UNIX and C programming languages and served as the CO-OP student with Revlon Inc. After graduation Michael was offered a full-time position involving mainframe technologies such as COBOL, CICS, JCL and DB2.

At the COMDEX exhibitions in Las Vegas, the largest computer trade show in the world, Michael represented Revlon. He was responsible for the review of new hardware and software solutions for the company. As one of the first beta testers for Realia COBOL, Michael enabled COBOL and CICS applications to run on IBM PCs. He worked closely with BARR systems to enable PC's to dial up and act as the Mainframe printer from any remote location. These two technologies allowed him to develop the first PC application to run on IBM PC in the production environment at Revlon.

In the 1990′s, Michael moved into consulting, working with several of the fortune 500 companies like: Merrill Lynch, Johnson and Johnson, Merck and Metropolitan Life Insurance Company. He got involved in Client Server, Web Applications, Database Design and Data Warehousing projects. In 1999 he accepted an employee position at MetLife where he moved into management leveraging his technical abilities to work on company strategic projects.

In 2004, he moved to American International Group and got involved with Architecture Design, Process Improvement, Data Center Consolidation, Office Virtualization and Disaster Recovery. One of his biggest accomplishments at AIG was the planning and delivery of Next Generation Booking Service which consolidated the booking function across several underwriting applications in the organization.

In 2014, Michael started MAR Software Technologies based on a vision that every single one of us has the ability to learn how to program. If you can read, you can program!

App Development is an incredible empowering skill to learn. He wants to inspire as many people as he can. To bring out your creativity and to empower you to pass it forward to inspire others. He believes together we can plant the seed of knowledge that can grow and make a difference in people's life's.

Michael is committed to this vision and he will play his small part to make this happen.

Michael graduated summa cum laude with a B.S. in Business Administration from Centenary College in 2013 and A.A.S. in Computer Science from Middlesex County College in 1984.

Ready to start learning?
Take This Course