I'm learning Swift and I have a few resources where I get information from. You're definitely the best! Sometimes instead of googling I just watch your video about some technology or something and it's much more informative because of the way you explain stuff with examples. When I become a fancy developer I owe you a beer, man. You're awesome! Thank you for what you do.
Im in awe of how this lines up. I’ve been struggling to understand swiftUI sort of “under the hood”. I can understand why this is in advanced learning, but I really wish I could’ve had this puzzle piece around the same time I was being introduced to swiftUI view components. This is a really interesting concept.
I wish I had known earlier about using @ViewBuilder in conjunction with computed variables of type some: View. Thanks, this is going to improve the code of my applications a lot.
Nick you are a really great developer and teacher. Your content is amazing, thank you. But we really grasp what we learn better by building whole apps, like we have done in the coin app you built. I will suggest you 2 topics and I would be grateful if you consider them. 1) I have difficulties about finding a complete tutorial for swiftui-mapkit integration(not only showing user location, but also showing area of interests, making custom annotations and marking the map so that other users can see, search and pin locations etc.). And secondly, building apps based on an api using async functions and asyncImage feature has some unclear areas for most of the developers. Can you focus one of the issues on your next tutorial series please?
Hello! Thanks for watching :) After I finish this bootcamp playlist, I will be adding another course where we build a whole app. I try to always do bootcamp videos before the course so that the code in the course makes more sense and people can refer back to the bootcamp vids if they get stuck! I will definitely add to my list a few videos for integrating MapKit, great suggestion. However, I won't be using async functions in my next app though because async is only available for iOS 15 and is not backwards compatible. Most production apps will be supporting iOS 14 for at least another year or two, so it's not very realistic to use yet. I'll do some bootcamp videos on it soon.
If I don't add the @ViewBuilder in the init it still seems to work. The important part to note about viewBuilder is that it allows for multiple subviews. If you remove the VStack in "Generic 3" sample, it proves the point better: without the @ViewBuilder, the compiler complains, with it, it behaves like a VStack
Awesome video and series Nick. This is some powerful stuff. I don't even know how you learned all this stuff but I have taken paid courses in the past and you have hands down the best stuff I have seen.
Thank you Scott! I have taken many of those courses as well and it's actually a big part of the reason I started this channel. I felt that most of the SwiftUI courses weren't really teaching the topics, but rather just making an app and having students copy the code. Anyway, glad you're enjoying the channel. 🥳
Hi Nick thanks so much as usual fir great free content! Definitely worth the like and subscribe!! I have a question though, why do you need the @Viewbuilder and why can’t you just have the closure to return contrnt?
Love your videos. So informativ! Although a couple of things do not seem to work (ViewModifier, CostumButtonStyle and most prominently the @ViewBuilder wrapper), even though I have a newer version of Xcode installed on my computer. When asking Chatgpt, it says, that my version of swift is too old, which would explain a lot. When checking in the build setting it says I am using swift 5 (as well as giving me the option to downgrade to 4 and 4.2). So my question is, is chatgpt right? And if yes, how do I fix it and why doesn’t Xcode do it automatically? Thank you for your Help.
These all definitely work, I use them all the time. Maybe you’re typing something wrong? The project is on my GitHub @SwiftfulThinking if u want to compare code
@@SwiftfulThinking Yes. I think it's some sort of setting, because to check if i was typing it wrong, I copied and pasted a view modifier code from the web and still had the same erros. Anyways, I'll figure it out later for now I am learning cloudkit. Really great video by the way. Keep up the great work! 😁
thank you for the amazing content Nick! I have one question: isn't [ some View ] an opaque type? so the compiler should know the concrete type at compile time (static dispatch) and switching types adds dynamism so how does the [ @ViewBuilder ] solve this problem? Thanks a lot 💛
I realize I am coming to this a year after posting but it is still VERY relevant and USEFUL. The music is a little unusual but if that what you like then who am I to comment. Seriously, this is good stuff are you going to release /update for ios16 new features/changes?
It's really informative and explanation is very good with examples. Only thing i have suggestion is to keep the example code, so that it will be really helpful.
Hahaha, have only just begun to watch Nicks basic tutorials on SwiftUI. But am sure, in time, I will be going through these more advanced videos. I like his style and clarity.
Haha they're coming in CloudKit section at the end of this playlist 🤓 We need a server for real push notifications, so CloudKit will be the easiest way.
Hi, i found that in order to create optional initialization we can use init(type: ViewType, @ViewBuilder content: () -> Content) { self.type = type self.content = content() } init(type: ViewType) where Content == EmptyView { self.type = type self.content = EmptyView() } Do you think its the right way? thank you
I really like your content. For me you are the best source of Swift learing materials. I've big request for you. Could you please create some tutorial how to organize package structure in big iOS apps? Multiple screens, widgets, database and so one. Thanks :)
Hi Korges! Thanks for the comment. That's a really broad question because every app is different and the files should be organized for the specific app's needs. I will be doing a more advanced app course soon though, which will have a realistic architecture.
I use @viewbuilder all the time, thanks to the youtuber Kavsoft. I think it makes the code very clean and easy to navigate, especially with child views you do not plan to reuse.
I absolutely love your content. I enrolled in your udemy course. Would you ever consider possibly creating a slack or a discord for support? I know I could definitely use the help on one topic for sure. The Q&A from Udemy is not the greatest in regards to notifications.
Thanks AJ! Yea, you're right haha. I will be starting a Discord channel next week! I'll post about it in the "Community" section of my channel once it's up.
@@SwiftfulThinking absolutely amazing. I love your Udemy course. It’s helped me grasp a lot that other courses couldn’t do. Truly appreciate you my friend.
All these updates are worthwhile, but they're not as watchable because the navigator column is not closed and the screen space is wasted making viewing a squinting exercise. It's understandable, one cannot anticipate what changes made by Apple will make the older lessons a nuisance to follow, but at least make them readable. This safe area inset vid was frustrating as while in Xcode 15, much of the auto completion doesn't match up with the vid. I don't suppose I'll miss much in the safe area inset in any case, but the Navigation Stack lesson was difficult. And the thing is; if any file in the app collection is failing, one cannot proceed with another lesson. I've to go back and find the things that are broken before I can proceed which ofter means commenting out most of the contents unless I want to revisit the lesson. Not a complete waste of time, but still a bit of an obstacle. For instance; now that I'm moving on to the "Groups" lesson, I've to stop and find what's unhappy. I finally just deleted the last 'SafeAreasInset' file so I could get on with the program.
I love how Nick give us the problem and then introduce us to the solution
I'm learning Swift and I have a few resources where I get information from. You're definitely the best! Sometimes instead of googling I just watch your video about some technology or something and it's much more informative because of the way you explain stuff with examples. When I become a fancy developer I owe you a beer, man. You're awesome! Thank you for what you do.
Thanks man! Good luck on your coding journey 🚀🚀
From Vietnam, Thanks a lot for your amazing contents. Can't wait for your next swift ui courses
Following this course means jumping to a whole new level of coding with SwiftUI, I simply love it!
Let’s goooo 🚀
Im in awe of how this lines up. I’ve been struggling to understand swiftUI sort of “under the hood”. I can understand why this is in advanced learning, but I really wish I could’ve had this puzzle piece around the same time I was being introduced to swiftUI view components. This is a really interesting concept.
I wish I had known earlier about using @ViewBuilder in conjunction with computed variables of type some: View.
Thanks, this is going to improve the code of my applications a lot.
Nick you are a really great developer and teacher. Your content is amazing, thank you. But we really grasp what we learn better by building whole apps, like we have done in the coin app you built. I will suggest you 2 topics and I would be grateful if you consider them. 1) I have difficulties about finding a complete tutorial for swiftui-mapkit integration(not only showing user location, but also showing area of interests, making custom annotations and marking the map so that other users can see, search and pin locations etc.). And secondly, building apps based on an api using async functions and asyncImage feature has some unclear areas for most of the developers. Can you focus one of the issues on your next tutorial series please?
And please post new courses in UDEMY, I will definitely buy whatever you put out there.
Hello! Thanks for watching :) After I finish this bootcamp playlist, I will be adding another course where we build a whole app. I try to always do bootcamp videos before the course so that the code in the course makes more sense and people can refer back to the bootcamp vids if they get stuck!
I will definitely add to my list a few videos for integrating MapKit, great suggestion.
However, I won't be using async functions in my next app though because async is only available for iOS 15 and is not backwards compatible. Most production apps will be supporting iOS 14 for at least another year or two, so it's not very realistic to use yet. I'll do some bootcamp videos on it soon.
@@SwiftfulThinking you are amazing. Thank you!
Just finished watching all your playlists. Thank you for the great contents!!
All of them? Haha awesome! Thanks for watching :)
와 정말 소리질렀어, 넌 최고야. It was a really difficult concept to understand, but now I got it. Thank you so much
If I don't add the @ViewBuilder in the init it still seems to work. The important part to note about viewBuilder is that it allows for multiple subviews.
If you remove the VStack in "Generic 3" sample, it proves the point better: without the @ViewBuilder, the compiler complains, with it, it behaves like a VStack
Another phenomenal video, Nick. Thank you for taking the time to put together such helpful and well demonstrated videos. Top quality stuff.
Thanks for watching! Glad you're enjoying the content.
Awesome video and series Nick. This is some powerful stuff. I don't even know how you learned all this stuff but I have taken paid courses in the past and you have hands down the best stuff I have seen.
Thank you Scott! I have taken many of those courses as well and it's actually a big part of the reason I started this channel. I felt that most of the SwiftUI courses weren't really teaching the topics, but rather just making an app and having students copy the code. Anyway, glad you're enjoying the channel. 🥳
Thank you, Nick. Very helpful 👍🏼👍🏼👍🏼
Thanks for watching Marlon!!
Awesome explanation! Thank you!
Hi Nick thanks so much as usual fir great free content! Definitely worth the like and subscribe!! I have a question though, why do you need the @Viewbuilder and why can’t you just have the closure to return contrnt?
very well detailed explanation Nick, thank you 👍
this video is very useful and understand for beginer
I like it Nick. This is a great course!
Thanks Simon!
Exactly what I want to learn about @ViewBuilder.
Love your videos. So informativ! Although a couple of things do not seem to work (ViewModifier, CostumButtonStyle and most prominently the @ViewBuilder wrapper), even though I have a newer version of Xcode installed on my computer.
When asking Chatgpt, it says, that my version of swift is too old, which would explain a lot. When checking in the build setting it says I am using swift 5 (as well as giving me the option to downgrade to 4 and 4.2).
So my question is, is chatgpt right? And if yes, how do I fix it and why doesn’t Xcode do it automatically? Thank you for your Help.
These all definitely work, I use them all the time. Maybe you’re typing something wrong? The project is on my GitHub @SwiftfulThinking if u want to compare code
@@SwiftfulThinking Yes. I think it's some sort of setting, because to check if i was typing it wrong, I copied and pasted a view modifier code from the web and still had the same erros. Anyways, I'll figure it out later for now I am learning cloudkit. Really great video by the way. Keep up the great work! 😁
Really great great great SwiftUI tutorial videos I ever watched. The author is absolutely a great developer and teacher.
Thanks Edward!
thank you so much. such a helpful tutorial, learned a lot 🙏
Simple and clear explanations. Thanks
Thanks a lot nick , you are perfect in explanation
thank you for the amazing content Nick! I have one question: isn't [ some View ] an opaque type? so the compiler should know the concrete type at compile time (static dispatch) and switching types adds dynamism so how does the [ @ViewBuilder ] solve this problem?
Thanks a lot 💛
Really helpful content Thank you so much
Wonderful explanation!
I realize I am coming to this a year after posting but it is still VERY relevant and USEFUL. The music is a little unusual but if that what you like then who am I to comment. Seriously, this is good stuff are you going to release /update for ios16 new features/changes?
It's really informative and explanation is very good with examples. Only thing i have suggestion is to keep the example code, so that it will be really helpful.
This playlist is so good. Thank you!
When you like Nick's video before even watching it.
Haha I love that 🥰 Thanks for watching!!
Hahaha, have only just begun to watch Nicks basic tutorials on SwiftUI. But am sure, in time, I will be going through these more advanced videos. I like his style and clarity.
Good stuff Nick. When is push notifications coming
Haha they're coming in CloudKit section at the end of this playlist 🤓 We need a server for real push notifications, so CloudKit will be the easiest way.
Hi, i found that in order to create optional initialization we can use
init(type: ViewType, @ViewBuilder content: () -> Content) {
self.type = type
self.content = content()
}
init(type: ViewType) where Content == EmptyView {
self.type = type
self.content = EmptyView()
}
Do you think its the right way? thank you
what resources do you usually study to become advance in IOS development
Thanks! Lots of great info!
Great 👍
amazing tutorial! appreciate!
Well done explained.
How awesome. Thanks
😄
I really like your content. For me you are the best source of Swift learing materials. I've big request for you. Could you please create some tutorial how to organize package structure in big iOS apps? Multiple screens, widgets, database and so one. Thanks :)
Hi Korges! Thanks for the comment. That's a really broad question because every app is different and the files should be organized for the specific app's needs. I will be doing a more advanced app course soon though, which will have a realistic architecture.
love you brooo
lol im felt in love with coding again appreciate you man
Thank you!
So cool, Thank you so much!!!
thank you
Amazing
I use @viewbuilder all the time, thanks to the youtuber Kavsoft. I think it makes the code very clean and easy to navigate, especially with child views you do not plan to reuse.
Thank you very much.
... when you announce "LET'S GET CODING" you're supposed to immediately press Command-0 to hide that file browser on the left side
Can the content be nil or optional ?
I absolutely love your content. I enrolled in your udemy course. Would you ever consider possibly creating a slack or a discord for support? I know I could definitely use the help on one topic for sure. The Q&A from Udemy is not the greatest in regards to notifications.
Thanks AJ! Yea, you're right haha. I will be starting a Discord channel next week! I'll post about it in the "Community" section of my channel once it's up.
@@SwiftfulThinking absolutely amazing. I love your Udemy course. It’s helped me grasp a lot that other courses couldn’t do. Truly appreciate you my friend.
Cool
Thanks!
All these updates are worthwhile, but they're not as watchable because the navigator column is not closed and the screen space is wasted making viewing a squinting exercise.
It's understandable, one cannot anticipate what changes made by Apple will make the older lessons a nuisance to follow, but at least make them readable. This safe area inset vid was frustrating as while in Xcode 15, much of the auto completion doesn't match up with the vid.
I don't suppose I'll miss much in the safe area inset in any case, but the Navigation Stack lesson was difficult. And the thing is; if any file in the app collection is failing, one cannot proceed with another lesson. I've to go back and find the things that are broken before I can proceed which ofter means commenting out most of the contents unless I want to revisit the lesson. Not a complete waste of time, but still a bit of an obstacle. For instance; now that I'm moving on to the "Groups" lesson, I've to stop and find what's unhappy. I finally just deleted the last 'SafeAreasInset' file so I could get on with the program.
you are god
❤
Thank you