<https://en.wikipedia.org/wiki/Model%E2%80%93view%...
# random
c
So my issue (i guess not issue, but gray area) with that chart is the two way arrow for databinding. and... like if there was this identical graph that was used explaining mvc, mvp, etc then it would make more sense to me maybe. idk. my point is like... aren't there like 15 variations of MVVM anyway. What is the canonical source for what MVVM actually is?
k
AFAIK, it was first used by MS...and the refs in that link seem to agree w/ that...earliest usage was 2005.
👍 1
databinding is one way to talk to the viewmodel...but the main concept is the VM is the layer the view talks and gets info from. In current forms, it's more used w/ reactive patterns (though you could argue databinding was reactive)
👍 1
c
But like. isn't that just MV*? maybe my issue is that i dont actually know the difference between MVP, MVC, and MVVM.
k
no..the arrows are different
c
So the real difference isn't the difference in entity names its the arrows between them?
k
yep..the important part is the arrows
c
Gotcha. maybe thats what ill do then. try to actually figure out the arrows.
@kenkyee thanks for that article. I think this photo is what im really looking for. that should help me iron things out. much appreciated
👍 2
k
MVP/MVC also tend to have a lot more boilerplate FWIW...lots of interfaces.
c
Any idea what's trying to be signified by UI event callback vs inform UI event?
k
one is reactive, one is a callback
if you look at examples of MVP boilerplate, you'll see a lot of callbacks defined....
c
Where Activity/Fragment sit also makes stuff interesting. but okay. ima let this wash over me a bit and see if it makes more sense in the morning. thanks again ken. ❤️
👍 1
k
yeah, those essentially implement the boilerplate interfaces for MVC/MVP
😍 1
count yourself lucky to have not worked in a VIPER codebase (it's MVP broken down a bit more)
😂 2
e
I think the problem with all of those diagrams are that having an Activity/Fragment anywhere in your architecture other than an entry point from the OS is asking for trouble
👍🏾 1
👍 1
a
Ken lol what’s wrong with the viper
Jk 😂
He’s absolutely right.
k
it's awesome if you like crap tons of interfaces and callback methods and "clean arch" that's convoluted 😂
👍 1
a
And forwarding things everywhere, but depending on which viper stack you’re in, different intermediate logic. It’s great
💯 1
k
and unit tests that just make sure you hooked up all the interfaces correctly 😂
😭 2