W poprzednim wpisie opisywałem architektoniczny wzorzec MVC, tym razem przedstawiam jego dużo młodszego brata, czyli wzorzec MVVM.
MVC dobrze funkcjonuje w pewnych określonych obszarach, np. na stronach webowych, ale nie do końca sprawdza się w aplikacjach klienckich z interfejsem graficznym. Niezależnie, czy problem dotyczy programu na PC, smartfon, czy tablet. Oczywiście przy odpowiedniej implementacji prawdopodobnie dałoby się zastosować taki wzorzec również tu, ale zamiast tego powstał MVVM, który jest lepiej dopasowany do realiów tego typu wdrożeń.
-
Bestseller
Promocja
To książka przeznaczona dla inżynierów, którzy chcą stosować systemy uczenia maszynowego do rozwiązywania rzeczywistych problemów biznesowych. Zaprezentowano w niej systemy ML używane w szybko rozwijających się startupach, a także przedstawiono holistyczne podejście do ich projektowania ― z uwzględnieniem różnych komponentów systemu i celów osób zaangażowanych w proces. Dużo uwagi poświęcono analizie decyzji projektowych, dotyczących między innymi sposobu tworzenia i przetwarzania danych treningowych, wyboru wskaźników, częstotliwości ponownego treningu modelu czy techniki monitorowania pracy aplikacji. Zaprezentowana tu koncepcja iteracyjna natomiast pozwala na uzyskanie pewności, że podejmowane decyzje są optymalne z punktu widzenia pracy całości systemu. Co ważne, poszczególne zagadnienia zostały zilustrowane rzeczywistymi studiami przypadków.
(59,40 zł najniższa cena z 30 dni)
64.35 zł
99.00 zł(-35%)
-
Promocja
Przekonaj się, jak fascynująca jest kryptografia! Poznaj historię rozwoju kryptografii Opanuj jej matematyczne podstawy Rozpracuj najważniejsze algorytmy kryptograficzne Dowiedz się, jak zastosować je w praktyce Kryptografia to dziedzina nauki, której sedno stanowią sposoby bezpiecznego przekazywania informacji. Jest ona niemal tak stara, jak nas
(47,40 zł najniższa cena z 30 dni)
51.35 zł
79.00 zł(-35%)
-
Bestseller
Nowość
Promocja
Modele bazowe (foundation models) zapoczątkowały prawdziwy rozkwit aplikacji opartych na sztucznej inteligencji. AI stała się potężnym narzędziem rozwojowym, którego dziś może używać niemal każdy. Decyzja o stworzeniu własnej aplikacji AI wymaga jednak zrozumienia procesu budowy i świadomego podejmowania decyzji projektowych.
(77,40 zł najniższa cena z 30 dni)
83.85 zł
129.00 zł(-35%)
-
Promocja
Daniel Tammet, zakochany w matematyce autystyczny sawant, prowadzi czytelnika po meandrach liczb z zaskakującym wdziękiem, lekkością i ciepłym humorem. Udowadnia, że kombinatoryka, ułamki i równania nie są tylko odstręczającymi abstrakcjami, lecz stanowią tkankę rzeczywistości, przesiąkają każdy jej aspekt, a w dodatku są zwyczajnie... piękne.
(9,90 zł najniższa cena z 30 dni)
35.93 zł
49.90 zł(-28%)
-
Bestseller
Nowość
Promocja
Programowanie PLC to już nie tylko automatyzacja procesu. To dziedzina, która skupia wokół siebie szereg technologii, narzędzi i języków programowania. W nowoczesnych aplikacjach to również bezpośrednia integracja z systemami IT, logowanie danych do informatycznych baz danych - wszystko z uwzględnieniem wytycznych związanych z cyberbezpieczeństwem. Idea stosowania sterowników PLC pozostaje jednak niezmienna: to urządzenia, których zadaniem jest automatyzacja procesu i które ze względu na wysoką elastyczność stosowane są w praktycznie każdej gałęzi przemysłu. Przemysłu, w którym ciągle brakuje specjalistów i osób chętnych do nauki nowych umiejętności. Może właśnie Ty będziesz jednym z nich?
(41,40 zł najniższa cena z 30 dni)
44.85 zł
69.00 zł(-35%)
-
Nowość
Promocja
Jak stać się „szefem doskonałym”? Jakich grzechów upadłych liderów warto unikać? Dlaczego irracjonalne zachowania dominują w biznesie? Jak zarządzać pokoleniem „delikatnych płatków śniegu”? Dlaczego psycholog powinien zastąpić owocowe czwartki? Jak zabezpieczyć się przed „toksykami” w firmie i w kontaktach biznesowych?
inssze/inssze.mp3
inssze
(35,94 zł najniższa cena z 30 dni)
38.94 zł
59.90 zł(-35%)
-
Bestseller
Promocja
W tej unikalnej książce znajdziesz kompleksowe omówienie procesu tworzenia LLM, od pracy z zestawami danych po implementację architektury modelu, wstępne szkolenie na nieoznakowanych danych i dostrajanie do określonych zadań. Bez korzystania z gotowych bibliotek LLM samodzielnie zbudujesz podstawowy model, przekształcisz go w klasyfikator tekstu, a ostatecznie stworzysz chatbota, który będzie wykonywał Twoje polecenia. I co najważniejsze ― naprawdę zrozumiesz, jak działa model, w końcu będziesz jego twórcą!
(59,40 zł najniższa cena z 30 dni)
64.35 zł
99.00 zł(-35%)
-
Bestseller
Nowość
Promocja
Ten obszerny przewodnik pokaże Ci, jak stosować najlepsze praktyki w pracy z LLM. Znajdziesz tu omówienie kluczowych koncepcji, praktyczne techniki i porady ekspertów z zakresu inżynierii danych, dostrajania i oceny modeli, optymalizacji wnioskowania, a także budowania skalowalnych potoków przetwarzania. Krok po kroku prześledzisz, jak zrealizować konkretny produkt, integrując różne aspekty inżynierii LLM i metodologię MLOps. Dowiesz się, jak zbierać i przygotowywać dane, dostrajać modele do specyficznych zastosowań, zwiększać ich wydajność i wdrażać rozwiązania oparte na technice RAG.
(71,40 zł najniższa cena z 30 dni)
77.35 zł
119.00 zł(-35%)
-
Promocja
Odkąd pingwiny sięgały pamięcią, zawsze mieszkały na tej właśnie górze lodowej. „To nasz dom” — powiedziałyby Ci, gdybyś kiedykolwiek odnalazł drogę do ich świata z lodu i śniegu. Powiedziałyby również: „To zawsze będzie nasz dom”. To wydawałoby się całkiem logiczne z ich punktu widzenia. A jednak pewnego dnia coś się zmieniło — mały pingwin dostrzegł, że ten świat stopniowo ulega zagładzie. Innym mieszkańcom góry ta perspektywa wydawała się tak nieprawdopodobna, że odrzucili tę niepokojącą wiadomość. Zmiana? Nie ma takiej możliwości!
(26,94 zł najniższa cena z 30 dni)
29.18 zł
44.90 zł(-35%)
-
Bestseller
Promocja
Deep Web to ogromna, ukryta część Internetu, która pozostaje niewidoczna dla tradycyjnych wyszukiwarek takich jak Google. Obejmuje zasoby nieindeksowane przez standardowe boty – bazy danych, repozytoria naukowe, archiwa statystyczne czy wyspecjalizowane wyszukiwarki branżowe. W przeciwieństwie do Dark Webu, Deep Web nie jest anonimową przestrzenią przestępczą, lecz miejscem dostępu do wartościowych i często darmowych informacji. Znajomość Deep Webu pozwala dotrzeć do wiarygodnych źródeł danych z zakresu demografii, zdrowia, edukacji, środowiska czy gospodarki. To również nieocenione narzędzie dla analityków, dziennikarzy, badaczy i osób podejmujących decyzje na podstawie twardych danych.
(39,80 zł najniższa cena z 30 dni)
36.90 zł
199.00 zł(-81%)
Historia i idea
MVVM został ogłoszony w 2005 roku na blogu Johna Gossmana, jednego z architektów pracujących w Microsofcie, który w owym czasie zajmował się WPF i Silverlight. Z założenia MVVM miał rozwiązać kilka standardowych problemów, które można spotkać w technologiach Microsoftu:
- podziału strony/widoku/okna na XAML i code-behind,
- separacji warstw, a raczej jej braku,
- uproszczenia implementacji złożonych interfejsów użytkownika.
-
Bestseller
Promocja
To książka przeznaczona dla inżynierów, którzy chcą stosować systemy uczenia maszynowego do rozwiązywania rzeczywistych problemów biznesowych. Zaprezentowano w niej systemy ML używane w szybko rozwijających się startupach, a także przedstawiono holistyczne podejście do ich projektowania ― z uwzględnieniem różnych komponentów systemu i celów osób zaangażowanych w proces. Dużo uwagi poświęcono analizie decyzji projektowych, dotyczących między innymi sposobu tworzenia i przetwarzania danych treningowych, wyboru wskaźników, częstotliwości ponownego treningu modelu czy techniki monitorowania pracy aplikacji. Zaprezentowana tu koncepcja iteracyjna natomiast pozwala na uzyskanie pewności, że podejmowane decyzje są optymalne z punktu widzenia pracy całości systemu. Co ważne, poszczególne zagadnienia zostały zilustrowane rzeczywistymi studiami przypadków.
(59,40 zł najniższa cena z 30 dni)
64.35 zł
99.00 zł(-35%)
-
Promocja
Przekonaj się, jak fascynująca jest kryptografia! Poznaj historię rozwoju kryptografii Opanuj jej matematyczne podstawy Rozpracuj najważniejsze algorytmy kryptograficzne Dowiedz się, jak zastosować je w praktyce Kryptografia to dziedzina nauki, której sedno stanowią sposoby bezpiecznego przekazywania informacji. Jest ona niemal tak stara, jak nas
(47,40 zł najniższa cena z 30 dni)
51.35 zł
79.00 zł(-35%)
-
Bestseller
Nowość
Promocja
Modele bazowe (foundation models) zapoczątkowały prawdziwy rozkwit aplikacji opartych na sztucznej inteligencji. AI stała się potężnym narzędziem rozwojowym, którego dziś może używać niemal każdy. Decyzja o stworzeniu własnej aplikacji AI wymaga jednak zrozumienia procesu budowy i świadomego podejmowania decyzji projektowych.
(77,40 zł najniższa cena z 30 dni)
83.85 zł
129.00 zł(-35%)
-
Promocja
Daniel Tammet, zakochany w matematyce autystyczny sawant, prowadzi czytelnika po meandrach liczb z zaskakującym wdziękiem, lekkością i ciepłym humorem. Udowadnia, że kombinatoryka, ułamki i równania nie są tylko odstręczającymi abstrakcjami, lecz stanowią tkankę rzeczywistości, przesiąkają każdy jej aspekt, a w dodatku są zwyczajnie... piękne.
(9,90 zł najniższa cena z 30 dni)
35.93 zł
49.90 zł(-28%)
-
Bestseller
Nowość
Promocja
Programowanie PLC to już nie tylko automatyzacja procesu. To dziedzina, która skupia wokół siebie szereg technologii, narzędzi i języków programowania. W nowoczesnych aplikacjach to również bezpośrednia integracja z systemami IT, logowanie danych do informatycznych baz danych - wszystko z uwzględnieniem wytycznych związanych z cyberbezpieczeństwem. Idea stosowania sterowników PLC pozostaje jednak niezmienna: to urządzenia, których zadaniem jest automatyzacja procesu i które ze względu na wysoką elastyczność stosowane są w praktycznie każdej gałęzi przemysłu. Przemysłu, w którym ciągle brakuje specjalistów i osób chętnych do nauki nowych umiejętności. Może właśnie Ty będziesz jednym z nich?
(41,40 zł najniższa cena z 30 dni)
44.85 zł
69.00 zł(-35%)
-
Nowość
Promocja
Jak stać się „szefem doskonałym”? Jakich grzechów upadłych liderów warto unikać? Dlaczego irracjonalne zachowania dominują w biznesie? Jak zarządzać pokoleniem „delikatnych płatków śniegu”? Dlaczego psycholog powinien zastąpić owocowe czwartki? Jak zabezpieczyć się przed „toksykami” w firmie i w kontaktach biznesowych?
inssze/inssze.mp3
inssze
(35,94 zł najniższa cena z 30 dni)
38.94 zł
59.90 zł(-35%)
-
Bestseller
Promocja
W tej unikalnej książce znajdziesz kompleksowe omówienie procesu tworzenia LLM, od pracy z zestawami danych po implementację architektury modelu, wstępne szkolenie na nieoznakowanych danych i dostrajanie do określonych zadań. Bez korzystania z gotowych bibliotek LLM samodzielnie zbudujesz podstawowy model, przekształcisz go w klasyfikator tekstu, a ostatecznie stworzysz chatbota, który będzie wykonywał Twoje polecenia. I co najważniejsze ― naprawdę zrozumiesz, jak działa model, w końcu będziesz jego twórcą!
(59,40 zł najniższa cena z 30 dni)
64.35 zł
99.00 zł(-35%)
-
Bestseller
Nowość
Promocja
Ten obszerny przewodnik pokaże Ci, jak stosować najlepsze praktyki w pracy z LLM. Znajdziesz tu omówienie kluczowych koncepcji, praktyczne techniki i porady ekspertów z zakresu inżynierii danych, dostrajania i oceny modeli, optymalizacji wnioskowania, a także budowania skalowalnych potoków przetwarzania. Krok po kroku prześledzisz, jak zrealizować konkretny produkt, integrując różne aspekty inżynierii LLM i metodologię MLOps. Dowiesz się, jak zbierać i przygotowywać dane, dostrajać modele do specyficznych zastosowań, zwiększać ich wydajność i wdrażać rozwiązania oparte na technice RAG.
(71,40 zł najniższa cena z 30 dni)
77.35 zł
119.00 zł(-35%)
-
Promocja
Odkąd pingwiny sięgały pamięcią, zawsze mieszkały na tej właśnie górze lodowej. „To nasz dom” — powiedziałyby Ci, gdybyś kiedykolwiek odnalazł drogę do ich świata z lodu i śniegu. Powiedziałyby również: „To zawsze będzie nasz dom”. To wydawałoby się całkiem logiczne z ich punktu widzenia. A jednak pewnego dnia coś się zmieniło — mały pingwin dostrzegł, że ten świat stopniowo ulega zagładzie. Innym mieszkańcom góry ta perspektywa wydawała się tak nieprawdopodobna, że odrzucili tę niepokojącą wiadomość. Zmiana? Nie ma takiej możliwości!
(26,94 zł najniższa cena z 30 dni)
29.18 zł
44.90 zł(-35%)
-
Bestseller
Promocja
Deep Web to ogromna, ukryta część Internetu, która pozostaje niewidoczna dla tradycyjnych wyszukiwarek takich jak Google. Obejmuje zasoby nieindeksowane przez standardowe boty – bazy danych, repozytoria naukowe, archiwa statystyczne czy wyspecjalizowane wyszukiwarki branżowe. W przeciwieństwie do Dark Webu, Deep Web nie jest anonimową przestrzenią przestępczą, lecz miejscem dostępu do wartościowych i często darmowych informacji. Znajomość Deep Webu pozwala dotrzeć do wiarygodnych źródeł danych z zakresu demografii, zdrowia, edukacji, środowiska czy gospodarki. To również nieocenione narzędzie dla analityków, dziennikarzy, badaczy i osób podejmujących decyzje na podstawie twardych danych.
(39,80 zł najniższa cena z 30 dni)
36.90 zł
199.00 zł(-81%)
W domyślnych wdrożeniach widoki są połączone z logiką i nie były w ogóle reużywalne.
MVVM rozwiązał powyższe problemy poprzez wprowadzenie architektury składającej się z trzech elementów:
- modelu (model),
- widoku (view),
- viewmodelu (viewmodel).
Pierwsze dwa wyglądają znajomo, choć widok pełni odrobinę inne funkcje niż w przypadku MVC. Tu nowością jest viewmodel, a także mechanizm data binding. Właśnie od tego elementu rozpocznę charakterystykę wzorca.
Data binding
Pewną bardzo fajną cechą wzorca MVVM jest to, że dane przechowywane przez model są automatycznie odświeżane w widoku, w sytuacji gdy dojdzie do modyfikacji danych po stronie viewmodelu. Wystarczy tylko zaimplementować odpowiedni interfejs po stronie viewmodelu/modelu, a następnie trzymać się pewnych konwencji. Ten mechanizm nazywany jest data binding, a powyższy opis to bardzo duże spłaszczenie obszernego tematu, któremu normalnie można by poświęcić osobny wpis.
Viewmodel
Centralnym elementem wzorca MVVM jest viewmodel. Można by powiedzieć, że to swego rodzaju odpowiednik controllera z MVC, ale byłoby to stwierdzenie bardzo na wyrost. Poniżej krótka charakterystyka tego elementu:
- Trzyma referencję do modelu.
- Wykształca mechanizm komend, które później są wykorzystywane w widoku do obsługi interakcji wywołanych przez użytkownika.
- Jest „bindowany” jako kontekst danych dla strony/widoku/okna.
- Powinien poprawnie implementować interfejs INotifyPropertyChanged.
Nie da się ukryć, że jest to swoiste spoiwo w architekturze MVVM.
W przypadku prostszych wdrożeń bardzo łatwo jest ulec pokusie pominięcia modelu opartego na typach prostych i wtłoczenia go bezpośrednio do viewmodelu.
Model
Model przechowuje pobrane/przetworzone przez viewmodel dane, które później zostaną „zbindowane” w widoku. Model powinien poprawnie implementować INotifyPropertyChanged i z założenia nie powinien posiadać żadnych elementów logiki biznesowej ani nawiązań do warstwy wizualnej projektu.
View
Ostatnim elementem całej układanki jest widok. W różnych technologiach Microsoftu nazywa się on inaczej. Czasem jest to po prostu widok, innym razem okno lub strona. Niezależnie od nazwy ten element jest odpowiedzialny za:
- utworzenie layoutu warstwy wizualnej,
- obsługę interakcji użytkownika za pomocą dedykowanych kontrolek, do których zostały „zbindowane” komendy utworzone po stronie kontrolera,
- ustanowienie kontekstu danych, do którego w poprawnej implementacji powinna zostać przypisana instancja viewmodelu,
- ustawienie za pomocą data binding pól zdefiniowanych w modelu jako właściwości poszczególnych kontrolek.
Tak utworzona aplikacja zawiera jawną separację warstw. Logika zostaje oddzielona od warstwy prezentacji oraz klas typu DTO. Każdego z tych elementów dużo łatwiej jest reużyć w innym miejscu programu. Ponadto mechanizm data binding rozwiązuje problem odświeżania danych, który przez długi czas był charakterystyczny dla aplikacji okienkowych.
Dziś przed problemami, które rozwiązuje MVVM, stoi branża internetowa, w której to aplikacje również muszą utrzymywać i aktualizować swój stan. Czy MVVM sprawdzi się i w tym przypadku?
Jerzy Piechowiak
Altcontroldelete.pl
Szukasz informacji o MVVC? Kliknij poniżej:
