Do you want to be able to program apps for the Apple iPhone, iPad, Mac, and Watch? If so, you're going to need to understand the Swift programming language. Swift is the future of iOS development and is quickly replacing Objective-C as the go to language for Apple. If you want to become or remain competitive in the mobile app development area you'll need to know at least the basics.
This course is designed to teach people new to programming or current programmers looking to learn Swift 1.2 quickly and competently. This course doesn't teach you how to make apps, although we do create one app, it teaches you the programming fundamentals and syntax fast so you can learn the app creation process more quickly.
Throughout the course you can expect to learn all the Swift basics like Strings, Numbers, Optionals, Arrays, Dictionaries, Functions, Sets, Structures, Classes and much more.
This is designed to be a quick course that can be completed in just a couple days, depending on your pace, and will always be updated to the current code syntax, currently Swift 1.2 supporting Xcode 6.3.2 and higher.
This video quickly explains both what you will, and will not learn in this course, as well as the course requirements.
This video is about the course instructor.
In this video you will gain an understanding of how Xcode playgrounds works as well as being properly introduced to the basic building blocks of the Swift language; variables and constants.
A short quiz about variables and constants.
In this video you will learn about the types of numbers available in Swift as well as being introduced to the basic operators. Number types include integers, floats, and doubles.
Let us see just how well you know your numbers.
In this video you will learn how to control the flow of your code using if/else, switch, and the ternary operator.
Let's do a quick check on conditionals, like if / else and switch statements.
This video contains all you need to know as a beginner about for and while loops, which allow you to quickly iterate over sets of data.
A quick check on for, while, and do while loops.
In this video you will learn about Swift functions and how they are necessary to make your code operate smoothly and efficiently.
Testing your functionality.
In this video you will learn about arrays, the most common collection type in Swift.
Do you know about arrays?
In this video you will learn about the key / value pair collection type - dictionaries, and how they differ from arrays.
Are we at a library or something, what's with these dictionaries all over the place?
Sets where just recently introduced into the Swift language, learn what sets them apart from the other two collection types.
Sets are new as of Swift 1.2, but you already know all about them.
Tuples aren't available in every language, but when they are, they become a very versatile way to pass data around. We'll be looking at how tuples work in Swift within this video.
Demystifying the optional, there is no reason to be confused about this little distraction (or is it a gem?).
Optionals aren't exactly as optional as you might think.
This video explores enumerations, a type that cannot be avoided in Swift, since every Framework written for the language uses them, and you should too.
Enumerations are everywhere within Swift!
Truth be told closures are just a function, or technically, functions are just a closure. This video explains this connection.
Let's talk about this and get some closure.
Getters and setters are a type of property observer, and they can really make your life much easier, watch this video to learn more.
Ready, set, get.
Classes may just be the most important part of understanding Swift and how everything connects together. After all, classes are objects, and can create objects, what else could be more important in an object oriented programming language?
A peek at what we learned about classes.
Getting a little more in depth into classes, in this video we look at class access levels and computed properties to gain a better understanding of just how powerful they are.
Were you actually listening?
Without inheritance a class just wouldn't be the same. Watch this video to learn about subclasses.
Subclasses are not sub-standard.
In many languages structures are just a simple container, but structures in Swift are almost as powerful as classes! But let us not get ahead of ourselves, they're still design for more simple data types.
Structures Q and A.
This video will introduce you to the Xcode interface and show you the ropes of navigating around the Xcode interactive development environment.
Xcode, the interactive development environment for developing, testing, and deploying Apple apps.
To really display how Xcode works we'll need to make an app, and that's just what we do in this video.
A continuation from the previous video, here we complete and test our Answer Ball app.
A couple questions about our experience developing the Answer Ball sample application.
Let me be the first to congratulate you on learning the basics of the Swift programming language! Now, are you ready to become a developer for Apple?
I've been developing web sites and programming since 1999, I know about a dozen different programming languages and I am an expert in Internet Security.
Out of all the languages I know the newcomer Swift is one of my favorites. I began studying the language the day the documents where released to the world by Apple and I have yet to stop. In my courses I apply the concepts I've learned in a language that is clear and understandable to even non-programmers. I understand learning a new language sometimes has a high learning curve and I minimize this obstacle by adapting proven teaching methods and reinforcement messages to make sure my students fully understand the material.
In 2010 I fulfilled my dream and became a successful full time web designer and app developer creating my own small business XBSJASON TECH SERVICES. I spend my time developing web sites, creating Enterprise applications, making custom code solutions, and evaluating and advising on security thresholds for clients in the New Jersey, New York metro area.
I love being creative and solving problems, programming and web design allow for this passion quite nicely. I also love teaching, I think information and knowledge is power, and we should never stop learning new things.