Swift - Learn Apple's New Programming Language Step By Step

Learn the basics of new language that will help you go on to programme on Apple iOS 8 and Mac OSX
  • Lectures 140
  • Video 8 Hours
  • Skill level all level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

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

Course Description

Become one of the world's earliest Swift developers with this introductory course on Apple’s new programming language.

  • Initial Setup and Swift Basics
  • Operators, Strings, Characters, and Collection Types
  • Evolving from Objective C
  • Control Flow


A Modern Language Evolved from Objective C

Swift is a multi-paradigm programming language developed by Apple for use with iOS and OS X. Designed to replace Objective C, work began on Swift in 2010 and the first mobile app was debuted in June 2014 at the Worldwide Developers Conference. Despite its goal of replacing Objective C, Swift is capable of working alongside the more dated Objective C language while using the Cocoa and Cocoa Touch frameworks.

Swift is built with the LLVM compiler included in Xcode 6 beta, and uses the Objective-C runtime, allowing Objective-C, Objective-C++ and Swift code to run within a single program. During it’s debut, Swift was described as “Objective C without the C” by Apple’s VP of Software Engineering Craig Federighi.


Contents and Overview

Through 95+ video lectures and 4 hours of content, you will be lead through setting up Swift locally, the basics of the language, how it compares to other common languages (including Objective C), and how to get started on new projects.

The course is designed to provide a comprehensive introduction to Swift, so that you can begin experimenting right away. Upon completion, you will understand the foundations of Swift code and will be able to develop custom applications. You will also get experience working with Xcode's new .playground file. By enrolling in this course you will be months ahead of other developers attempting learn the new Swift programming language by navigating Apple's 500-page instructional document.

Course material is regularly refreshed to include all of the newest updates and information, and since you’re granted lifetime access upon registering, you can rely on this course to keep your Swift skills on the cutting edge.

What are the requirements?

  • Developer access to Xcode 6 beta
  • A Mac computer that can run Xcode 6
  • Enrolled in a paid developer program (iOS or Mac is fine)

What am I going to get from this course?

  • Over 140 lectures and 7.5 hours of content!
  • Video walkthroughs showing you how to use Swift
  • Work with Xcode's new .playground file

What is the target audience?

  • Objective-C developers wanting to learn Swift
  • New programmers wanting to learn Swift

Curriculum

Section 1: Swift - The Introduction
Welcome - What Will You Learn from This Course
01:08
05:55

You can download Xcode for free now! You still have to register as a developer with Apple but follow the link on this blog https://developer.apple.com/swift/blog/

Link to Swift eBook by Apple

Another eBook Apple has released!

Section 2: The Basics
Constants and Variables
07:05
03:12

A lot of the information in this lecture was covered in the previous lecture but I wanted to have this separate lecture to really drive home the value of Unicode for naming variables. Feel free to skip!

Type annotations
01:54
Comments
01:53
Semi-colons
01:22
Integers
02:38
Type Aliases
01:59
Booleans
01:42
Tuples
03:30
Floating Point Numbers
02:16
Optionals
04:54
Numeric Literals
01:58
Numeric Type Conversion
03:56
Assertions
02:30
The Basics - Quiz
5 questions
Challenge
01:40
Answers
02:07
Section 3: Basic Operators
Intro
01:34
Assignment Operator
00:52
Arithmetic Operators
01:10
Remainder Operator
01:32
Increment and Decrement Operators
02:09
Compound Assignment Operators
01:56
Comparison Operators
01:22
Ternary Conditional Operators
01:19
Range Operators
04:56
Logical Operators
03:17
Basic Operators Quiz
5 questions
Basic Operators Challenge
00:25
Basic Operators Answers
04:05
Section 4: Strings and Characters
Intro
01:06
String Literals
01:58
Initializing an Empty String
00:44
String Mutability
00:56
Strings Are Value Types
01:13
Working with Characters
01:05
Counting Characters
00:20
Concatenating Strings and Characters
01:30
String Interpolation
01:12
Comparing Strings
01:49
Uppercase and Lowercase Strings
00:28
Unicode
02:16
Strings and Characters Quiz
5 questions
Strings and Characters Challenge
00:44
Strings and Characters Answers
03:19
Section 5: Collection Types
Dictionary Literals
02:16
Intro
01:11
Changes In Arrays/Dictionaries
03:08
Arrays
01:15
Array Literals
01:36
Accessing and Modifying an Array
06:41
Iterating Over an Array
03:07
Creating and Initializing an Array
03:08
Dictionaries
02:45
Accessing and Modifying a Dictionary
04:27
Iterating Over a Dictionary
03:17
Creating an Empty Dictionary
01:22
Mutability of Collections
02:17
Collection Types Quiz
5 questions
Collection Types Challenge
00:21
Collection Types Answers
03:10
Section 6: Control Flow
Intro
00:27
For-In Loops
07:24
For-Conditional-Increment Loops
03:06
While Loops
04:17
If Statements
02:22
Switch Statements
04:26
Switch Statements and Tuples
04:13
Value Bindings
03:46
Where Clause
02:56
Continue
02:27
Break
03:57
Fallthrough
02:01
Labeled Statements
02:53
Control Flow Quiz
5 questions
Control Flow Challenge
00:35
Control Flow Answers
04:12
Section 7: Functions
Intro
09:23
Return Values
05:06
External Parameter Names
04:58
Default Parameter Values
06:50
Variadic Parameters
03:05
Constant and Variable Parameters
01:34
In-Out Parameters
05:01
Function Types
02:42
Function Types as Parameter Types
02:21
Function Types as Return Types
02:07
Nested Functions
03:19
Functions Quiz
5 questions
Functions Challenge
00:58
Functions Answers
04:55
Section 8: Closures
Closures Intro
00:58
Closures Expressions
11:45
Trailing Closures
02:43
Capturing Values
05:21
Closures are Reference Types
01:58
Closures Quiz
2 questions
Closures Challenge
00:21
Closures Answers
02:31
Section 9: Enumerations
Enumeration Syntax
04:57
Enumerations With a Switch Statement
03:46
Associated Values
04:00
Raw Values
06:57
Enumerations
3 questions
Enumerations Challenge
00:35
Enumerations Answers
02:13
Section 10: Classes and Structures
Classes and Structures Quiz
4 questions
Section 11: Properties
Properties Quiz
4 questions

Instructor Biography

Nick Walter , Swift Developer

I'm Nick Walter, an iOS developer that has been focused on mobile app design and creation for over 3 years. My involvement in the iOS community started off with a bang, and in 2013 I was one of 25 students worldwide to be invited to Apple's "Cocoa Camp." Within my community, I am also co-president of an Apple developer group called "Cocoa Heads."

I've always had an itch to make things, but growing up in a small town I had limited access to programming resources. This frustration drove my early interest in online education. After experimenting with various companies, learning styles, and teaching processes, I've adopted the best strategies and used them in my courses. My experience as an online student has directly influenced my teaching style, and I am now proud to help students all over the world with their online learning goals.

Since the announcement of the new Swift programming language by Apple, I have buried myself in the Apple documentation and any online resource that is available. In my first Swift course, I provide students with a detailed explanation of the topics and skills needed to learn Swift, an overview of the basic features of the new language, and get you started to begin building your first products.

Prior to teaching the internet's first course on Swift, I have created 5 iOS apps from scratch that are currently live in the App Store and being used by thousands of users worldwide. Using my experience launching my own apps, I'll walk you through the shortcuts that can save you time and frustration from having to teach yourself.

Instructor Biography

Kyle Clegg , iOS Developer

I am a Utah based iOS developer that enjoys creating apps with Objective-C and Swift. I've published 5+ apps to both the App Store and Google Play Store, building up a wide range of mobile development skills across both platforms in the process. I am passionate about writing truly great apps, the kind that care about details beyond just a great UI, from the UX down to each line of code.

I graduated in June 2014 as a Master of Information Systems with a minor in Computer Science. During my time in school I participated in two summer internships as an app developer and worked as a TA for the iOS programming class after having taken the class myself the previous year. I was also able to attend WWDC and Cocoa Camp during the summer of 2013. These experiences have given me numerous opportunities to learn about iOS development from the people that created it! I enjoy learning about iOS development as well as helping others do the same.

Having some educational background in programming, but none in Apple's world, I identify with self-taught programmers. There's nothing like the first time you code something and run it on your phone. It's a feeling of empowerment knowing that with the right idea, focus, and delivery you could be the next person to create an awesome app loved by millions.

A couple of years ago I was a complete noob trying to learn iOS development. The blog posts, YouTube vids, and tutorials sites helped me SO much, as I preferred the hands-on approach of doing as opposed to digging through dense programming books that often lacked any real-world applicable example. I'm stoked to be involved in teaching a Swift course and hope to help many of you learn Swift and get on your way to writing awesome apps!

Reviews

Average Rating
4.0
Details
  1. 5 Stars
    41
  2. 4 Stars
    9
  3. 3 Stars
    6
  4. 2 Stars
    4
  5. 1 Stars
    10
    • Mirko Cukich

    Simply the best

    Nick teaches some of the best classes on Udemy. If you really want to learn how to code and get your money's worth don't pass up the chance to take his class. He will teach you everything you need to get going and he is also always happy to answer your questions.

    • Kirk Quesnelle

    Great Introduction to Swift. Awesome teaching style

    This course was a great introduction to Swift. Well worth the money. I love that the author has also taken the time to continue adding to the course. Will likely take a look at some of the other courses he has! Thanks!

    • Mike Oconnor

    AWESOME

    the material presented here about learning swift is fantastic!

    • Mandayam Srinivasan

    Awesome Course

    Although I completed only about 35 lectures. Thus far the course is awesome and I believe that it will continue to be so through the end of the course. All the lectures by Nick are clear, succinct and can be easily understood. I've been interacting with Nick and I've found him to be a very cheerful and also seems to love teaching the course. BTW the video quality is good. Would love for it to be better. Overall, the course thus far has been easy to understand and the teacher (Nick) has been doing a great job. Regards, - Srini

    • Artem Boiko

    So disappointed

    Really not as described. Simply reading of Apple Swift guide. Better go and purchase a course by Rob Percival

Show more reviews

What you get with this course

30 day money back guarantee

Lifetime access

Available on desktop, iOS and Android

Certificate of completion

Join the biggest student community

5,400,000

Hours of video content

21,000,000

Course enrollment

6,300,000

Students

Ready to start learning?
Preview this course