MVVM in 100 Seconds

Поделиться
HTML-код
  • Опубликовано: 12 ноя 2024

Комментарии • 308

  • @PhilippLackner
    @PhilippLackner  3 года назад +45

    Which other concept do you want me to explain in 100 seconds?

    • @arunm619
      @arunm619 3 года назад +9

      Hilt, Work manager, coroutines, room

    • @mohamedmustafa1893
      @mohamedmustafa1893 3 года назад +1

      MVI

    • @FarrukhSaliev
      @FarrukhSaliev 3 года назад +2

      LiveData or StateFlow

    • @DroidChief
      @DroidChief 3 года назад

      Retrofit

    • @Sc2MooDy
      @Sc2MooDy 3 года назад +3

      Flow, Coroutines, RecyclerView, Work manager, Jetpack datastore

  • @codinginflow
    @codinginflow 3 года назад +83

    Damn this looks like a sh*t ton of work

    • @PhilippLackner
      @PhilippLackner  3 года назад +39

      Took 8-10h 🥵

    • @ShubhamSinghMusic
      @ShubhamSinghMusic 3 года назад +4

      @@PhilippLackner Thank you for all the hard work you put in! You simply are amazing :)

    • @rahulmatte6621
      @rahulmatte6621 2 года назад +3

      @@PhilippLackner amazing stuff....writing code is not simple but writing simple code is hard

  • @alinri
    @alinri 3 года назад +31

    Awsome, I have never seen a video or an article that defines this concept as goog as you. Thanks for all of your hard works.

  • @kubapaluszak630
    @kubapaluszak630 Год назад

    Finally someone made it clear with no unnecessary vocabulary. Thanks!

  • @gajendrapandeya5081
    @gajendrapandeya5081 3 года назад +3

    Awesome man. Never seen such awesomoe content that too within 2 minutes. You are great

  • @Mohit-il9gx
    @Mohit-il9gx 3 года назад +5

    Hey !! I have started my android development journey by your kotlin playlist ...which is just awsm 💯 🤩 great work bro ..! 😁😁

  • @unknown710
    @unknown710 3 года назад +1

    I understand and somewhat seen the clean architecture relevance in just 100 seconds. Amazing! Thanks for this great content.

  • @DarnellSleger
    @DarnellSleger 2 месяца назад

    The graphic of video is so good!!!. Good explanation I could have used 2 years ago.

  • @RudreshGunder
    @RudreshGunder 11 месяцев назад

    it is quick yet understood better than other videos. Thank you. For this video I subscribed you channel.

  • @kopilkaiser8991
    @kopilkaiser8991 Год назад

    Love the quick explanations. It was all needed to learn the concept easy and quick! I prefer this over the other over complicated videos. ⭐️⭐️⭐️⭐️⭐️

  • @edwinchukwuebuka895
    @edwinchukwuebuka895 2 года назад +2

    Very simple,understandable and straight to the point🙌

  • @ramakrishnavjoshi
    @ramakrishnavjoshi 3 года назад +3

    Can you make a video on a generic MVVM design pattern and then tell us how it is sensible for Android. Lots of Love from India. ❤️🇮🇳

  • @amitray769
    @amitray769 3 года назад +2

    Thank you so much. this is one of the best videos I have seen for the mvvm pattern in so less time.
    So what I learnt here is:
    model is the data source.
    View model contains the business logic
    and view contains only the UI manipulation part.

  • @yeadatwunyt8004
    @yeadatwunyt8004 Год назад

    The best 100 seconds of anything I've ever watched

  • @shanazar8557
    @shanazar8557 3 года назад +2

    Inspired by Fireship?😄
    Great content bro! I love it🔥

    • @PhilippLackner
      @PhilippLackner  3 года назад +1

      Not by Fireship but by a German channel that does something similar on another topic :D Thanks!

  • @JaykrushnaSolanki
    @JaykrushnaSolanki Год назад

    Very simple sir. Thanks sir.

  • @ChrisAthanas
    @ChrisAthanas 3 года назад +1

    Good explanation I could have used 2 years ago

  • @understand___
    @understand___ 2 года назад

    very straightforward, saving lots of time

  • @prkofc
    @prkofc 3 года назад

    Awesome!! Now I cant skip them.

  • @tommy9x
    @tommy9x 3 года назад

    The graphic of video is so good!!!

  • @TZCoder
    @TZCoder 3 года назад +12

    An interesting thing is that Google themselves dont consider the architecture they recommend to be MVVM! If you look at the jetpack architecture guide you will not find MVVM there and I have heard some of the Android team devs flat out reject that its MVVM, but the community seems to have decided it is, which goes to show some of the subjectivity involved in these type of things, so if you are confused don't stress it and do what allows you to get work done.

    • @felixurrutia4246
      @felixurrutia4246 Год назад

      Yes, Model, View, and Controller. What else can it be?

  • @vladmkrtumyan1660
    @vladmkrtumyan1660 Год назад

    THIS IS EXACTLY WHAT WE NEED - gold

  • @GabrielGongoraNavarrete
    @GabrielGongoraNavarrete 10 месяцев назад +1

    ¿How many viewmodels in a app? ¿Single or multiple for every module?

  • @manuelsteele8030
    @manuelsteele8030 Год назад +4

    I am new to iOS Apps and have been reviewing a Quiz App on a Udemy tutorial done with MVVM and SwiftUI (not storyboards). I know the "Model" can just be the definition of the regular data struct. Next, the View defines the main view, child views, etc. The "View Model" on that course fills the data using the structs from the Model. Then it adds event handling code for the quiz for correct or incorrect selections. The View Model seems somewhat similar to the "controller" in the MVC model taught for old school Java Android apps or Java Servlets (circa 2013 - lol). But I understand there is controversy among MVVM on whether if it is valid for production. For the simple quiz on that Udemy tutorial, MVVM clearly works. But perhaps for more complicated production scenarios MVVM has its limits? If so, then what is a better solution of architecture? I am going to dive into the threads and articles soon to analyze that. This is just a thought on observations. I am still in the early learning stages on iOS App development. I have worked with Java and C# off-and-on for decades. I have used python heavily the past 8 years. It's fun to learn different development environments and code for iOS Apps.

    • @EdKolis
      @EdKolis 9 месяцев назад

      The view model is similar to the controller from MVC; if I'm not mistaken, MVVM was invented as an improvement on MVC because the controller was too abstract and caused the code to be hard to read, as a single controller could tie together numerous views and models that are only superficially related. But a view model is more specifically targeted and works with a specific view and model, the downside being you could wind up writing several view models that do basically the same thing if you're not careful.

  • @alvaroisea2259
    @alvaroisea2259 3 года назад

    cool video man, straight to the point!!!

  • @tommy9x
    @tommy9x 3 года назад +1

    Do you have MVVM only playlist - mvvm crash course ?

  •  Год назад +1

    MVC with different terminology? This explanation matches my understanding of MVC.
    I read that a difference between MVC and MVVM is how the observer pattern is used by the view so that the view doesn't have knowledge of the controller. I would argue that the observer pattern is a controller, since if you've ever worked with UML MVC diagrams it's clear that you can have multiple controllers and are able to chain them. That would make the View a View-Controller-Model where "Model" here is the representation of the UI state, then the "ModelView" and Model a Model-Controller-Model pattern where the first occurrence of "Model" is again the UI state and the second occurrence of "Model" is the repository. Did I understand correctly or am I missing something?
    If I did understand this correctly, it seems odd that MVVM is described as an alternative to MVC rather than as a specific pattern built atop the constructs of MVC.

    • @ohmegatech666
      @ohmegatech666 19 дней назад

      Honestly I have yet to see a good description of MVVM that clearly differentiates it from MVC

  • @prashanthbhat4171
    @prashanthbhat4171 3 года назад

    Awesome..hope to see more like this🙌

  • @mitotv6376
    @mitotv6376 5 месяцев назад

    Very nice explanation

  • @Sc2MooDy
    @Sc2MooDy 3 года назад

    Great video, thanks and keep it up!

  • @hredaysagar7232
    @hredaysagar7232 3 года назад

    We want a series of Mvvm from you

  • @mkc0321
    @mkc0321 3 года назад

    amazing ...so much info in so less time

  • @wildniscamper7276
    @wildniscamper7276 4 дня назад

    how is the flow if the user makes an input..like a search request.. does it go from the view to ... ? because the view doesn't now the viewmodel.. all in all it's centralisation right✌️

  • @Name-t9fbd
    @Name-t9fbd Месяц назад +1

    You described MVP, not MVVM. Your statement that Viewmodel contains business logic is incorrect. Viewmodel is kind of a caching proxy holding data for View on the client side. In the MVVM architecture, business logic belongs to the Model part, i.e. a server with repository. However, in the MVP architecture, Presenter (P) does contain business logic, while Model is a pure repository.

  • @carlosneres8764
    @carlosneres8764 11 месяцев назад

    What a great video! thxxx

  • @nikhilagrawal9217
    @nikhilagrawal9217 9 месяцев назад

    Thanks a lot for this video.

  • @manishpingale6558
    @manishpingale6558 3 года назад

    Awesome video
    Make more like this

  • @ahmadiyoussef2121
    @ahmadiyoussef2121 Год назад

    Awsome explanation

  • @joelvarghese3370
    @joelvarghese3370 3 года назад

    Woah this is awesome🔥🔥

  • @husseinabdulkareem1146
    @husseinabdulkareem1146 10 месяцев назад

    very clear
    thank you

  • @reshabprasad6793
    @reshabprasad6793 3 года назад +1

    U r awesome 👨‍💻

  • @neicat
    @neicat 3 года назад +1

    Entendible, gracias Crack!!

  • @shaiknagoorvali8983
    @shaiknagoorvali8983 3 года назад

    Nice Explanation

  • @sasidharan4460
    @sasidharan4460 3 года назад

    Thank you so much!.

  • @thearpansircar
    @thearpansircar 3 года назад

    Love the animation

  • @KDTechverse
    @KDTechverse Год назад

    Life saver 🙌

  • @tunamusic2314
    @tunamusic2314 3 месяца назад

    does it have MVVM in web develop or just android ?

  • @cagneymoreau4216
    @cagneymoreau4216 2 года назад

    best explanation

  • @stefanosgiannakis7151
    @stefanosgiannakis7151 3 года назад

    You have a very nice channel.

  • @xphis0528
    @xphis0528 Год назад

    is the xml like the view and the kt file for the model and logic?

  • @mehmedcavas3069
    @mehmedcavas3069 9 месяцев назад

    whats the difference between mvvm and mvc. I mean the viemodel does the same thing like a controller. controller handles the model and fires events if something changes. views can listen to them and update them

    • @MedioNoOficial
      @MedioNoOficial 9 месяцев назад +1

      In MVC controller receive the requests and serve the view to the client (a generated html) through http. In ViewModel there is not http requests, it only binds DAO with UI in a more centralized way, specially in mobile apps.

    • @Name-t9fbd
      @Name-t9fbd Месяц назад

      MVC is outdated. The role of Controller is now fulfilled by a mouse driver and an operation system. You do not need a controller in a modern app. Yet, splitting your program into several decoupled parts is a nice idea. For that reason people come up with all those MV* stuff. Your short description reveals that you are likely using the MVP architecture and have named your Presenter part "controller". To answer your question, there's no difference because the author of the video errorously described the MVP architecture calling it MVVM.

  • @lewispil3529
    @lewispil3529 4 месяца назад

    awesome video

  • @joelwisdom-peters5024
    @joelwisdom-peters5024 2 года назад

    THANK YOU

  • @carbaj03
    @carbaj03 3 года назад

    And the business logic where is it? in the viewModel? in the repository? Maybe in the Use case? or in the entities?

    • @PhilippLackner
      @PhilippLackner  3 года назад

      Did you watch the video?

    • @carbaj03
      @carbaj03 3 года назад

      ​@@PhilippLackner you're right, you mention in the viewmodel, good video by the way

  • @r1sh149
    @r1sh149 3 года назад +1

    wow those animations

  • @George-nx8zu
    @George-nx8zu 2 года назад

    Is there another video that explains how MVP or MVI would normally run on Android?

  • @dr.strangelav4579
    @dr.strangelav4579 3 года назад

    budget fireship.io hehe.
    Loved it.
    Job well done!

  • @mohammadmirzakhanidehkordi8561
    @mohammadmirzakhanidehkordi8561 3 года назад

    so nice video tnx

  • @ngangshamchemdok7567
    @ngangshamchemdok7567 3 года назад +2

    I still can't wrap my head around, when exactly does the app become mvvm. I understand the different components that is in an Mvvm project, but i always fail to completely wrap my head around how all those components come together. Watched soo many videos regrading mvvm, but still can't draw a line in my head that seperates any other architecture project from mvvm architecture project.

    • @nesletchimaew9209
      @nesletchimaew9209 Год назад

      To me not even the name makes sense. It should be model viewmodel view. MVMV

    • @linnen_elm
      @linnen_elm Год назад

      Agree. Easy to understand my ass... i have this source code pointing to firebase and shjts... there is no way this is easy to understand by sparating shjts. No one ever called this particular codes easy to understand.. even the author himself LMAO

  • @ahmetbiyik7392
    @ahmetbiyik7392 3 года назад

    please make a video about scope storage, there is almost no good videos on this topic tutorial

  • @somith16
    @somith16 3 года назад

    Sir any new project video

  • @leeeric6292
    @leeeric6292 Год назад

    should provide source code of the mentioned example at the same time, to indicate which part is M, V, VM..

  • @ohmegatech666
    @ohmegatech666 19 дней назад

    OK but this sounds exactly like MVC. You didn't explain how the ViewModel is any different than a normal Controller in the MVC pattern

  • @macheeneraid230
    @macheeneraid230 3 года назад

    actually, up until now, i still not sure what does MVP and MVVM difference. I mean, layman term it is exactly the same.
    its just, MVVM uses livedata while MVP uses listeners

  • @КонстантинЪЪЪ
    @КонстантинЪЪЪ 3 года назад

    thankyouble :)

  • @shreyashchoudhary7413
    @shreyashchoudhary7413 3 года назад

    Epic!

  • @vishalgaurav4411
    @vishalgaurav4411 3 года назад

    Hello fireship :)

  • @ProvakorKonik
    @ProvakorKonik 3 года назад

    Awesome

  • @johndominicjasmin
    @johndominicjasmin 3 года назад

    Thank you so much♥️♥️

  • @georgemamdouh9131
    @georgemamdouh9131 3 года назад

    WOW 🔥🔥

  • @terencejumba1939
    @terencejumba1939 3 года назад

    nicee👌👌

  • @codymaverick7381
    @codymaverick7381 3 года назад

    next video on how to implement MVVM pleasee.

    • @DroidChief
      @DroidChief 3 года назад

      He already has two playlists about that on his channel. Check it out.

  • @LesterHarris-c9e
    @LesterHarris-c9e Месяц назад

    Belle Route

  • @BeckSimona-y4d
    @BeckSimona-y4d Месяц назад

    Evelyn Lodge

  • @MaloryMarsh-d2c
    @MaloryMarsh-d2c Месяц назад

    Laurine Plains

  • @rizkiadisaputra5971
    @rizkiadisaputra5971 3 года назад

    I HATE WHEN i found some tutorial make noobiest hard to understand what the heck is MVVM, I watched this tutorial without coding implementation but I understand what mvvm is.

  • @KerryMeyer-b1t
    @KerryMeyer-b1t 2 месяца назад

    Haley Plains

  • @ThackerayMyrna-p5x
    @ThackerayMyrna-p5x Месяц назад

    Howell Port

  • @EisenhowerNorman-n2g
    @EisenhowerNorman-n2g Месяц назад

    Ebert Springs

  • @HermilaEastham-n4i
    @HermilaEastham-n4i 2 месяца назад

    Schowalter Square

  • @FirstBloodMerch
    @FirstBloodMerch Месяц назад

    Jacquelyn Common

  • @DarellTutas-k2k
    @DarellTutas-k2k Месяц назад

    Daphney Viaduct

  • @thefattysplace
    @thefattysplace Год назад +29

    This is incorrect. Business logic should be in the model, not the viewmodel. The viewmodel just adapts/validates the data between the view and model and notifies of changes between the two.

    • @dmj8939
      @dmj8939 6 месяцев назад +5

      In the MVVM (Model-View-ViewModel) architecture pattern, business logic should be implemented in the ViewModel instead of the Model. The main reason for this choice is that the ViewModel is responsible for mediating the communication between the View and the Model and acts as an intermediary layer between them.
      In MVVM, the Model is responsible for data handling and presenting data without any business logic. In other words, the Model handles data modeling, database logic, and communication with the database, while the ViewModel implements business logic, complex calculations, input control, data validation, and any other business processing.
      Therefore, you should implement business logic, complex calculations, input control, data validation, and any type of business processing in the ViewModel. This approach helps you separate concerns and keep the View free from handling business logic, ensuring a clean separation of responsibilities in your Android app.

    • @dmj8939
      @dmj8939 6 месяцев назад +2

      I read more documents and I understand: business logics is for repository and UI logics is for View model

    • @thefattysplace
      @thefattysplace 6 месяцев назад

      @@dmj8939 Correct. That way, business logic is kept at a separate layer to the UI. Only things directly related to the UI should be in the view model.

    • @thebowshock7729
      @thebowshock7729 5 месяцев назад

      ​@@thefattysplace Repositories are not business logic

    • @thefattysplace
      @thefattysplace 5 месяцев назад

      @@thebowshock7729 an odd comment as no one mentioned repositories. But they can be, if your business logic is in a repository!

  • @JuliaRepine-s2l
    @JuliaRepine-s2l Месяц назад

    Lubowitz Springs

  • @EveSanders-w6q
    @EveSanders-w6q Месяц назад

    Carolina Mill

  • @FransiscaDashiell-z3e
    @FransiscaDashiell-z3e 2 месяца назад

    Gleichner Ridges

  • @CarrieRudolf-t3z
    @CarrieRudolf-t3z Месяц назад

    Daugherty Highway

  • @RichardCunningham-n8i
    @RichardCunningham-n8i Месяц назад

    Melisa Forge

  • @LynchWright-x2z
    @LynchWright-x2z Месяц назад

    Regan Lodge

  • @DebraMartin-i6f
    @DebraMartin-i6f 2 месяца назад

    Lucius Springs

  • @SarahPerez-d7i
    @SarahPerez-d7i Месяц назад

    Schinner Cliff

  • @HughGloria-l9m
    @HughGloria-l9m 2 месяца назад

    Ferry Knolls

  • @BruceMonroe-f9o
    @BruceMonroe-f9o Месяц назад

    Grady Roads

  • @AlbertoHeberer-b7e
    @AlbertoHeberer-b7e 2 месяца назад

    Dorian Springs

  • @MorrisBarney-l9f
    @MorrisBarney-l9f Месяц назад

    Ritchie Extension

  • @FumikoSzal-p6n
    @FumikoSzal-p6n Месяц назад

    Brandyn Forks

  • @LouisGrote-x1b
    @LouisGrote-x1b Месяц назад

    Douglas Streets

  • @BernardAvery-s1b
    @BernardAvery-s1b Месяц назад

    Lindgren Cliffs

  • @MiguelOneal-e6c
    @MiguelOneal-e6c Месяц назад

    Terrance Extension

  • @AleynaAndıç-c9d
    @AleynaAndıç-c9d 2 месяца назад

    Florence Cape