dotnetomaniak.pl - Artykuły z tagiem Wzorce projektowe

W poprzedniej części niniejszego cyklu mimo usilnych starań nie udało się doprowadzić do przygotowania testów mających kontrolować refaktoryzowany kod. W tej części – mogę to obiecać – testy wreszcie powstaną. Przygotowania testów, zniweczyło występowanie we wszystkich czterech metodach wywołania statycznej metody Show() klasy MessageBox. Co począć z tym wywołaniem? Najbezpieczniejszym rozwiązaniem będzie ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 4.

Sztuka programowania 4267 dni, 20 godzin, 54 minuty temu PaSkol 53 źrodło rozwiń

Dotychczasowe działania refaktoryzacyjne doprowadziły do wydzielenia refaktoryzowanego kodu do oddzielnej klasy, w oddzielnym pliku. Aby bezpiecznie przeprowadzić dalsze modyfikacje konieczne jest uzyskanie wiarygodnego mechanizmu weryfikującego ich poprawność. Po prostu potrzebne są testy. W jaki sposób przetestować metody importujące dane? Najlepiej dokonać za ich pomocą importu i sprawdzić czy zaimportowany plik daje oczekiwane dane. Przyglądając się poszczególnym metodom można zauważyć, że wszystkie ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 3.

Sztuka programowania 4267 dni, 20 godzin, 54 minuty temu PaSkol 105 źrodło rozwiń

Dawno, dawno temu, kiedy graficzne środowisko Windows zaczęło pretendować do miana systemu, powstały także środowiska dla programistów realizujące ideę RAD, czyli Rapid Application Developmnent, co w tłumaczeniu na polski oznaczało szybkie tworzenie aplikacji. W Windows – początkowo – istniały dwa takie środowiska: Visual Basic i Delphi. Po jakimś czasie pojawiły się kolejne. Ale nie to było istotne, a fakt, że nieświadomie narodził się także nowy styl programowania...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 1.

Sztuka programowania 4267 dni, 7 godzin, 20 minut temu PaSkol 98 źrodło rozwiń

Postem tym chciałbym rozpocząć mini cykl o zastosowaniu wzorców projektowych w języku JavaScript -  wbrew pozorom, w tym języku również można je stosować! Na pierwszy ogień postanowiłem wziąć jeden z moich ulubionych wzorców - strategię. Myślę, że większość z nas, stosowała i stosuje ten wzorzec na co dzień (czasem nawet nieświadomie), jednak dla przypomnienia (za wikipedią): Wzorzec strategii definiuje rodzinę algorytmów, z których każdy zdefiniowany jest w osobnej klasie implementującej wspólny interf...

burczu programator - blog: Wzorce projektowe w JavaScript - Strategia

Sztuka programowania 4353 dni, 20 godzin, 26 minut temu burczu 123 źrodło rozwiń

Tak mnie wzięło na wzorce projektowe ostatnimi czasy, dzisiaj coś o o odwiedzającym (wizytatorze). Polska Wikipedia mówi o nim tak odwiedzający.

jsthedeveloper: Wzorce: Odwiedzający / Wizytator

Architektura 4875 dni, 41 minut temu Paweł Łukasik 275 źrodło rozwiń

Autor: W poprzedni wpisie przedstawiłem podstawową koncepcję wzorca projektowego MVVM oraz pokazałem jak złączyć widok (View), będący graficzną reprezentacją naszej logiki biznesowej wraz modelem (Model) przy wykorzystaniu klasy pośredniczącej (ViewModel). Brakującym elementem w przedstawionym przykładzie była implementacja zdarzeń jakie oferują nam kontrolki. Z pomocą przychodzi nam wzorzec projektowy Command, który doczekał się swojej implenetacji w Silverlight 4. Ogólna koncepcja działania polega ...

Wzorzec MVVM – Commanding

Architektura 5144 dni, 15 godzin, 20 minut temu macko 331 źrodło rozwiń

Dziś chciałbym opisać kolejny wzorzec/mechanizm który będę używal i ma on na celu znaczne uproszczenie kodowania i eliminowanie niepotrzebnych powiązań miedzy obiektami. Event Aggregator Jak już wcześniej wspomniałem ten wzorzec/mechanizm ma na celu eliminowanie niepotrzebnych powiązań miedzy obiektami. Stanowi on pojedyncze źródło dla wielu obiektów. W najprostszej formie wygląda to tak że rejestrujemy klasy które dotyczą konkretnego zdarzenia do naszego event aggregatora. Te klasy nazywają się uchwyt...

mForum - Blog projektu programistycznego: Event Aggregator - Cóż to takiego jest ?

Architektura 5162 dni, 6 godzin, 34 minuty temu Paweł Łukasik 267 źrodło rozwiń

Autor: No to postaram się opisać coś co się przydaje (jak się umie stosować – to przy wzorcach zawsze trzeba powtarzać). Korzystając z okazji od razu sobie to utrwalę, zgodnie z zasadą ‘ucz się ucząc’, czy jakoś tak Na początek zacznę od wzorca strategii, jest to zdecydowanie jeden z prostszych i upiększających kod wzorców, z jakiś powodów też został wybrany jako pierwszy przez autorów “Head First Design Patterns”. Dodatkowymi atutami przemawiającymi, żeby omówić akurat ten wzorzec, jest fakt, że w bard...

Źródło: www.mieczynski.tk
Dziel się z innymi:
Strategy Pattern

Architektura 5270 dni, 22 godziny, 49 minut temu macko 186 źrodło rozwiń

Adapter jest kolejnym z wzorców projektowych, które postanowiłem sukcesywnie omawiać na swoim blogu. Wszystkich zainteresowanych wzorcami projektowymi (dla C#) zapraszam do śledzenia zmian -zapewniam, że będą się tutaj pojawiały kolejno wszystkie znane wzorce projektowe.

wzorzec Adapter

Architektura 5463 dni, 5 godzin, 25 minut temu Damian 224 źrodło rozwiń

Autor: Przypadkiem trafiłem na fajny cheetsheet zawierający zestawienie podstawowych  wzorców projektowych, może się komuś przyda :)

Źródło: dario-g.com
Dziel się z innymi:
Design Pattern - podstawowe wzorce na jednej karcie - Dario-G - programista, projektant

Architektura 5475 dni, 22 godziny, 19 minut temu macko 366 źrodło rozwiń

Wzorzec Interpreter, będący właściwie kompozytem, z tą drobną różnicą, że stosowany jest on do intepretowania/przetwarzania danych zapisanych w jakimś konkretnym języku/składni. Zbierając informacje na jego temat kilkukrotnie natknąłem się na wzmiankę, że przy bardziej skomplikowanym ‘języku’(czymkolwiek, co jest do interpretowania) nie jest on najlepszym wyjściem, ponieważ wydajnościowo troszeczkę kuleje.

Źródło: www.bdamage.pl
Dziel się z innymi:
Wzorzec Interpreter na przykładzie ONP | .braindamage

Architektura 5511 dni, 7 godzin, 34 minuty temu macko 108 źrodło rozwiń

Dzisiaj kilka słów na temat wzorca Flyweight – “waga piórkowa”. Wzorzec ten należy do grupy wzorców strukturalnych. Flyweight zajmuje się udostępnianiem pojedynczego obiektu wielu klientom. Wspólny dostęp znajduje zastosowanie gdy występuje potrzeba zarządzania dużą ilością obiektów(setki, tysiące, itp), które posiadają jakąś niezmienną część. Dość prymitywnym przykładem może być proces tworzenia oferty sprzętu: zamiast do każdego długiego opisu powiedzmy procesora, wraz z wszystkimi danymi technicznymi,...

Wzorce Projektowe: Flyweight | .braindamage

Architektura 5518 dni, 20 godzin, 55 minut temu Paweł Łukasik 172 źrodło rozwiń

Konkurs w którym można wygrać książkę Head First: Wzorce Projektowe.

Książka do wygrania: Head First: Wzorce Projektowe

Inne 5556 dni, 8 godzin, 31 minut temu tomaszs 124 źrodło rozwiń

Czytając Agile: Principles, Patterns and Practices natknąłem się (dla posiadaczy książki - na stronie 252) na ciekawą tezę dotyczącą UML-owej relacji agregacji. Uncle Bob twierdzi, że relacja ta nie wnosi niczego do diagramu i odradza jej użycie. Co więcej, w sekcji dotyczącej kompozycji (następna strona) pada stwierdzenie, że definicja tej relacji (czas życia części jest ograniczony do czasu życia całości) jest bez znaczenia dla programisty C#, ponieważ istnieje garbage collector. Przyznam się szczerze...

Źródło: zine.net.pl
Dziel się z innymi:
Simon says... : Agregacja: powinni tego zabronić?

Architektura 5567 dni, 3 godziny, 45 minut temu macko 73 źrodło rozwiń

W jaki sposób infrastruktura przechowująca stan usług może być skalowana i zabezpieczona przed awarią? Odpowiedzią na to pytania jest wzorzec Service Grid. Jego nazwa może być nieco myląca. Nie ma on bowiem nic wspólnego z gridami oraz raczej niewiele z usługami w klasycznym pojęciu SOA. Service Grid jest nazwą dla podejścia, w którym wiele instancji infrastruktury przechowującej stan usług jest równolegle aktywnych (zwykle na wilu fizycznych maszynach). Instancje te współdzielą między sobą informacje d...

Źródło: zine.net.pl
Dziel się z innymi:
Simon says... : SOA Design Patterns: Service Grid

Programowanie rozproszone 5569 dni, 20 godzin, 35 minut temu macko 36 źrodło rozwiń

Wzorzec memento pozwala na przechwycenie stanu obiektu i zachowanie go gdzieś na zewnątrz tego obiektu, dzięki czemu może być on później odtworzony....

Piotrosz | Wzorce projektowe: Memento

Architektura 5584 dni, 7 godzin, 46 minut temu macko 220 źrodło rozwiń

Kompozyt (Composite) pozwala na takie zgrupowanie różnych obiektów, że mogą być one traktowane przez klienta w jednakowy sposób. Przykładem może być wyliczanie zawartości katalogu na dysku. Katalog może zawierać różne elementy: pliki, inne katalogi, drukarki...

Piotrosz | Wzorce projektowe: Composite

Architektura 5613 dni, 20 godzin, 19 minut temu macko 123 źrodło rozwiń

Krótki opis wzorca Łańcuch odpowiedzialności (Chain of responsibility). Wzorzec Chain of Responsibility pracuje z listą obiektów (Handlerów), które implementują interfes IHandler. Handlery te uporządkowane są w łańcuch. Każdy Handler przyjmuje komendę (może to być implementacja wzorca projektowego Command) i jeśli potrafi to zrobić - obsługuje ją. Jeśli dany Handler nie może obsłużyć komendy, przekazuje ją następnemu elementowi w łańcuchu.

Piotrosz | Wzorce projektowe: Łańcuch odpowiedzialności

Architektura 5628 dni, 8 godzin temu macko 210 źrodło rozwiń

Budowniczy (Builder) oddziela specyfikację (definicję) jakiegoś złożonego obiektu od procesu jego konstruowania. We wzorcu tym nacisk jest położony na konstruowanie złożonych obiektów krok po kroku (etapami). Części muszą być tworzone w jakiejś kolejności lub przy użyciu określonego algorytmu.

Piotrosz | Wzorce projektowe: Budowniczy

Architektura 5640 dni, 7 godzin temu macko 147 źrodło rozwiń

Rozważania na temat wzorca Singleton i jego różnych implementacji.

Źródło: zine.net.pl
Dziel się z innymi:
. jak .NET by Maciej Aniserowicz : Prosty Singleton

Inne 5644 dni, 21 godzin, 47 minut temu Paweł Łukasik 131 źrodło rozwiń

1 2 3 4 5