2015-12-19 30 views

Odpowiedz

24

Dobrze, aby dowiedzieć się, jak efektywnie korzystać z MVVM, zacząć Android MVVM Design Pattern Examples

Tutaj można znaleźć ten wpis:

Jestem deweloper Android-Binding. Tak jak powiedział @Brentley, jest to bardzo nowy projekt, ale mam nadzieję, że dzięki niemu zyskasz więcej szumów i doświadczenia, dzięki czemu można go ulepszyć. Powrót do pytania, napisałem kilka prostych Wprowadzenie/tutoriale na MVVM z android wiążące:

potencjalnych rodziców adopcyjnych zadowolić również Zarejestruj się na project discussion group.

Przeczytaj cały temat. Można by zauważyć, że MVVM jest stosunkowo nowe ramy i jest wysoce zalecane, aby z nim pracować wspólnie z p Data Binding biblioteki i iniekcji zależność biblioteki Google jak Roboguice lub Dagger2 ...

... ale najlepiej byłoby to jedno:

Approaching Android with MVVM. Building an MVVM architectured application using the Data Binding Library,

gdzie autor wyjaśnia użyciu MVVM powiązanie danych z biblioteki przez przykład - mam na myśli własnej stworzonej aplikacji. Kończy on:

Jest jeszcze zbyt wcześnie, aby wiedzieć, czy to podejście jest prawidłowym sposobem tworzenia aplikacji, ale ten eksperyment dał mi szansę spojrzenia na jedną z możliwości przyszłych projektów. Jest to coś, z czym zdecydowanie chcę się bawić.

Model-View-ViewModel jest interesujący, ponieważ w tradycyjnej architekturze Androida kontroler przesyła dane do widoku. Możesz znaleźć widok w swojej działalności, a następnie ustawić na nim treść.

W przypadku MVVM numer ViewModel zmienia część zawartości i powiadamia o powiązanej strukturze danych o zmienionej zawartości. Struktura automatycznie aktualizuje wszelkie widoki, które są związane z tą zawartością.

Te dwa komponenty są luźno sprzężone tylko przez ten interfejs danych i poleceń.

Kolejny wniosek z użyciem MVVM jest naprawdę sprawdzalny.Od MVVM on Android: What You Need to Know

Ponieważ ViewModel nie zależy na View już można przetestować ViewModel bez View nawet istnieć. Przy odpowiednim wtrysku zależności dla innych zależności testowanie jest bardzo proste.

Na przykład, zamiast wiązania maszyny wirtualnej z rzeczywistym widokiem, można utworzyć maszynę wirtualną w teście, podać jej dane, a następnie wywoływać na niej akcje, aby upewnić się, że dane zostały przekształcone prawidłowo. (...) Wszystko to można zrobić bez interakcji z rzeczywistym widokiem.

Czytaj także: MVVM ON ANDROID USING THE DATA BINDING LIBRARY

Mam nadzieję, że pomoże

+1

O stanowisko stablekernel blogu, czytałem go kilka dni temu, ale muszę pamiętać, że nie jest całkowicie zgodny z MVVM. Wprowadza obawy dotyczące widoku do ViewModel (OnFocusListener, View type). Jak wszystko od Google, nie wydaje się zbyt dobrze przemyślane lub dojrzałe. Układy Xml nadal nie są zbyt elastyczne jako XAML dla przykładu, więc nadal będzie ** bardzo ** trudne do wdrożenia prawdziwej MVVM w Apps – Tseng

+0

Deweloperzy zawsze mówią, że MVP jest bardziej dojrzały i łatwo pozwala programistom na testowanie w porównaniu do MVVM! –

+0

Nie kupuję tej architektury pochodzącej z Knockouta i przechodzę do strumienia/reaguję. To po prostu zbyt nieprzewidywalne. – frostymarvelous