MVVM - Zalety
Wzorzec MVVM jest ostatecznie nowoczesną strukturą wzorca MVC, więc głównym celem jest nadal ten sam, aby zapewnić wyraźne oddzielenie logiki domeny od warstwy prezentacji. Oto niektóre zalety i wady wzorca MVVM.
Kluczową korzyścią jest umożliwienie prawdziwego oddzielenia Widoku od Modelu, poza osiągnięciem separacji i wydajnością, jaką zyskujesz dzięki temu. W rzeczywistości oznacza to, że kiedy model wymaga zmiany, można go łatwo zmienić bez konieczności wyświetlania i odwrotnie.
Istnieją trzy ważne kluczowe rzeczy, które wynikają z zastosowania MVVM, które są następujące.
Konserwowalność
Czyste oddzielenie różnych rodzajów kodu powinno ułatwić przejście do jednej lub kilku bardziej szczegółowych i skoncentrowanych części i wprowadzanie zmian bez obaw.
Oznacza to, że możesz zachować elastyczność i szybko przechodzić na nowe wersje.
Testowalność
Dzięki MVVM każdy fragment kodu jest bardziej szczegółowy i jeśli jest prawidłowo zaimplementowany, Twoje zewnętrzne i wewnętrzne zależności są oddzielnymi fragmentami kodu z części z podstawową logiką, którą chciałbyś przetestować.
To znacznie ułatwia pisanie testów jednostkowych na podstawie logiki podstawowej.
Upewnij się, że działa poprawnie po napisaniu i działa nawet w przypadku zmian w konserwacji.
Rozciągliwość
Czasami nakłada się to na łatwość utrzymania, ze względu na czyste granice separacji i bardziej szczegółowe fragmenty kodu.
Masz większe szanse na uczynienie którejkolwiek z tych części bardziej wielokrotnego użytku.
Ma również możliwość zastępowania lub dodawania nowych fragmentów kodu, które robią podobne rzeczy, we właściwych miejscach w architekturze.
Oczywistym celem wzorca MVVM jest abstrakcja widoku, która zmniejsza ilość logiki biznesowej związanej z kodem. Jednak oto kilka innych solidnych zalet -
- ViewModel jest łatwiejszy do testowania jednostkowego niż kod związany z kodem lub kod sterowany zdarzeniami.
- Możesz to przetestować bez niezręcznej automatyzacji interfejsu użytkownika i interakcji.
- Warstwa prezentacji i logika są luźno powiązane.
Niedogodności
- Niektórzy uważają, że w przypadku prostych interfejsów użytkownika MVVM może być przesadą.
- Podobnie w większych przypadkach może być trudno zaprojektować ViewModel.
- Debugowanie byłoby nieco trudne, gdy mamy złożone powiązania danych.