Swift Optionals Tutorial - Unwrapping - Guard, If Let, Chaining, Force

  Переглядів 71,040

Sean Allen

Sean Allen

День тому

The next topic in my series on iOS Interview questions explains unwrapping Optionals in Swift. This iOS interview question was asked in most almost all interviews. In this Swift tutorial I'll explain if let, guard statements, optional chaining, and force unwrapping, using Xcode.
iOS Dev Courses - seanallen.teachable.com/
This is part of a series of videos about iOS interview questions in Swift. Check out the overview where I list and briefly discuss all the topics that are in this series:
• iOS Interview Question...
Optional Chaining Apple Doc
developer.apple.com/library/c...
Xcode Project Source Code:
www.dropbox.com/sh/rnx5gabo6s...
iOS Dev Courses:
seanallen.teachable.com/
Twitter:
Sean Allen - / seanallen_dev
Hired.com:
hired.com/x/1n01g
Book and learning recommendations that help out the channel if you decide to purchase (Affiliate Links):
Paul Hudson's Hacking With Swift:
gumroad.com/a/762098803
Donny Wals - Combine:
gumroad.com/a/909014131
Mark Moeyken’s SwiftUI Books:
www.bigmountainstudio.com/swiftui-views-book/fzc51
Objc.io Books (Thinking in SwiftUI & Advanced Swift):
gumroad.com/a/656585843
Ray Wenderlich Books:
store.raywenderlich.com/a/208...
#swift #softwaredeveloper #iosdeveloper

КОМЕНТАРІ: 194
@seanallen
@seanallen 4 роки тому
Watch Next - iOS Take Home Project - Job Interview Practice - Free Preview - ukposts.info/have/v-deo/hYN6mWiwbXyWxmw.html
@mrjekarpa
@mrjekarpa 5 років тому
There is a difference between ‚if let’ and ‚guard let‘, which should be mentioned: the ‚guard let‘ assignement will be available for the rest of the function, while the ‚if let‘ assignment is only available within the ‚if let‘ statement.
@Xaxxus
@Xaxxus 5 років тому
This is good to know.
@tanggu9510
@tanggu9510 4 роки тому
thanks for sharing too
@fakecubed
@fakecubed 4 роки тому
Yeah I learned about this recently, myself. It makes guard really attractive, adds in code clarity, especially when you are guarding against edge cases.
@rebeloper
@rebeloper 4 роки тому
I always use guard let for error handling and unwrapping optionals in general. I rarely have to not 'return' if an optional if nil.
@raskolnikov6347
@raskolnikov6347 4 роки тому
oohhhh that's why it's called "guard"
@DikkeSnoek
@DikkeSnoek 2 роки тому
First time that I understand Apple's complicated Swift Optionals.
@seanallen
@seanallen 2 роки тому
Glad you found it helpful!
@DikkeSnoek
@DikkeSnoek 2 роки тому
@@seanallen From the beginning I've found Swift one of the most complicated programming languages (if let guard, try, catch, _ names, ??, ?, !, $0) I've ever seen. Even Objective C was more logical. I understand that you need to clear your memory from objects, etc. but why with ??, ?, !, guards, try?. I hope that Apple will create a more accessable language fore a wide audience in the near future.
@JakeCrawfordOfficial
@JakeCrawfordOfficial 6 років тому
Your videos are literally the most helpful swift tutorials on UKposts. By far.
@seanallen
@seanallen 6 років тому
Thanks Jake! Much appreciated. Happy to hear I'm helping out.
@kwokhowlou219
@kwokhowlou219 3 роки тому
totally worth my 11 minutes of watching your video and you explain it very well!
@erkkasep
@erkkasep 2 роки тому
The most comprehensive video I have seen on UKposts. Thanks, Sean!
@vphong2611
@vphong2611 4 роки тому
I have read many documents on Optionals but none acknowledge me only after watching your video. I really appreciate your effort, time and explanation sir! Really amazing!
@seanallen
@seanallen 4 роки тому
Thanks! Glad you like my teaching style 😀
@hoxorious
@hoxorious 5 років тому
I'm new to iOS development and these topics were actually so frustrating for me. But now thanks to you, I fully understand it. Thanks!
@seanallen
@seanallen 5 років тому
That's awesome to hear, AliReza 👍. Happy they have been helpful.
@ReadePlunkett27
@ReadePlunkett27 6 років тому
Great video! I just found your channel yesterday and have not stopped watching your videos since. They are extremely motivating. Keep it up! :D
@seanallen
@seanallen 6 років тому
That's awesome to hear, Reade! Glad you're enjoying the channel. Happy to help if I can!
@al.6668
@al.6668 2 роки тому
Very helpful!! Found this video today and I have been watching a lot of them and learned a lot! Thank you
@seanallen
@seanallen 2 роки тому
These are a little older now, but they still hold up (which is why I haven't remade them). Glad you're enjoying the channel! These were some of my first videos... I like to think my recent ones are even better 😀
@mattkruckeberg9798
@mattkruckeberg9798 4 роки тому
Came for solidifying optional chaining, commenting for the recap lol. I was looking for the difference between if let and guard let in regards to why guard let is used in functions and not if let. Thanks Sean!
@AkbarKhan-kq7ru
@AkbarKhan-kq7ru 5 років тому
superb Sean Allen this is the best example for optionals i ever saw
@ajcutler54
@ajcutler54 3 роки тому
Sean: Thanks so much for this tutorial. It has helped me avoid crashes in my app.
@ITProjectManagerMan
@ITProjectManagerMan 5 років тому
Well done, clear concise explanation. Love your video’s!
@seanallen
@seanallen 5 років тому
Thanks Jeff! Glad you like them 😀
@ryankanno2562
@ryankanno2562 4 роки тому
By far the best explanation on this topic out there! Thank you for this great video!
@seanallen
@seanallen 4 роки тому
Glad you enjoyed it!
@nasirshinnx6798
@nasirshinnx6798 6 років тому
Was never soo clear about all of these concepts. Thank you soo much. Great Job.
@seanallen
@seanallen 6 років тому
Glad it helped, Nasir!
@atalaguitare13
@atalaguitare13 5 років тому
Wow , thanks so much Sean, I follow you for a while and i have an iOS interview in 2 days and you explain everything so well, optionals and claass vs structures. Your explanations are so clear!! You deserve more subscirbers. Thanks !
@seanallen
@seanallen 5 років тому
Thanks for the kind words! Best of luck in the interview!
@sithumaw
@sithumaw 6 років тому
Great tutorial!! your tutorials help me know better to the iOS app developing. And your videos are a lot better than studying with the books. Thank you so much Sean!! keep it up.
@seanallen
@seanallen 6 років тому
Happy to hear it helped, Si Maw!
@sravk245
@sravk245 4 роки тому
I am in love with your teaching style. Thank you once again for the great video.
@seanallen
@seanallen 4 роки тому
Thanks for the kinds words, Srav!
@TibetanBillboard
@TibetanBillboard 6 років тому
Great tutorial. There is one more technique to unwrap an optional. Nil-Coalescing Operator: let a = b ?? c
@seanallen
@seanallen 6 років тому
Hey Tashi! That is a great point. Nil-Coalescing comes in handy many times. Using your example to explain for others (let a= b ?? c), if "b" happens to be nil, then you set "a" to a default value that you've hardcoded ("c" in this case).
@gjermundification
@gjermundification 6 років тому
Particularly good for setting default values where there are none; like when parsing a portable array that lacks a key -> value pair that requires a value.
@rebeloper
@rebeloper 4 роки тому
Yes! I use nil coalescing when building default values for my models.
@sangitanayak5406
@sangitanayak5406 6 років тому
@Sean Allen,Great Tutorial.It really helped me.Thanks for uploading
@seanallen
@seanallen 6 років тому
Happy to help, Sangita! Glad you found the video helpful.
@drforest
@drforest 6 років тому
awesome! I think I finally get the difference between ways to unwrap, nice and concise. I think I'm even getting used to your delivery speed. Kinda starting to like it.
@seanallen
@seanallen 6 років тому
Quick and to the point!
@kristijanrotim2906
@kristijanrotim2906 6 років тому
I watched so many videos about optionals, but this one is fantastic :D Thank you
@seanallen
@seanallen 6 років тому
Thanks Kristijan! I agree... when I was starting, optionals took me a little bit to understand, and I remember what parts confused me, so I tried to be extra clear on those.
@kidstagram354
@kidstagram354 6 років тому
Clear explanation !!
@chargeflood
@chargeflood 5 років тому
Couldn't be instructed better, simple and helpful, thanks.
@seanallen
@seanallen 5 років тому
Glad you liked it!
@milosmilivojevic7616
@milosmilivojevic7616 3 роки тому
This was great explaining... I had struggles understanding what guard let is... and now I understand it pretty good. Thanks for explanation, wish you luck in every job you do :)
@seanallen
@seanallen 3 роки тому
Glad to hear it!
@jacobbullon649
@jacobbullon649 6 років тому
Thanks for clearing up guard statements, Sean. These are great videos and very easy to follow along with, but I'll admit I had to turn the speed to 0.75 to keep up!
@seanallen
@seanallen 6 років тому
Thanks for the kind words, Jacob. You're not alone, I have a lot of people say that I speak to quickly and I've been working on slowing down.
@ehorlyck
@ehorlyck 6 років тому
Thank you! I think i finally understand how to handle optionals.
@seanallen
@seanallen 6 років тому
Glad it helped, Emil!
@kandurivivek5415
@kandurivivek5415 6 років тому
Thanks Sean, big fan of your tutorials :)
@seanallen
@seanallen 6 років тому
+kanduri vivek Thanks Kanduri! Glad you're enjoying the channel. More on the way!
@theMesterl
@theMesterl 6 років тому
Thanks. This is a quality tutorial. Keep up the good work!
@seanallen
@seanallen 6 років тому
Thanks for the kind words, Lars!
@uroojlala4008
@uroojlala4008 2 роки тому
You trio are gems , ios academy , design and code and sean allen
@Robin-fg6jv
@Robin-fg6jv 3 роки тому
very well explained!
@jerometorresyap249
@jerometorresyap249 6 років тому
Very nice and clean examples. Thumbs up!
@seanallen
@seanallen 6 років тому
Thanks Jerome!
@alidhan1299
@alidhan1299 5 років тому
Thank you. You made my life easier :)
@seanallen
@seanallen 5 років тому
Happy to help!
@matthewlev1342
@matthewlev1342 5 років тому
thanks Sean!
@mohammadtahir7931
@mohammadtahir7931 6 років тому
Expecting more Thanks
@Justin-qz9rs
@Justin-qz9rs 6 років тому
Clear and to the point!
@seanallen
@seanallen 6 років тому
Glad you enjoyed it!
@sukalporoy8186
@sukalporoy8186 5 років тому
Great presentation ! Thank You Very Much !
@seanallen
@seanallen 5 років тому
Glad you liked it!
@easthastings6919
@easthastings6919 2 роки тому
great explanation
@falix8509
@falix8509 3 роки тому
Explained very well. 👍
@seanallen
@seanallen 3 роки тому
Thank you 🙂
@musnoure
@musnoure 6 років тому
Great video, thank you for sharing!
@seanallen
@seanallen 6 років тому
Thanks RochNoure!
@ecwb
@ecwb 4 роки тому
Nice well explained as always thanks appreciated
@seanallen
@seanallen 4 роки тому
Thanks Steve. Hope you're unwrapping optionals like a pro now!
@aniltodakar6449
@aniltodakar6449 6 років тому
helpful video thank you.
@roman3249
@roman3249 4 роки тому
.map() and .flatMap() function is also a way to unwrap optional. I'm talking about the map and flatMap functions of Swift optionals (not the Array map function). According to Apple's documentation, map method on optionals "evaluates the given closure when this Optional instance is not nil, passing the unwrapped value as a parameter". Returns nil otherwise.
@heyrahulrs
@heyrahulrs 6 років тому
Amazing video. 👌🏻 Thanks!
@seanallen
@seanallen 6 років тому
Thanks for the continued support, Rahul!
@ebrahimbakhtari5685
@ebrahimbakhtari5685 5 років тому
Thanks Sean ; )
@ShailPM
@ShailPM 6 років тому
keep'em coming. I subbed
@seanallen
@seanallen 6 років тому
Thanks for the sub, Shail! Happy to have ya on the channel.
@blazefrostrider
@blazefrostrider 6 років тому
Great explanation
@seanallen
@seanallen 6 років тому
Glad you enjoyed it, Kalyani!
@Hariharan-ww4te
@Hariharan-ww4te 4 роки тому
Thank you so much Sean 👍👍
@seanallen
@seanallen 4 роки тому
Happy to help, Hari!
@tenminutetokyo2643
@tenminutetokyo2643 4 роки тому
Awesome, dood, thanks.
@GG-hk5iz
@GG-hk5iz 6 років тому
great tutorial
@seanallen
@seanallen 6 років тому
Thanks Gunjan!
@taylormaxwell1277
@taylormaxwell1277 4 роки тому
Very helpful thank you
@seanallen
@seanallen 4 роки тому
Happy to help!
@kukkapillachannel3326
@kukkapillachannel3326 6 років тому
Great video!
@seanallen
@seanallen 6 років тому
Thanks Rajagopal!
@prasannarathnayaka5037
@prasannarathnayaka5037 3 роки тому
Thanks Sean
@nishantmendiratta9274
@nishantmendiratta9274 6 років тому
Great Job @Sean! :)
@seanallen
@seanallen 6 років тому
Thanks!
@weepingwillow2056
@weepingwillow2056 2 роки тому
Optional is under the hood an enum type with two values none and some none points to nil value of the type optional so it adds to type safety of the language
@TheCSteve
@TheCSteve 5 років тому
tomorrow i watch this video .. it has the information i need .. Thanks
@seanallen
@seanallen 5 років тому
Happy to hear it helped 👍
@paulancajima
@paulancajima 5 років тому
Thank you
@gdeveloper4884
@gdeveloper4884 3 роки тому
Hey Sean. Thanks for the video. What about optional binding ? Do we need to use to unwrap a optional? Thank you Sir
@MarvelousLXVII
@MarvelousLXVII 5 років тому
Nice video.
@seanallen
@seanallen 5 років тому
Thanks Marv. Glad you enjoyed it 👍
@SevenDeMagnus
@SevenDeMagnus 5 років тому
Thanks
@venkatarok1146
@venkatarok1146 6 років тому
Hi Can you please tell about the Database topics in real time implementation
@seifeddinnemeddeb2455
@seifeddinnemeddeb2455 6 років тому
an NBA fan and iOS Developer i thought i was the only one loool, btw GREAT CHANNEL :D :D
@seanallen
@seanallen 6 років тому
Thanks for the kind words. Been a huge basketball fan my whole life.
@brunoalves6385
@brunoalves6385 3 місяці тому
elvis operator was missed at this video. but still a great swift class
@shivaellandulavlogs7149
@shivaellandulavlogs7149 4 роки тому
Kindly make a video return , return type , return value and self usage where to use it
@ankushnagdev
@ankushnagdev 4 роки тому
How do you compile in swift? As in how do you get it to show the output showing in the bottom?
@insoft_uk
@insoft_uk 2 роки тому
Basically just a safety feature added to pointers, as one used to check a pointer if it wasn’t nil before using it as it wasn’t pointing to anything tho one could use a pointer without checking it so this in swift I feel just a safety feature to force checking and making sure before using it
@jurobebic1715
@jurobebic1715 4 роки тому
You lool like Randy Couture in this video. Still, really amazing!
@badrigs3630
@badrigs3630 6 років тому
Just subscribed :) Do more videos
@seanallen
@seanallen 6 років тому
Thanks for the sub! Working on it...
@juliusdegroot289
@juliusdegroot289 5 років тому
line 11 never forget
@elvandreidel6850
@elvandreidel6850 5 років тому
Hi Sean, great video! I was just wondering, is it good practice to duplicate the variable name in the optional binding? E.g. if let devicePrice = devicePrice.
@seanallen
@seanallen 5 років тому
This depends on your style guide and personal preference. But it is common practice to use the same name.
@maximkrouk1697
@maximkrouk1697 5 років тому
What about force unwrappling after a boolean test? Like this: if error != nil { print(error!) }
@johntamch
@johntamch 6 років тому
Great Video! Thanks. One question though - do u know why all those objects in the library, like UIButton!, has to be declare as optionals?
@seanallen
@seanallen 6 років тому
Hey John, are you talking about when you create an outlet from storyboard (@IBOutlet weak var myButton: UIButton!)? If so, that's implicitly unwrapping the storyboard object. You can read more about implicitly unwrapped optional here: krakendev.io/when-to-use-implicitly-unwrapped-optionals/
@johntamch
@johntamch 6 років тому
Thanks Sean! I will look into it!
@asmirabdimazhit8171
@asmirabdimazhit8171 4 роки тому
but what if one of the properties of the struct is an optional as well. Do we need to use two question marks like "myPhone?.price?" ?
@LebenWerden
@LebenWerden 6 років тому
in line 10 you write if let number = optionalNumber does it means that let nuber = optinalNumber is a bollean?
@smbdcry
@smbdcry 5 років тому
a small ..confusion. so at line 50, you can set a (let) variable equal to self, with a print out statement following at the tail. isn't a let variable cannot be changed, or this isn't change but adding some extra statement and this print statement will only show result in the console, but not to user, unlike an iOS app. hope if I understand correctly. been busy into school, quit swift for a long time, forget almost everything. ouch
@seanallen
@seanallen 6 років тому
Questions about unwrapping optionals? Leave a comment and I'm happy to help!
@LetsBuildThatApp
@LetsBuildThatApp 6 років тому
Solid.
@seanallen
@seanallen 6 років тому
Thanks Brian!
@farmood100
@farmood100 6 років тому
Great work Allen .. thank you so much to explain this topic
@mrcoder6426
@mrcoder6426 5 років тому
Oops! I found your channel too late
@mrcoder6426
@mrcoder6426 5 років тому
Oops! I found your channel too late
@seanallen
@seanallen 5 років тому
Why too late?
@rebeloper
@rebeloper 4 роки тому
Waiting for an answer for a year now. @@seanallen , maybe @Mr Coder answer was nil and it was force unwrapped.
@user-vx6yt8bi8n
@user-vx6yt8bi8n 5 років тому
Great video! thank you very much! Just a suggestion. Is it possible to reduce your speaking speed a little bit?
@seanallen
@seanallen 5 років тому
Thanks Victor... about the speaking speed, this is one of my much older videos. I've worked on that and in my more recent videos it's not so much of an issue.
@urslovinglyjamesnaddy3093
@urslovinglyjamesnaddy3093 5 років тому
@@seanallen Thanks Sean, but as a temporary fix I am watching your videos in 0.75x speed. Anyway, awesome work, I have learned a lot.
@quinbingham
@quinbingham 4 роки тому
4:43 nice
@ferrakkembhuiyan4585
@ferrakkembhuiyan4585 3 роки тому
You are just the best and best. But would kindly speak a little bit slow. I am extremely sorry for the comment.
@jahidbinmurtaza2167
@jahidbinmurtaza2167 6 років тому
i have already completed swift 4 documentation............. now i want to start my demo projenct plwase hellp me
@nazrulhassan6310
@nazrulhassan6310 3 роки тому
why if statement does not execute when nil is assigned to the variable
@jdcrunchman999
@jdcrunchman999 2 роки тому
In line 5 what does the “?” Mean?
@jdcrunchman999
@jdcrunchman999 2 роки тому
In line 5 what does the “?” Mean
@jasondhindsa6774
@jasondhindsa6774 5 років тому
Sean, what is the correct thing to say when an interviewer asks you the following: “Is it ever okay to force unwrap an optional?”
@seanallen
@seanallen 5 років тому
It's dangerous and should never be the normal way you do things. There are a few exceptions, but you should default to unwrapping.
@rebeloper
@rebeloper 4 роки тому
When you force unwrap you're basically saying "I have considered all the possible scenarios and this will never be nil; I know everything". Which is not true, to say the least 🤣
@TheBooban
@TheBooban 3 роки тому
@@seanallen tableView cells: let cell = tableView.dequeueReusableCell(withIdentifier: "WorkoutCell", for: indexPath) as! WorkoutCell
@cosmicjoshgaming3655
@cosmicjoshgaming3655 4 роки тому
I don't understand code ); Is there anyway you can show me your path so I code just like you ?
@khawarshehzad487
@khawarshehzad487 5 років тому
great video but i've this question confusing me, why not just use if==nil or if!=nil like in java and skip all these options of unwrapping altogether?
@willhenry8293
@willhenry8293 5 років тому
Ever had a null pointer exception in Java? Optionals are added type safety around nil pointers to avoid these pesky exceptions. Think of it this way, in swift the compiler is your friend. Any value that may be nil should be specified as an optional so that the compiler will generate warnings for you when you try to directly manipulate the value. By doing `guard `or `if let` statements, you are working with the compiler to get the `.Some` part of the optional, aka the value. This way, you can write certain functions that take all non optional values, and the compiler will make sure that you never pass an optional to said `func`. You no longer have to think, did I check for null? everywhere in your app. In java, you can check for null all over the place, but there's no idiomatic, built in way (if any at all) to disallow someone from calling your function with an object that hasn't been explicitly checked for null. If you've written good defensive Java, you'd be doing all the same null checks that are handled with optionals here. The major difference is, in Swift, the compiler has your back and makes sure you don't miss these checks and lets you write pure functions that dont have to worry about nil since the parameters are non optional.
@vasuv6652
@vasuv6652 6 років тому
Hi Sean Allen I am new to iOS. i want to send a soap request with xml data. i tired lot of examples . but didn't work . could you help me. I am developing swift Project. I have to pass Username & Password inputs as xml data (Username & Password are Params) Thanks in advance
@am13476
@am13476 6 років тому
How about when u declare variable like this: var number: Int! this means: "I am sure 100% that number variable will have value?"
@seanallen
@seanallen 6 років тому
Hey Adis! Yes, this is called implicitly unwrapping the optional. It is similar to force unwrapping. Here is a good blog post all about that: krakendev.io/when-to-use-implicitly-unwrapped-optionals/
@zipazip
@zipazip 5 років тому
Hey I know it's an old video but i have a question. instead of guard can't I just do like: if number == nill { return ] ?
@seanallen
@seanallen 5 років тому
Guard can also unwrap the value. In the example you gave, "number" still wouldn't be unwrapped.
@brod515
@brod515 5 років тому
It will be the same if you rearrange it slighly.. if let myVar = number { }else { print("Exiting") return} guard sort of works in the opposite sense like guarding to make sure something has happened rather that checking if(statement) something has happened that's why it's in the return is in the else block and the other code would be in the first block. Using guard would be cleaner
@evantuazon
@evantuazon 3 роки тому
did u pick 23 cuz jordan
@lmbcosta
@lmbcosta 6 років тому
Here's one: Let's say I have a wrapper that contains a boolean called isHeader... How the hell I can write below code without force wrapper var and be conformed with lint good practices if wrapper?.isHeader == nil || !(wrapper?.isHeader)! { return .zero } return CGSize(10) Tried something like guard let myWrapper = wrapper, myWrapper.isHeader else { return .zero } but after got lint warning Unused Optional Binding Violation: Prefer `!= nil` over `let _ =` (unused_optional_binding) Anu suggestion?
@lmbcosta
@lmbcosta 6 років тому
Got it... guard let isHeader = wrapper?.isHeader, isHeader else { return .zero }
@jahidbinmurtaza2167
@jahidbinmurtaza2167 6 років тому
i need advance level all tutorial
@bartoszdolewski4915
@bartoszdolewski4915 6 років тому
How is the operator "??" called then?
@seanallen
@seanallen 6 років тому
That's called Nil Coalescing.
@bartoszdolewski4915
@bartoszdolewski4915 6 років тому
Sean Allen thanks!
@JasonMitchellAZ
@JasonMitchellAZ 6 років тому
"🤔 Should I be doing this..."
@seanallen
@seanallen 6 років тому
No. You shouldn't.
@Kishore-bc2wp
@Kishore-bc2wp 6 років тому
optional map is another way
@gjermundification
@gjermundification 6 років тому
Force unwrapping you only want to do when you prototype stuff that is new to you in Playground.
@seanallen
@seanallen 6 років тому
I agree 100% that you should be cautious and use force unwrapping VERY sparingly. However, I wouldn't say you should NEVER use it.
@libvlog2264
@libvlog2264 4 роки тому
4:41 I don’t get that jock 😩
@bilaliqbal015
@bilaliqbal015 2 роки тому
"My tripled number is 69" 😂
Swift Optionals - How to Unwrap (real examples)
14:20
Sean Allen
Переглядів 10 тис.
How to use Optionals in Swift | Swift Basics #6
53:57
Swiftful Thinking
Переглядів 12 тис.
Filter, Map, Reduce - Swift - iOS Interview Questions
11:08
Sean Allen
Переглядів 53 тис.
Swift Classes and Structures Explained
7:35
Sean Allen
Переглядів 75 тис.
Optional binding and optional chaining
6:19
Code Cat
Переглядів 11 тис.
Swift Access Control Explained
9:44
Sean Allen
Переглядів 32 тис.
Swift API Calls for Beginners (Networking) - Async Await & JSON
25:35
How to use Lazy in Swift
9:56
Sean Allen
Переглядів 38 тис.
Swift - What to Ask Them? - iOS Interview Questions
13:31
Sean Allen
Переглядів 31 тис.
Как должен стоять ПК?
1:00
CompShop Shorts
Переглядів 443 тис.
Сомнительно... Ну Окэй... Распаковал Nothing Phone (2a)
16:19
РасПаковка ДваПаковка
Переглядів 55 тис.
I7 2600K тест в играх и сравнение с AMD Ryzen
17:53