Learning Swift 2
0.0 (0 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.
3 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Learning Swift 2 to your Wishlist.

Add to Wishlist

Learning Swift 2

Take your programming skills to the next level with Swift 2
0.0 (0 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.
3 students enrolled
Created by Packt Publishing
Last updated 7/2016
Curiosity Sale
Current price: $10 Original price: $75 Discount: 87% off
30-Day Money-Back Guarantee
  • 3 hours on-demand video
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Explore the fundamentals of Swift 2 to help you write applications with complex paradigms and patterns of programming
  • Integrate third-party libraries using CocoaPods
  • Work with TableViews, ScrollViews, NavigationController, and SearchControllers to display data in a user-friendly way
  • Get familiar with Alamofire to make web requests to third-party APIs.
  • Create a zoom in/out effect for photos using ScrollView
  • Adopt error handling in your projects using Enums
  • Understand the MVC design pattern linked with iOS development
  • Keep up with the latest advances with Swift in Linux and the new Package Manager
View Curriculum
  • It would help if you know Objective C, but it is not a prerequisite.

Swift 2 generates faster code across the board, both for release and debug builds. With Swift programmers having half as many code as other code files to maintain and zero manual code synchronization, Swift has experienced unprecedented growth in popularity among developers. In this course, we'll explore the MVC and Singleton design patterns, you'll see how to consume third-party APIs using asynchronous requests, and we'll look at some of the most used controls in iOS development.

This course provideS all you need to know to develop iOS and OS X applications. You'll take a tour of the fundamental concepts, and learn how to develop iOS, tvOS, watchOS, and OS X applications.

We'll kickstart your learning skills as you work with one of the most used dependency managers in iOS, Cocoapods, to install third-party libraries such as Alamofire and SwiftyJSON to deal with JSON and networking requests. You'll see how to structure your project with the MVC design pattern and implement a second view controller to display data and details of your application. It doesn’t end there, as we'll also explore Swift in Linux and the new Package Manager.

This course will teach you the main steps in the build process of an application, giving you the skills you need to create your own applications. 

About The Author

Victor Sigler is an iOS Software Engineer with experience in developing consumer and enterprise mobile applications for iPhones, iPads, and the Apple Watch. He has worked with Swift since Apple announced its release in the 2014 WWDC.

He loves everything related to Apple and is passionate about Swift and the world of programming contests and has spent a lot of time developing in C++. 

He has worked as technical reviewer for Packt Publishing on Swift 2 Design Patterns and Boost.Asio C++ Network Programming Cookbook. 

Who is the target audience?
  • This course is for both experienced and new developers with iOS and OS X (Apple) devices who are interested in developing applications and services with the Swift language.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
32 Lectures
4 Lectures 21:49

This video provides an overview of the entire course

Preview 05:27

Writing apps using Objective-C can be painful and odd. Swift solves this problem. The aim of this video is to explain some differences between Objective-C and Swift and why Swift is better to learn to write apps for iOS, OS X, and so on. 

Why Choose Swift 2 over Objective-C?

Writing an iOS app in Swift is very complicated without an IDE. The XCode IDE solves this problem. 

Installing and Setting Up the XCode IDE

Writing code fast and in an easy way can be painful because we have to compile the code and then run it. We use Playgrounds to solve this problem. 

Beginning with Playgrounds
Swift Basics
8 Lectures 01:00:01

Every programming language needs to store values and references to information. They are called variables and constants. The aim of this video is to teach you more about variables and constants in Swift. 

Preview 06:25

The aim of this video is to teach the control flow and conditional statements that Swift provides. 

Control Flow and Conditional Statements

Functions and closures are pieces of code that handle organization throughout the code and are used for specific purposes. The aim of this video is to show how to use functions and closures in Swift. 

Functions and Closures

In some cases, the absence of a value can be used without the use of null. The aim of this video is to teach the new data type introduced in Swift called Optional, and how to start working with it. 


Structs can define block of code for a general purpose. The aim of this video is to show how to use Structs in Swift. 


Data structures are elements that are necessary in all programming languages. The aim of this video is use arrays and dictionaries in Swift. 

Arrays and Dictionaries

Classes are general-purpose, flexible constructs that become the building blocks of your program’s code. The aim of this video is to show the use of classes in Swift. 


Sometimes, we need to associate values in the same groups and work with these values. The aim of this video is to teach you to create groups using enums in Swift. 

Start Building the App
4 Lectures 26:06

Setting up the new project using XCode. 

Preview 07:42

It is very important from the beginning to define a structure of the project so as to keep all those hundreds of source files organized. The aim of this video is to show how to structure an iOS app from the beginning and get some details about the MVC design pattern. 

Defining the Structure of the iOS App

Every app needs a user interface. The aim of this video is to create the user interface for our app. 

Building the User Interface

Managing all third-party packages in iOS can be painful. CocoaPods solves this problem. The aim of this video is to teach the importance of having a dependency manager like CocoaPods in iOS. 

Installing and Setting Up the Dependency Manager CocoaPods
Getting and Parsing the Data
4 Lectures 17:32

It’s necessary to set up a class to handle all the requests sent to the third-party API. 

Preview 05:26

Define the methods to make the requests to the API in the RequestManager class. 

Making the Web Request to Get Our Data

Parsing JSON in Swift can be painful—dealing with optionals every time. SwiftyJSON is a library used to make JSON parsing easy for everyone. The aim of this video is show how to use SwiftyJSON to parse the JSON returned from the API. 

Parsing the JSON Using SwiftyJSON

Alamofire returns requests asynchronously using closures. The returned result of the method can be tricky. The aim of this video is to show you how to return the data obtained using closures. 

Using Closures to Return the Data
Displaying the Data and Details
7 Lectures 33:01

UITableViewController is one of the most used controllers in iOS. Our aim in this video is to know what UITableViewController is and how to use it. 

Preview 06:45

To make a search through the API, we need a search bar. The aim of this video is to make a search bar in iOS to search through the Pixabay API. 

Setting Up the Search Bar

We have to set the data returned from the API to each cell in the table view. The aim of this video to set the data for each cell in the table view. 

Setting the Data for Each Cell in Code

To handle the view created in Storyboard, we need a controller. The aim of this video is to create a controller to handle the Details view. 

Setting Up the DetailViewController Class

Passing data between controllers is a fundamental technique in iOS development. The aim of this video is to give knowledge on how to pass data between controllers in Swift. 

Passing the Selected Cell Data to Another Controller

Sometimes we need to apply zoom in/out over pictures. The aim of this video is to use the scroll view to zoom into the photos. 

Making Zoom in/out of the Photos

Searching for content in an app is a fundamental topic. The aim of this video is to show the data searched through the search bar. 

Searching Photos in the API
Advanced Topics – Optimizing the App
5 Lectures 24:04

Caching data for offline processing is an elemental task in almost every viral app today. The aim of this video is to guide you through how to do it and shown some excellent open source libraries to help in the process. 

Preview 04:42

What’s needed to see in an app regarding the scroll position is this an important task to avoid consuming memory. The aim of this video is show to the users how to make a request on demand to the API regarding the cells the user is seeing. 

Making the Request on Demand

Managing errors in an app increases the responsiveness of the app in case of problems. The aim of this video is show how to use error handling in Swift properly. 

Adopting Error Handling for the Requests

Swift now is open source and has a Package Manager. The aim of this video is show how Swift can now run on platforms such as Linux and to talk about the new Swift Package Manager. 

Swift in Linux and the New Package Manager

The next steps provide an essential guideline on what to learn next. The aim of this video is to cover a set of topics that provides a stronger grasp of iOS development using Swift. 

Next Steps
About the Instructor
Packt Publishing
3.9 Average rating
7,336 Reviews
52,352 Students
616 Courses
Tech Knowledge in Motion

Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.

With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.

From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.

Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.