Mikroserwisy muszą być wspomniane przynajmniej raz na kilka artykułów, podobno w innym wypadku blog jest uznawany za archaiczny. Korzystając z tej architektury łatwo jest jednak strzelić sobie w stopę. Systemy oparte na zdarzeniach mają wiele zalet - niski coupling, ułatwiona komunikacja z biznesem oraz duża elastyczność.
Architektura 1345 dni, 10 godzin, 5 minut temu 135 źrodło rozwiń
Po przeczytaniu poprzednich wpisów, zasada działania i zastosowanie RX powinny być już jasne. Jeśli tak nie jest, koniecznie zachęcam do przeczytania tamtych postów. Jak wspomniałem, RX to ujednolicony model, umożliwiający korzystanie z kolekcji typu “push-based” w jednakowy sposób. Dzisiaj pokażę jak sprawa wygląda dla zdarzeń czyli jak skonwertować EventHandler do IObervable. Oczywiście kluczem do rozwiązania jest klasa Observable, która zawiera mnóstwo rozszerzeń dla interfejsów IObservable\IObserver...
Sztuka programowania 4340 dni, 3 godziny, 58 minut temu 48 źrodło rozwiń
Programując, wcześniej czy później będziemy zmuszeni nauczyć się obsługi zdarzeń (events). Opisując program z laborek wyjaśnię jak korzystać ze zdarzeń według wzorca .NETu. Zdarzenia Początkujący programiści mogą nie wiedzieć czym są zdarzenia, ale zapewne ich używają. Bo czy nie zdarzyło się komuś wpisać fragmentu kodu do Form1Load(…) lub button1Click(…)? Podejrzewam, że takich osób jest niewiele. Tak jak w życiu codziennym, tak i w programowaniu są pewne zdarzenia na które musimy odpow...
W tym artykule przedstawię w jaki sposób przeszukiwać dysk twardy tak, aby użytkownik był informowany o aktualnie sprawdzanym katalogu oraz posiadał listę już odnalezionych plików. Oczywiście warunkiem koniecznym jest aby interfejs użytkownika był cały czas aktywny, natomiast sam użytkownik mógł w dowolnym momencie przerwać przeszukiwanie. Moduł będzie zintegrowany z interfejsem w WPF.
Ostatnio pomogłem rozwiązać dwa problemy z "nie działającymi" zdarzeniami. Jak to najczęściej bywa, znając rozwiązanie, problem wydaje się banalnie prosty. Ponieważ jednak dojście do rozwiązania nie zawsze jest już tak proste postanowiłem napisać ten post. Ogólnie problem został mi przedstawiony mniej więcej w taki sposób (luźny cytat): Podczepiłem się pod zdarzenia kilku kontrolek ale po wykonaniu post back'a do strony, metody obsługi zdarzeń nie są wołane. W obu wspomnianych sytuacjach obserwowany e...
Przypuśćmy że mamy zdarzenie public event EventHandler
Od jakiegoś czasu pracuję nad uelastycznieniem i zapewnieniem rozszerzalności w dużej aplikacji ASP.NET. W związku z tym zacząłem poszukiwać w sieci sensownego gotowca implementującego wzorzec agregatora zdarzeń; wszak po co wyważać otwarte drzwi .W moich poszukiwaniach dotarłem do artykułu na blogu Denisa Vuyka. Opisuje on użycie agregatora zdarzeń w połączeniu z MEF (Managed Extensibility Framework). Implementacja została “wyciągnięta” z projektu Prism (Composite WPF). Pozostały w niej jednak pewne el...
Autor: Dzisiaj napiszę o rzeczy bardzo prostej ale, o której jednak zdarzyło mi się zapomnieć przez co zmarnowałem trochę czasu. Sytuacja miała miejsce kiedy pracowałem nad kontrolkę, która na swoim interfejsie publicznym między innymi udostępniała zdarzenia SelectionChanged. W kodzie wyglądało to jakoś tak:
Testowanie obsługi zdarzeń oraz faktu ich wywołania jest niekiedy równie ważne co przetestowanie każdej innej integracji pomiędzy dwoma obiektami. Scenariusz jest na tyle specyficzny, że poświęcę mu osobną notkę.
Dzisiejszy post jest sponsorowany przez hipotetyczną hurtownię, której właściciele chcą zbudować system zarządzania towarami w oparciu o metodykę DDD. Skrócony opis domeny biznesowej przedstawia się następująco. Hurtownia ma na stanie wiele produktów. Każdy produkt ma określoną ilość, która znajduje się w magazynie. Ilość ta jest określona w jednostce miary danego produktu. Produkty mogą być zamawiane (pewna ilość produktu jest tymczasowo przypisywana d...
Architektura 5587 dni, 5 godzin, 47 minut temu 87 źrodło rozwiń
Artykuł omawia w jaki sposób można stworzyć własnego TraceListener’a.
Zdarzenia nie są tak proste, jak się wydają. Do "autopromocji" skłoniła mnie beztroska w wywoływaniu zdarzeń, jaką zauważyłem w jednym z tutejszych artykułów.