I'm simple person, see a new Swift News video and gave a thumbs up thanks Sean
@seanallen4 ай бұрын
I appreciate that!
@srzurka4 ай бұрын
Thank you Sean. That was very informative. I always appreciate when you unpack the reasons behind your perspective.
@seanallen4 ай бұрын
Glad it was helpful!
@FloWritesCode4 ай бұрын
Great episode, Sean! Thanks for sharing the idea of avoiding MVVM as well. I think all the recent Observation, SwiftData & SwiftUI releases made this simple architecture even better.
@ToddHoff4 ай бұрын
With SwiftData, because model objects are observable, it's natural to make one object for everything. This works well, I think, even though it goes against historical practice.
@ToddHoff4 ай бұрын
Ok, the obvious negative showed up when I needed to use the models in a widget. Including the view code with the model brings *way* too much stuff from the app into the widget. My new approach is to put minimalist models in a common framework that can be linked to both the app and widget. Then each target adds extensions for the views in that target. My initial experiments were positive with this approach. Is there a better way?
@filip_hood4 ай бұрын
Great vid Sean! Thanks for all the info! I'm trying to focus more on actually "doing things" instead of spending my time on social media, so this sum up of what people are talking about and what's new is just great. Keep it up! :)
@V100X4 ай бұрын
Same here 🙌🏼
@alexandre-guzu4 ай бұрын
Yeah, coupling your view with logic and services, what could go wrong ? It goes against having small views that have no responsibility other that displaying stuff. Seems very, very wrong, even occasionally. I'm refactoring this kind of stuff almost daily.
@gregorymoore28774 ай бұрын
You mean you can't make your views smaller by moving code into them that should have been in the view model? 🤯
@mario_luis_dev4 ай бұрын
Ugh the EU getting their nose everywhere on ppl’s business is just getting out of hand. Each and everyday i convince myself more and more that Brexit wasn’t such a terrible idea after all
@seanallen4 ай бұрын
It's annoying, that's for sure.
@Gersssy4 ай бұрын
You mentioned you don’t know what to call this architecture, from a quick glance it seems similar to a Flux pattern but with the functions that would be in your store instead being called from the view. Which might be a little dangerous because you’re coupling your views to the frameworks/components the store needs to perform what it needs but that’s a fairly easy problem to solve with proper dependency inversion. Apple likes to use this Flux style pattern in a lot of their examples too and it’s going to be even more enabled with the Observation framework. Pretty much any architecture that has a unidirectional style data flow seems to work really nicely in SwiftUI at least in my experience.
@captainmichaelj23214 ай бұрын
Thanks for this, I love this content, I am hoping you can continue this if your time permits.
@seanallen4 ай бұрын
Since it's only once per month, I will definitely continue Swift News. At least through the end of 2024, then we'll reassess. But so far it's been very well received.
@AJ-vy3ei4 ай бұрын
Love the episode, thanks for your work
@seanallen4 ай бұрын
Glad you enjoy it!
@mikelCold3 ай бұрын
I called this on the first release of SwftUI and the people over at stackoverflow went nuts with MVVM. Good to see that I always knew MVVM was going to be bad.
@WestCoastAce274 ай бұрын
Great info as always; esp how to dispute (and hopefully eliminate) 1 stars. But it would be nice if Apple put a little AI into the review process. A 1 word ‘junk’ review gives a dev nothing to go on. Should be an easy coding exercise to verify that a review has some content/context and isn’t just from a rival. PS - congrats to all WWDC attendees. Have fun; be safe.
@ChadGaul4 ай бұрын
“Bibbity boops and bops” 😆 Ah good stuff, Sean.
@seanallen4 ай бұрын
That’s the official term.
@kslazinski4 ай бұрын
I was mentioned! 🤩 Thanks, Sean! 😀
@seanallen4 ай бұрын
Thanks for sharing that tip!
@oliviergeiger4 ай бұрын
Thanks Sean for all the content
@seanallen4 ай бұрын
No problem!
@mortezafaraji4794 ай бұрын
Babe Wake up!!! Swift News just dropped!!!
@gregorymoore28774 ай бұрын
I was thinking of writing an article. The title I have is "When To Add Sound To Your App." "Never" is as far as I've gotten.
@avivfrenkel78024 ай бұрын
Quick questions because i did do some MVVM with SwiftUI and combine and it did seem pretty natural especially when using @published variables. 1. How do you inject the SwiftUI environment variables into a unitest?(not well versed in SwiftUI environment variables). 2. doesn't the fact that the business logic sits inside the SwiftUI file hinder unitests? Im not saying MVVM is the optimal in any situation, but the architecture you described in the video seems to have a lot of issues when a developer will want to test it.
@szymusxd944 ай бұрын
This Vision pro concept for sport is amazing as hell
@seanallen4 ай бұрын
Agreed!
@5richmedia54 ай бұрын
I've tried to build iphone apps in xcode, but every time I launch it on my imac it takes minutes for xcode to launch and load, I get frustrated, is there any way to speed up xcode? My imac is from 2019.
@victorioborge4 ай бұрын
Great video as always! Swift News is my favorite source of news. Which software do you use to create the 'laser pointer' while you talk?
@seanallen4 ай бұрын
Not sure what you're referring to. I'm just recording my screen with Safari open and highlighting parts of text with my mouse.
@victorioborge4 ай бұрын
@@seanallen I just realized that the video I mentioned is from App Master not you, I got confused, sorry! lol
@vamsi38774 ай бұрын
Thanks Sean 👏
@leifashley4 ай бұрын
Between the EU trader qualifications and the privacy nutrition labels, feels like it's overly hard/er just to publish an app with some ads to make some money.
@kironet4 ай бұрын
MV is cool and so, but how the hell do you write tests for it? Most apps are not as simple as shown in the video. I have VMs with hundreds of lines of code since the project is not small, if I move it all to inside the view it'll become a nightmare to navigate... Don't tell me "tests are worthless" as the dude who created that "famous" discussion...
@seanallen4 ай бұрын
Then stay with MVVM 🤷. The point of the discussion that isn't to say "MVVM is bad, never use it". I say it in the video, there's no one right architecture for all situations and each has their pros/cons.
@kironet4 ай бұрын
@@seanallen I'm staying with MVVM but all these articles/videos(not you) saying how MV is amazing, never actually show a real world example. They always show the most basic code snippet. Most of them avoid talking about tests or straight up say tests are worthless. Maybe you could make video comparing these two arch. without using the most basic code snippets(even just simple call with pagination logic would suffice, I think)
@silver101884 ай бұрын
awesome thank you
@seanallen4 ай бұрын
You're welcome!
@indiekiduk4 ай бұрын
I think the mvvm crowd didnt learn or refused to learn structs or View structs. I noticed in your vid you were calling an environment struct an object!
@seanallen4 ай бұрын
I'm not great at using the text book language for things. It's something I can be better at. I hear it all the time in my videos when I call something a variable, but I defined it as a "let". Like... c'mon. You know what I mean.
@theracereviewer294 ай бұрын
I think TCA is quickly becoming the next big way to architect SwiftUI apps. Have you looked into that? Did a quick search on your channel for it but couldn't find anything.
@seanallen4 ай бұрын
I've researched it a little, but haven't built anything with it. I don't know enough to have an opinion on it.
@umarparacha6534 ай бұрын
is Swiftui is still New...when become mainstream ...
@noorlancer4 ай бұрын
The sponsor of your video isn't making money from apps. His revenue is being generated from selling products from his youtube channel
@seanallen4 ай бұрын
I'd love to hear more details. I've been following him for years and his KZbin channel just recently started to grow. Of course, I don't have insight into their business but I can't imagine the KZbin channel was super impactful before the last year or two. Regardless, the channel has great information. I stand by that from personal experience.
@JasonMitchellAZ4 ай бұрын
Swift News, new course from Sean, WWDC right around the corner, and the MLS immersive demo (was super cool)… this is great! (Also, I created a small PR for Swift News, if you’re interested in the fixes.)
@seanallen4 ай бұрын
Fun times! Thanks for doing that. Approved & merged!
@Tyheir4 ай бұрын
You should react to some of the videos shitting on the Vision Pro and giving your thoughts on it.
@seanallen4 ай бұрын
That's not really my style, but I do believe Apple Vision Pro will be a success in the long run. I see huge potential, but it's certainly not there just yet.
@Tyheir4 ай бұрын
@@seanallen that’s fair
@smotch75334 ай бұрын
4:15 I would not recommend this if you ever want to test your app.
@seanallen4 ай бұрын
I don't have real world experience with it yet, but he says testing is the most common question he gets and addresses it at the bottom of the article.
@SanusiAdewale4 ай бұрын
I'll stick with MVVM, its easy to understand, it separates and keeps everything neat and easy. You automatically know whats wrong and where it went wrong. Whatever this guy is suggesting will be a nightmare! I get that he's geeky to come up with that, but always remember to keep it simple!
@victorriurean4 ай бұрын
🔥
@randomjjj40344 ай бұрын
❤🔥❤🔥
@iLoveAppl39474 ай бұрын
MV with SwiftUI for small projects... if you want MVVM then you are better off going with UIKit unless you wanna fight the framework, spend hours and days for workarounds then spend weeks trying to solve the bugs and unwanted behaviours you get from the workarounds and this is all because you have decided to go against a framework... the average joe needs to learn that you shouldn't default to a strict architecture for every single project but hey try teaching this to ignorant people
@alexandre-guzu4 ай бұрын
We use MVVM and SwiftUI for a critical segment of our application, there are no big warkarounds and bugs are easy to catch and fix. What do you mean practically by "fighting the framework" or "workarounds" ? What does a published UI state in the MV not solve ?
@dsaliberti4 ай бұрын
Vanilla 😌
@WikiPeoples4 ай бұрын
I AM SO DEMOTIVATED :(
@seanallen4 ай бұрын
Why?
@JonatanEdOrtiz4 ай бұрын
I imagine this is terrible for unit testing.
@seanallen4 ай бұрын
I haven't used it in a real app yet, but he addresses testing at the bottom of his article.
@JonatanEdOrtiz4 ай бұрын
@@seanallen I'll take a look.
@alexandre-guzu4 ай бұрын
"Since your views are just expressions of a state, the best tests are snapshot tests." Crazy this kind of stuff is taken seriously in 2024. We never learn do we. It's not about testing views, it's about testing the logic that changes the state of your view, the stuff that he removed from the VM and put in the view.
@indiekiduk4 ай бұрын
You don't need objects just for testing you can test funcs
@iLoveAppl39474 ай бұрын
@@alexandre-guzuu don't need tests in 2024 just hit run it works then upload to appstore jobdone. If u get bug reports just ignore them for now
@lukassbeataddicts4 ай бұрын
Use the environment and keep your views really small. Wait when you told to add analytics, localization, location, networking, side scrolling carousels, error states, loading states, alerts, core data and more. Then try to keep your view really really small. 😂😂😂
@lukassbeataddicts4 ай бұрын
All this architectures of view only that Azam and others plough on twitter works really great with screens containing list with emoji fruits. 😅
@malschauen62674 ай бұрын
Why do you start speaking right after 0.00000000000001 seconds after the start of the video? I would prefer 0.5 or 1 or 2 seconds of silence before speaking.
@seanallen4 ай бұрын
Got it
@malschauen62674 ай бұрын
@@seanallen Thank you for considering.
@trustmub14 ай бұрын
😂😂😂😂
@malschauen62674 ай бұрын
@@trustmub1 Could you please explain your use of emojis? I am not sure if I understand it correctly. I made a suggestion and said "thank you", when seanallen replied. Of course he is free to ignore my suggestion. But I am sincerely annoyed by the mentioned point.
@trustmub14 ай бұрын
@@malschauen6267 the emojis where valid at the time, I realised how I had the same thought and realised there is always someone out there who will beat you to comment.