WPF MVVM PasswordBox Binding

Jak już wspominałem w jednym z  postów, bardzo odpowiada mi pełna separacja UI od reszty kodu jaką zapewnia wzorzec MVVM i doceniam w pełni jego zalety. Czasem jednak pojawia się klasyczne „g..no w szprychy” podczas jakieś prostej do wykonania w code-behind czynności.

Dzisiaj, podczas pracy nad desktopową aplikacją do robota pojawił się problem z bindigiem hasła z PasswordBox-a.  O ile w przypadku TextBox-a nie ma z  tym żadnego problemu, to w przypadku PasswordBox własność Password nie jest własnością zależną (DependencyProperty) więc zwykły binding nie wchodzi w grę.

Messenger w MVVM Light

MVVM Light jest moją ulubioną biblioteką wspomagającą implementację wzorca MVVM. Używam jej w zasadzie w większości projektów WPF, a wkrótce będę testował jej wykorzystanie w Xamarin Forms.

Dzisiaj kilka słów o klasie Messenger, wchodzącej w skład tej biblioteki. W dużym skrócie, Messenger pozwala na wymianę wiadomości (messages) pomiędzy obiektami. W praktyce, stosowany jest najczęściej do wysyłania wiadomości pomiędzy ViewModel-ami. Dzięki zastosowanie Messengera możemy zredukować do minimum lub całkowicie usunąć jakiekolwiek powiązania pomiędzy ViewModel-ami. To pozwoli (przy zastosowaniu dobrej architektury) zbliżyć się do magicznego S z zestawu zasad SOLID. Jakkolwiek możliwość pełnego zachowania Single Responsibility Principle w przypadku View Modeli jest kwestią nieco dyskusyjną, to redukowanie zależności pomiędzy klasami zawsze pozytywnie wpływa na jakość i testowalność kodu.

SandwichBoxBot – aplikacja desktopowa – wieści z placu boju

W ostatnich tygodniach nieco więcej skupiłem się na pisaniu postów na bloga niż na samym projekcie, nie znaczy to jednak że go odłożyłem. Ponieważ udało mi się kilka tygodni temu podgonić trochę tematy związane z komunikacją, nadal z grubsza biorąc mieszczę się w założonych ramach czasowych.

MVVM … czy nie ?

To trochę zadziorne pytanie. Wzorzec MVVM znajduje zastosowanie w światku .NET w aplikacjach WPF/Silverligh (tak BTW, ciekawe czy ktoś jeszcze pracuje w tej technologii) i od niedawna również w mobilno-wieloplatformowym Xamarin FORMS.

Jak pobawić się elektroniką i Arduino wydając 0 pln

Z elektroniką oraz technologiami embedded i IoT jest troszkę tak, że żeby zacząć się nimi bawić trzeba przeskoczyć (co prawda nie wysoki, ale jednak) jakiś finansowy próg wejścia. Mam tu na myśli zakup płytki Arduino (lub jakiegoś klona). Zakup płytki stykowej, kabelków połączeniowych, rezystorów, diód, przycisków itp. Co jednak zrobić, jeżeli chcemy się tylko pobieżnie zapoznać z tematem elektroniki i/lub programowania Arduino, żeby wybadać czy jest to coś co „tygryski lubią najbardziej”, czy też jednak „blahhh…”.