Learn Swift Fast (2020) - Full Course For Beginners
Вставка
- Опубліковано 16 тра 2024
- If you want to learn swift fast, this is the course for you! Learn Swift programming with this 3 hour course that will take you from beginner to a solid understanding of how to program in Swift!
This Swift tutorial is perfect even for beginners with no programming experience! You'll be taken through the basics and build up skills layer by layer.
🚨 SPECIAL CWC+ OFFER FOR UA-cam:
cwc.to/youtubeoffer
This Swift course also comes with notes, cheatsheets, exercises and solutions which you can download here:
codewithchris.com/swift-tutor...
𝗖𝗵𝗮𝗽𝘁𝗲𝗿𝘀 & 𝗧𝗶𝗺𝗲𝘀𝘁𝗮𝗺𝗽𝘀
-------------------------------------
00:00 Intro
0:20 Lesson 1 - Start Here
21:50 Lesson 2 - Data Types
29:50 Lesson 3 - If Statements
46:04 Lesson 4 - Switch Statements
53:17 Lesson 5 - Loops (Part 1)
1:03:19 Lesson 6 - Loops (Part 2)
1:11:50 Lesson 7 - Functions (Part 1)
1:19:16 Lesson 8 - Functions (Part 2)
1:32:02 Lesson 9 - Classes
1:42:28 Lesson 10 - Classes Inheritance
1:51:34 Lesson 11 - UI Kit
1:57:08 Lesson 12 - Initializers
2:06:23 Lesson 13 - Optionals
2:27:59 Lesson 14 - Properties
2:34:42 Lesson 15 - Designated & Convenience Initializers
2:42:42 Lesson 16 - Arrays
2:58:38 Lesson 17 -Dictionaries
This course will teach you using Swift 5 and Xcode.
_________________
FREE RESOURCES (download links)
Resources, Code, Bonus Videos and Recap Notes:
📓 codewithchris.com/swift-tutor...
MY FREE ONLINE COURSE:
⚡ How to make an app in 14 days - cwc.to/14days
CWC+ PROGRAM:
👩💻 All our courses in a learning path - cwc.to/plus
WEEKLY UPDATES VIA EMAIL:
✉️ Every Saturday, receive an email digest of new content - cwc.to/newsletter
CONNECT:
🌍 Website - codewithchris.com
😺 GitHub - github.com/codewithchris
📸 Instagram - / codewithchris
🐦 Twitter - / codewithchris
ABOUT CODEWITHCHRIS:
Hi I’m Chris! I’m dedicated to teaching fundamentals about how to make an app. This is important if you’re trying to land an iOS job, be a freelancer, increase or start a business with an app idea. On this channel and my website, you'll find a ton of free resources and tutorials to aid you on your journey to learn iOS development. Many people have learned to code and build apps on their own! cwc.to/reviews
#LearnSwift #SwiftTutorial #CodeWithChris
Contents:
0:20 Lesson 1: Start Here
21:50 Lesson 2: Data Types
29:50 Lesson 3: If Statements
46:04 Lesson 4: Switch Statements
53:17 Lesson 5: Loops (Part 1)
1:03:19 Lesson 6: Loops (Part 2)
1:11:50 Lesson 7: Functions (Part 1)
1:19:16 Lesson 8: Functions (Part 2)
1:32:02 Lesson 9: Classes
1:42:28 Lesson 10: Classes Inheritance
1:51:34 Lesson 11: UI Kit
1:57:08 Lesson 12: Initializers
2:06:23 Lesson 13: Optionals
2:27:59 Lesson 14: Properties
2:34:42 Lesson 15: Designated & Convenience Initializers
2:42:42 Lesson 16: Arrays
2:58:38 Lesson 17: Dictionaries
Not all hero wear capes! (I had the list ready... I forgot! 🤷🏻♂️)
Added to video description and tagged you in! Enjoy the great Karma coming your way!
@AdrienVillez
CodeWithChris Thank you, Chris! It was a pleasure to do it, a small return for the great videos you’re uploading!
My man! Great video and great lessons!
Thank you for your list. It really helps a lot.
Great job
As a fellow Asian, words cannot express how happy it makes me that we have our own Bob Ross. Learned so much from this. Love you Chris!
Thanks a ton, John! So blessed to have you around! :-) -Arthur
@John Taylor exactly, I knew the teaching style reminded me of someone, and all this time it was Bob Ross 🖼
Thank you very much for doing this, was waiting patiently for the series to be released one by one but this will be much better! Thanks again for taking the time to make this whole guide i really appreciate it.
From what we have seen, people enjoy more one single continuous video rather than clicking around different ones.
You can still find the individual videos on the channel tho.
Warm up the pop corns!
@AdrienVillez
This is the best code learning video I have ever come across! Kudos Chris. You rock!
Wow, thanks!
- Kat
I highly appreciate your work. This work is priceless!
Thank you for the kind comments and watching with us!
@AdrienVillez
3 Hours Of Video Content For Free!! i really Apriciate Brother 😍
Who said life was expensive!!!!!!! (Just let the ads run, you know, like that I can have some bread tonight!)
@AdrienVillez
@@CodeWithChris love you man 😍
@@varshathipathi5368 ikr
Thank you, Chris. This really helped me to get started in Swift!
Glad this tutorial has been helpful! Thanks for watching!
-Kat
Amazing work Chris, I really appreciate it!
Our pleasure!
- Kat
Thank you very much Chris. for this amazing tutorial. i enjoyed very much.
Welcome! Thanks for watching.
-Kat
Thank you Chris, I've just finished it. The content is very concise, and I really love it.
Congratulations!! Glad you enjoyed the full course!
-Kat
@@CodeWithChris Can you tell me what I should do next? At the moment I am trying to follow your beginner app tutorial.
Man, I feel like I've finally found a teacher who I can follow. It seems like every other teacher that's teaching code out there doesn't really have the knack to teach. They move too fast and they leave you behind. But you speak slowly and you make it so easy to follow without leaving out any details. Thanks Chris!!
We can't thank you enough! :-) -Arthur
and how its goin? do you work as a swift dev?
Thank you so much Chris, this course really helps me!
You're very welcome!
- Kat
Finished it in one go. Thank you for your great work, will continue to watch your helpful videos. 👌🏻
Thank you! 🙌
- Kat
You're a great teacher, I'm on lesson 4 and can't believe that this resource is free. Thanks so much!
You are amazing! Thanks for your support as always! :-) -Arthur
Thank you so much for this video! Your approach is succinct and professional, and appreciated!
You are so welcome!
- Kat
Chris, thank you again for your effort. Not only is it super useful, but also entertaining especially the part that you knew you wouldn't have run the XCode in while loop. Your sacrifice really cracked me up. :)
You're so, so welcome! Thanks for learning with us! -Arthur
Thanks Chris! Appreciate the work, it really helped me grasp the fundamentals of Swift. 😄
You are so welcome, Alex! :-) Appreciate your support! :-) -Arthur
Great content, very easy to understand as a beginner. Definitely learned a lot!
Glad we can help! We are here for all beginners, even if you never had any programming course before or even if you never owned any computer before, our goal is to make it easy to start!
@AdrienVillez
Wow. 3 hours of premium content for free. I highly appreciate your work. Keep it up! :)
Thank you for the "Premium"!! 😍
@AdrienVillez
You are an absolute legend Chris!
Thank you! 🙌
- Kat
I must say that after watching tons of tuts and not understanding a thing you are a great teacher. Thanks!
So kind, thank you so, so much! -Arthur
You are amazing! I find it so well explained and I am very grateful to you!
Thanks 🙏
We are also grateful to you for your support! Keep on going! -Arthur
Great Video! Especially for beginners. Keep it up man!
Cheers, thank you so much for learning with us! :) -Arthur
You’re such a natural teacher. Your explanations are superb. Thank you.
Thank you so much, Kemal! Grateful for your kind people like you! -Arthur
This is by far one of the best Programming videos I ever seen
Thank you!! 🙌🥳
- Kat
Chris you are one of the best coding teacher I've come across online. Your style of explaining things makes the Swift seem very understandable even to a not so bright person like myself.
Also, I have noticed that while the code in the tutorial executes almost immediately, it takes a few seconds on my system. I am using a Macbook Air 2015. I am not entirely sure if hardware specs are the reason behind slow-execution of basic blocks of code.
Hello, yes macbook air 2015 is a bit slow but its not that bad actually so expect a slight delay when loading things,, also theres cache, if you already loaded something it gets saved to cache so it will be faster to load the next time you run it, if you are new you will experience a lot of things loading because its your first time to run an app or even just playgrounds so bear with it and it will get better in the future
- Francis
Thank You! Great resource and well done !!!
Thanks a lot!!
-Kat
Thank you Chris .You are a great teacher😍. Fell in love with Programming in Swift with your clear explanations 😇. Thanks once again for teaching programming in a fun way.
You're very welcome!
- Kat
@@CodeWithChris you have added many tutorial for beginner but I'm confused to where to start I mean which one currently I seen 3 videos of yours
FINALLY, a helpful Swift tutorial/crash course! Saved me lots of time, effort and money looking for Swift instructors! Just got my MacBook Pro and I wanted to do something productive with it, maybe building apps! I am a student from Singapore 🇸🇬 and it was great learning from you! 😍
Your comment made our day. Thank you so, so much! :) -Arthur
I'm a newbie to programing language but learn a lot from your tutorial video and 14 days Swift lessons.
The instructions are clear and easy to learn.
Thanks a lot:)
Thank you so much for making our day! Happy to have you here! :-) -Arthur
besides that this tutorial is super helpful and easy to understand, there is such a nice atmosphere in the comments, something you don't see very often.
PS: even if you wouldnt keep up with this quality of content, it would still be amazing
Thank you! 🙌
-Kat
this was amazing, thanks so much !
Thanks to you too for watching 😊
-Kat
Wow, love this! Very impressed with your content also your touch typing skills! Would you recommend any courses for touch typing?
Thank you! There are plenty online like typingclub.com, keybr.com, or sense-lang.org
-Kat
you are a very talented teacher. I never really understood how classes worked until now. super duper clear. all your examples are very easy to follow... thank you so much
Thanks for learning with us! It's really encouraging to hear your feedback. 😊🙌
-Kat
I appreciate your work. Thank you. Helped a lot to know Swift Stuffs. ^ ^
Glad to hear! You're very welcome!
- Kat
This was a great lesson. Thanks for the kick start
Yay, glad you liked it Terry! Keep on going! :-) -Arthur
i've paused at lesson 4 and will pickup more tomorrow :) I just want to say thank you for being a great guide in my swift journey. You are awesome.
Yes, take breaks/pauses when you need to. Thank you for learning with us! -Arthur
Thank you Chris for making these videos very helpful you are working wonders
You are so welcome, Leo! Keep on going! :-) -Arthur
It feels so satisfying to finish watching and learning the whole 3 hour video thank you for giving premium content for free !!!
Happy to hear that! It's our pleasure. :)
- Kat
your the one and only best teacher for beginners. Thank you so much chris..... it is very helpful to me.
Glad to know you found it very helpful! Thanks for your kind words!
Kat
could you help me , detail about API calling, JSON serialization and deserilization topics.
All content no filler. Awesome tutorial.
We appreciate your support! Thank you! -Arthur
Thankx for breaking it down.. great tutorial for beginners
Glad it was helpful! - Pat
I am a Data Analyst basicly and for 2 years I cannot understood OOP mechanics, how classes works. Here I got it intuitively and simple. Thanks a lot!
We're humbled, Nikita! Thank you for your support! :-) -Arthur
Thank u, i spent the morning transitioning my py mind into a swift mindset thanks 2 u sir! Good vid
You're so welcome! Glad to have you here! -Arthur
You’ve been very helpful bro!
Always happy to help! Thank you for watching! - Pat
Great lessons , straight to the point !
I have a question, can I add more parameters when I override a function (or init) ?
"Hello, yes its more commonly refered to as an overload.. so something like init(name),, but another one is init(name,age).. something like that
- Francis"
Your lessons are awesome , its really comfortable to follow and learn. I dont know if u are planing to add one more lesson video like this for swift. Thanks a lot Chris , i found this really learnable.
Yay, we're happy to know this, Stefan! For more updated lessons, go here: codewithchris.com/start :) -Arthur
I saved my money and time for searching a teacher because this is enough and more understandable than other teachers .
Thanks Chris for your efforts
Wow, your comment made our day. Thank you so, so much! -Arthur
Awesome tutorial , thx for the video ! :)
Thanks a lot!
-Kat
thank you for offering awesome lectures. :)
Most welcome!
- Kat
Bro your explanations are soooooooooo good
Shukran! Thank you so, so much! :) -Arthur
Thank you very much I’m 12 years old learning how to program and you were my guide in all that time😄😄😄😄😃Thank you
Great to hear! Thanks for learning with us!
- Kat
The recap really helps thanks :D
Thanks for watching this tutorial!
-Kat
Overwhelmed to see your example at 2.16 minutes. Awesome explanation
Thank you so, so much! Makes all the hard work so worth it. :-) -Arthur
Thank you for this!
You're welcome!
- Kat
Played the video at 2x speed. Now learning even faster.
Typing along will help as well! :)
- Kat
Hey thank for this video. Awesome job!!!
You are so welcome! :-) -Arthur
I actually love you so much dude, you have taught me so much, thank you so much :)))
You're so welcome! We'll keep on getting better! :-) -Arthur
thanks, you are Great Teacher!
And you are a great student! :-) -Arthur
Chris, I learnt a lot thank you
You are so welcome! Enjoy!
I searched a lot for learning and I found that CodeWithChris (Chris) is the best teacher for Swift programming & iOS development.
Thank you! 🙌
- Kat
Thank you. Appreciate you hard work
We appreciate you more. Thanks for joining us in this learning journey! :-) -Arthur
Thank you for this video. I am learning Swift to become an iOS developer, and it's easier when I can hear the information as well as read. So between using websites and your videos, I think I'll be very successful.
You WILL be very successful. We believe in ya, cheering for ya! :-) -Arthur
Thank you very much Mr.Chris
So I don't know in english but i can studying follow you.
You are first time for me, You make to know Swift Programing
I come from Thailand.
Apologize for My English is not professional.
Hello Suebpong! We're so happy to have you here, thanks for the support! Just keep going and stay motivated!
-Kat
Excellent tutorial!!!
Thank you for the support!! :) - Pat
You can just click the yellow triangle to see the hole message of a warning or for a error you can click the red circle to see the hole message 🙃🙃
Thanks for mentioning that!
-Kat
Hey Chris! I've been studying diligently all week! Quick question: For challenge 14: it involves replacing our variables with arrays in order to make it more concise. However, I feel like it's actually much more confusing to use arrays in this situation, considering that each time you use one you'd also have to remember to leave a note describing which property it is, otherwise you'd be a little lost when you were looking over the code. I think the way we had it at first looked the best, but I'm also EXTREMELY new to coding.
So I guess my question is: was the reasoning behind challenge 14 that you just wanted us to practice using arrays? Or did you genuinely think that it improved the code and made it more concise? I'd really love to hear your thoughts. Thanks so much!!
Hello, i have to agree that i might be more confusing in this case, but the usual structure for databases are like the example.. where its from a database when put in an array with different indexs as the "columns". the better version for this is actually the use of dictionary so something like values["boredom"], values["hunger"], etc.. see how this makes more sense?
so yeah doing it array version is more like practice
- Francis
Thanks Chris! You are a good tutor.
And you are a great student! Thanks for the support! -Arthur
Chris thank you so much my brother,Bless You
Bless you more, Chilton! I am cheering for you! :-)
Wow Great Tutorial, thank you 👌🏼
Cheers, thank you so so much! -Arthur
My dude! Good stuff, do you have some advanced Swift tutorials?
I recommend checking out our Firebase tutorials ua-cam.com/play/PLMRqhzcHGw1ZsFRLAWa_Axx7daXteynjh.html
-Kat
dude thank you so much ❤️❤️
You're more than welcome, Naomi! Enjoy! :) -Arthur
You are the best Chris 😀
Thank you! 🙌
- Kat
Hey Chris. Thank you so much for this comprehensive beginner's course! I do have one issue, however. While i find myself understanding the things you are going through in the video, I'm really struggling to understand the exercises you have made accessible to us. I feel like I can't really apply any of the information you taught us. Do you have any tips for me? Do you think you could make a video that goes through some of these exercises, explaining them so we can follow along?
var thanks = "thank you very much!"
print(thanks)
"Hello, sadly we wont have videos about covering those excercises, best you can probably do is it just randomly experiment them on your own, just practice and try to understand what each part is for
- Francis"
Thank you for the videos. I am in the 8th lesson. They are easy to understand.
One request can you make the exercise challenges so that we can re-use our previous lesson's knowledge over and over again. I believe that your exercises are the best part of the video.
Thanks for letting us know and learning with us! -Arthur
Nice teaching bud, pleasant 🙏
Thank you for learning with us!
- Kat
I love this so much! Thank you for making this! I need to learn swift fast for a college assignment(class teacher sucks at teaching and is very boring so I don't pay attention) and this is really helpful. I'm still learning as I'm typing and my assignment submission is in 18 hours and it's 3:23 AM right now and I hope I can do it LMAO! I'll update ya'll how I did lol Wish me luck!
All the best, Simranjit! You got this. Thanks for learning with us, means a lot. Cheering for you! :) -Arthur
@@CodeWithChris Thank you so much!! 🥰
So update: I did the assignment and it worked pretty well and all because of you!! 🙏
I love your way of teaching it's way better than any other programming channel videos I've seen. 👏
I learned fast and completed it in time. Thanks again! You saved my life and gained a new subscriber!! 🙃
Awesome tut Chris sir
You're welcome! Thanks for dropping by! :-) -Arthur
Thanks a lot for this 😃
You are so welcome! -Arthur
i really wish i could like this video 100 times but i think a thank you is the best i have.
One of the kindest comments we've ever read. Grateful for your, Jackson! We're happy to have you here. :-) -Arthur
I really appreciate that. thanks boss
We appreciate you more! :-) -Arthur
Have only yet watched 1h but this is a great tutorial I have done other languages earlier like c# and python so most of the things I've watched I already know but you are great at explaining and I think that any beginner would understand because you are super good at explaining. Gonna keep on watching and hopefully one day ill master swift
Thank you so much for your kind words! :-) -Arthur
@@CodeWithChris Hahaha the fun thing is I completed the video and then when onto doing things in xCode and my computer was way to slow for the simulator so changed to flutter instead
This is very helpful!
Glad to know! Keep on having fun. :-) -Arthur
I just watched 90 minutes of the 2018 version and now gotta rewatch this one
Sorry about that, but you'll get the hang of it soon! :-) -Arthur
great video. thanks!
Glad you liked it!
- Kat
You are the best!
Grateful for your support, Advay! :-) -Arthur
I've been programming in Php and Javascript for years now, however this is my first ever Swift course, trust me I love it, it feels natural. I love where the infinite loop crashed the playground. 1H:05MIN there about . The sound effects makes it funnier. Anyways wonderful tutorials. Thanks..
Thank you so much for learning with us, Gilles! -Arthur
Thank you very very much.
You are welcome
@AdrienVillez
A comment regarding the challenge for lesson 8 (functions pt. 2): It says "don't forget to type cast steps", which I found confusing as there was no mention of typecasting in the lesson. I eventually figured out that this probably refers to converting the integer value >steps< to a string by writing String(steps), but it took a minute. In the beginning I thought it meant I had to type "cast steps", it just didn't make sense.
This series is fantastic, though. You are an excellent teacher and I am really enjoying the lessons! The challenges work great for cementing the concepts into my aching brain.
Sorry for the confusion! I also want to let you know that since we are limited on UA-cam when it comes to coding and helping, we made a brand new Code Crew Community to gather all of our students: bit.ly/CodeCrewCommunity
Would love to see you there!
@AdrienVillez
thumbs-upped the video for the Optional explanation. Now I understand how to use nullable reference types in C#.
Awesome, thanks for watching! :-) -Arthur
thanks It really helped
Awesome to know, thank you! -Arthur
Wow ! This is Gold for Beginners .
We are 300% focused on Beginners! If you have any questions, please come by the Community: bit.ly/CodeCrewCommunity
@AdrienVillez
@@CodeWithChris Thanks , you are doing great Chris :)
Hi Chris, do we have an updated version just like this but instead of UIKit, SwifUI. Thanks!
Hello @LlamasandBudgets,
None that I know off. But I will ask Chris about this.
--Joash
This is, by far, the best introduction to a computer programming language I have ever seen. I love that you disassociated all of this from app development and just focused on the language itself. As a programmer with 25 years just getting into Apple development, this was a great primer for me to get up and running with the Swift language. Was some of the content too basic when it came to concepts for me? Of course, but it is great for someone just learning programming.
Thank you for providing this content for free for the greater community to learn. This is a great foundation for me as I will now go and learn how to create actual apps with a strong understanding of the Swift language!
What an awesome comment! It made our day! Thanks for learning with us, Bob! The best is yet to come for you. :-) -Arthur
This Is Great!
Thank you! 🙌🥳
- Kat
hi chris! Thaks for the job that you made here, i really appreciate.
in Initializers lesson i'm so confused, i don't know what for do we have to use the init function. and i didn't understand about the self thing. i really hope you can help me please!
Same Dude.
Hello, check out our full beginners playlist so you can have a video per video of the concepts, lesson 12 is initializers ua-cam.com/play/PLMRqhzcHGw1b89DXHOVA77ozWXWmuBkWX.html
as for the self, it is basically calling youself (or the class you are using now) and have it perform a function or get a value from itself.
so its like saying, "me, go fetch me some water" before you do the job of getting a glass of water for yourself
- Francis
This process involves setting an initial value for each stored property on that instance and performing any other setup or initialization that's required before the new instance is ready for use. An initializer is like an instance method (recall instance of method is a function within a class) with no parameters, written using the key-word init. The use of the initializer is to make sure that default values of properties are already setup before an instance of a class (meaning object) is called. Recall that when you ask for a function to be executed, types of executing a function would ask for a value or not. Functions asking values are executed by feeding the functions the desired parameters funcName(arg: DataType), funcName(par:dataType), funcName(dataType) ony if argument is an "_". Functions not needing values is executed through funcName(). Going back to the init function, it's job is to make sure that properties (variables inside a class) would have a default value, this would then make sure that once an object is called (which is at the end of the code), initial values are already setup, making the program free from crashing. An example of this is the Fareignheight, initial value is 32. Note that initializers are functions and that a class can have many initializers. Initializers can have parameters init(arg:dataType) or init(par:dataType), init(dataType) only if argument is an "_".
This is how I understood it, not sure if it is correct
Thanks a lot. I'm just begining. I agree with the Bob Ross comment. Thanks so so so much.
You're so welcome, Ben! Have fun! :-) -Arthur
😀 I really like the music at the beginning
Cool! Thanks. :)
- Kat
excellent..thank you.
You are welcome! - Pat
Thank you.
You're welcome!
- Kat