dotnetomaniak.pl - Artykuły z tagiem wzorce

General Responsibility Assignment Software Patterns (GRASP) to zbiór 9 zasad określających, jaką odpowiedzialność powinno się przypisywać określonym obiektom i klasom w systemie. Wszystkie te zasady odpowiadają na część problemów z oprogramowaniem, które są wspólne dla prawie każdego projektu. Techniki te nie zostały wymyślone w celu stworzenia nowych sposobów pracy, a jedynie w celu lepszego udokumentowania oraz standaryzacji starych, wypróbowanych i przetestowanych zasad programowania. Jest więc to kol...

Tagi: wzorce
Źródło: www.admu.pl
Dziel się z innymi:
GRASP – ADMU Blog

Sztuka programowania 1659 dni, 2 godziny, 17 minut temu Admu 63 źrodło rozwiń

Na przestrzeni lat powstało bardzo dużo projektów. Część z nich była łatwiejsza w utrzymaniu, część trudniejsza. Analiza tych projektów pozwoliła zauważyć, że są pewne zasady, które powodują łatwiejszy ich rozwój. Te zasady zostały połączone w zbiory zasad. Najbardziej popularnym i powszechnie stosowanym zbiorem zasad jest SOLID. Postaram się opisać te zasady z pragmatycznego punktu widzenia.

Tagi: wzorce
Źródło: www.admu.pl
Dziel się z innymi:
SOLID – pragmatycznie – ADMU Blog

Architektura 1674 dni, 17 godzin, 18 minut temu Admu 91 źrodło rozwiń

Pierwszy z 23 wzorców projektowych zdefiniowanych przez "Gang of Four". Singleton to wzorzec kreacyjny wokół którego toczy się ogromna ilość dyskusji. Czy jest on prawidłowym wzorcem czy tzw. antywzorcem? Zobacz opis problemu, przykłady implementacji i prawidłowe zastosowanie. Zapraszam do nowej serii #wzorceprojektowe

Źródło: youtu.be
Dziel się z innymi:
Singleton - Wzorzec czy Antywzorzec? - YouTube

Architektura 1795 dni, 12 minut temu wildcat89 120 źrodło rozwiń

Lubimy kategorie. Podobnie w historii, epoki ułatwiają zrozumienie i przypisanie poszczególnych zdarzeń do okresów. Co z epokami w programowaniu? Czy mają jakieś znaczenie? Czy mogą się do czegoś przydać? Zapraszam do epokowego artykułu.

Źródło: blog.scooletz.com
Dziel się z innymi:
Epoch based programming

Sztuka programowania 2264 dni, 2 godziny, 10 minut temu Scooletz 63 źrodło rozwiń

W trakcie naszej przygody z programowaniem zetknęliśmy się z książkami poruszającymi najróżniejsze tematy. Programowanie, branża IT, biznes, nowe technologie, design, rozwój osobisty, biografie znanych ludzi – było tego naprawdę mnóstwo. Wiele z nich zmieniło sposób w jaki teraz myślimy i podchodzimy do nauki oraz pracy.

books#9 - "JavaScript - Wzorce" - PoznajProgramowanie.pl

Inne 2735 dni, 17 godzin, 9 minut temu AdrianBystrek 96 źrodło rozwiń

W tekście “CQRS+DI w C# i Autofac” pokazałem, że CommandHandler nie zwraca żadnego rezultatu wykonania komendy. Natomiast w “Esencja CQRS” pisałem, że jest to jedna z zasad, co do której można się spierać. Więc… jak to faktycznie jest? Wrzucanie komendy w system i “pójście dalej” bez żadnej informacji o rezultacie bywa możliwe, lecz zwykle ciężko byłoby to zaimplementować. No bo jak to: kazałem coś zrobić mojej aplikacji i nie wiem czy się udało, więc… co dalej? Gdzie pokierować użytkownika?

Tagi: Command, CQRS, void, wzorce
Źródło: devstyle.pl
Dziel się z innymi:
Jak zwrócić rezultat wykonania komendy w CQRS?

Małżeństwo to nie taka prosta sprawa. Są różne i różnie się układają, różni ludzie się do tego mieszają czasem wychodzi to lepiej a czasem gorzej. Podobnie jest w programowaniu. Ostatnio musiałem ożenić IOC z Factory. Problem który się pojawił to tworzenie obiektu na podstawie jakiegoś tam parametru wejściowego, na początku miałem tylko jeden przypadek (np. RssChannel) i musiałem tylko ten przypadek obsługiwać, mogłem spokojnie wstrzyknąć handler i było cacy. Potem (w zasa...

Ślub. Factory żeni się z IOC

Architektura 3052 dni, 23 godziny, 57 minut temu rroszczyk 213 źrodło rozwiń

Dekorator to jeden se strukturalnych wzorców projektowych, dzięki któremu możemy wykorzystać kompozycję w alternatywie do dziedziczenia w celu rozszerzenia zachowania klasy. W przypadku dziedziczenia klasa rozszerzana jest w trakcie kompilacji w przeciwieństwie do dekoratorów, które rozszerzają klasy w trakcie działania programu.    Wzorzec projektowy Dekorator pozwala na dynamiczne przydzielanie danemu obiektowi nowych zachowań. Dekoratory dają elastyczność podobną do tej, jaką daje dziedziczenie, o...

Dziel się z innymi:
Wzorce projektowe – dekoratory

Sztuka programowania 3459 dni, 19 godzin, 14 minut temu rroszczyk 481 źrodło rozwiń

Sporo ostatnio o SOA i mikroserwisach. Jednym z wyzwań podczas rozłupywania monolitu na serwisy jest wydajność. Wywołania in-memory są zastępowane np. HTTP lub innym zdalnym protokołem. Niesie to ze sobą kilka niedogodności m.in.: 1. Wydajność jest dużo mniejsza – serializacja, deserializacja, nawiązanie połączenia, transmisja danych. 2. Serwis może być nieaktywny. 3. Może wystąpić timeout. Powyższe punkty mogą być wyjątkowo niebezpieczne, gdy wiele usług próbuje wywołać serwisy, które aktualnie nie...

Obsługa zdalnych wywołań: wzorzec Circuit Breaker

Programowanie rozproszone 3467 dni, 15 godzin, 40 minut temu rroszczyk 333 źrodło rozwiń

Sporo w ostatnim czasie pisałem o wzorcach projektowych. Starałem się w miarę dokładnie zgłębić ten temat i po stworzeniu kilku tekstów z tego cyklu, naszło mnie na małą refleksję - wzorce projektowe są nierozerwalnie związane z polimorfizmem. Jeśli spojrzymy na poszczególne przypadki (zwłaszcza te z grupy konstrukcyjnych wzorców projektowych), to szybko przekonamy się, że elementem spójnym jest wspólny interfejs. Pojawia się on naprawdę w wielu wzorcach.

Tagi: .Net, C#, wzorce
Dziel się z innymi:
Polimorficzne tworzenie obiektów -  usuwamy switcha

Sztuka programowania 3496 dni, 20 godzin, 8 minut temu rroszczyk 529 źrodło rozwiń

Wiele mówi się o dobrych praktykach tworzenia kodu, używaniu wzorców projektowych i innych zmyślnych rozwiązań. W praktyce nie jest jednak tak kolorowo. Często terminy gonią, w kodzie pojawiają się klasy, których liczba linii liczona jest w setkach, a pośród nich znaleźć można wiele bezmyślnych powtórzeń oraz niepraktycznych interfejsów. Ale przecież obiecaliśmy sobie, że kiedyś to zmienimy, prawda?

Tagi: C#, net, wzorce
Dziel się z innymi:
Wzorzec adapter - przykładowa implementacja w C#

Architektura 3511 dni, 18 godzin, 7 minut temu rroszczyk 678 źrodło rozwiń

Ale o czym dzisiaj, dzisiaj o obcisłości po angielsku w programowaniu. Słowo tight będzie jednym z bohaterów wpisu. A nawet tight coupling, czyli coś mocno wiążącego. Co tak mocno wiąże w programowaniu? Moim zdanie new jest temu winny. Wiąże bowiem ono ze sobą klienta, klasę którą korzysta z new aby zaspokoić swoje potrzeby, oraz dostarczyciela usługi, czyli klasę, która jest w stanie zaspokoić tę (tą) potrzebę.

Powiedz nie new...

Sztuka programowania 3515 dni, 1 godzinę, 54 minuty temu rroszczyk 545 źrodło rozwiń

Od jakiegoś czasu wzorzec “microservices” jest popularny  w wielu firmach.  Szczegółowe informacje znajdują się na blogu Martin’a Fowler’a, aczkolwiek na blogu chciałbym naszkicować koncepcję. Pomysł nie jest nowy, jednak pewne usystematyzowanie moim zdaniem ma sens. Dla mnie osobiście, to nic innego jak przestrzeganie zasady “Single rensponsibility” na poziomie usług. Wzorzec ma zastosowanie w systemach złożonych, SOA, a nie w prostych aplikacjach klient-serwer. Skrajnie zła sytuacja, to taka, w które...

Dziel się z innymi:
Architektura enterprise: Mikro-serwisy

Dobry programista zawsze będzie się starał pisać czytelny kod. Kluczem do sukcesu jest w tym przypadku ciągła refaktoryzacja wsparta wzorcami projektowymi. Wzorce projektowe w wielu przypadkach pozwalają na zapewnienie elastycznych i skalowalnych rozwiązań, a ponadto sprzyjają w tworzeniu unikalnego kodu. Oczywiście nieodpowiednio użyte mogą również zaszkodzić - tak jak inne rzeczy w naszym codziennym życiu;-)

Dziel się z innymi:
Wzorzec template method - przykładowa implementacja w C#

Sztuka programowania 3532 dni, 9 godzin, 32 minuty temu rroszczyk 359 źrodło rozwiń

Jeśli ktoś spytałby mnie o element który kojarzy mi się z programowaniem niezależnie od zastosowanego języka, to odpowiedziałbym prosto - instrukcje warunkowe. Wszelkiej maści IFy i switche pojawiają się w praktycznie każdym szanującym się języku programowania i tak naprawdę trudno sobie wyobrazić jakąkolwiek sensowną aplikację, która by z nich nie korzystała. I choć w teorii dają one wiele dobrego, to w praktyce, przy nieodpowiednim użyciu, mogą w sposób znaczący obniżyć czytelność tworzonego kodu.

Tagi: .Net, C#, wzorce
Dziel się z innymi:
Wzorzec strategia - przykładowa implementacja w C# - Alt Control Delete

Sztuka programowania 3537 dni, 17 godzin, 7 minut temu rroszczyk 447 źrodło rozwiń

Gdy przychodzi czas na stworzenie aplikacji to najpierw staram się przemyśleć co ona ma robić i co z czym się łączy. Gdy obraz jest już w miarę wyraźny to zanim zacznę kodować jakieś prototypy i abstrakcje, przeglądam poniższą listę wzorców projektowych. Są ku temu dwa powody. Po pierwsze sprawdzam czy do mojego rozwiązania można dopasować jakieś wzorzec. Nie znam na pamięć wszystkich wzorców a czasem te mniej popularne (o których się normalnie nie pamięta) się przydają. Po drugie robię to aby trochę s...

Dziel się z innymi:
Przydatne wzorce projektowe w C# | Blog Programisty.NET

Sztuka programowania 3617 dni, 23 godziny, 40 minut temu przemekwa 3425 źrodło rozwiń

W poprzedniej części dokonałem kolejnego odwrócenia – tym razem zależności. W tej – choć będzie o wstrzykiwaniu – odwracać się do tego zabiegu nie będzie trzeba ;). Wręcz przeciwnie (by nie rzec odwrotnie) to wstrzykiwanie pomoże w odwracaniu i to zarówno zależności jak i sterowania (kontroli). Jeśli więc chcecie dowiedzieć się jak to możliwe – nie ma odwrotu, należy przeczytać niniejszy wpis :D ...

Me z .NET tete-a-tete » Odwracanie, wstrzykiwanie – pora rzucić okiem na nie. Część 3

Sztuka programowania 3814 dni, 20 godzin, 43 minuty temu PaSkol 180 źrodło rozwiń

Poprzednio odwracałem sterowanie (lub kontrolę, jak kto woli). Dzisiaj pora odwrócić zależność. Zasada odwracania zależności (Dependency Inversion Principle) to ostatnia (licząc wg porządku liter w nazwie) z zestawu zasad SOLID. O co więc chodzi z tą zależnością i na czym tak naprawdę polega jej odwracanie? Najlepiej będzie zademonstrować to na przykładzie. Oglądaliście "Seksmisję" (to już 30 lat od jej premiery)? Był w niej...

Me z .NET tete-a-tete » Odwracanie, wstrzykiwanie – pora rzucić okiem na nie. Część 2

Sztuka programowania 3821 dni, 28 minut temu PaSkol 208 źrodło rozwiń

W kwietniu na jednym z blogów poruszany był temat odwracania (inwersji) w kontekście tworzenia oprogramowania. Dotyczyło to takich zagadnień (pozwolę sobie na wstępie użyć ich angielskich nazw) jak Inversion of Control (w skrócie IoC) oraz Dependency Inversion Principle (DIP). Przy okazji tego drugiego odniesiono się też do Dependency Injection (DI), które ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Odwracanie, wstrzykiwanie – pora rzucić okiem na nie. Część 1

Sztuka programowania 3835 dni, 10 godzin, 49 minut temu PaSkol 269 źrodło rozwiń

Kiedy wprowadza się reguły? Zazwyczaj wówczas, kiedy zjawiska zachodzące w danym środowisku zaczynają wymykać się spod kontroli. Weźmy np. pojazd komunikacji miejskiej. Jeżeli jest on praktycznie pusty, to można z niego wysiadać w tym samym momencie, w którym ktoś chce wsiąść – ta garstka pasażerów wyminie się w drzwiach w sposób intuicyjny. Jeśli jednak liczba wysiadających jak i wsiadających zwiększy się, to konieczna będzie już jakaś regulacja – np. ...

Me z .NET tete-a-tete » Ma reguła konsekwencje, więc pytam: dlaczego dopatrywać się w nich czegoś niepożądanego?

Architektura 4179 dni, 18 godzin, 6 minut temu PaSkol 105 źrodło rozwiń

1 2