Krótko o tym jak i kiedy korzystać z Creation methods.
Sztuka programowania 4240 dni, 13 godzin, 21 minut temu 383 źrodło rozwiń
Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 2.
Co należy w pierwszej kolejności zrobić z kodem opublikowanym w pierwszej części? Skoro ma on ulegać zmianom, dobrze by było, aby nie odbywały się one w dotychczasowym pliku przechowującym kod, ale w pliku dedykowanym tylko tym zmianom. Należy zatem przenieść kod, który będzie modyfikowany do innego pliku. Myli się jednak ten, kto myśli, że wykorzystana zostanie do tego...
Sztuka programowania 4318 dni, 11 godzin, 31 minut temu 106 źrodło rozwiń
Ilu z nas wracając do starego kodu (napisanego wczoraj/ tydzień temu/ miesiąc temu) krzywi się patrząc na bałagan, który po sobie pozostawił? W zasadzie prościej będzie chyba zapytać komu się to nie zdarza. Otóż amerykańscy naukowcy znaleźli na to sposób. No dobra może nie amerykańscy, ale skrót jest z angielskiego - SOLID, rozkłada się on na pięć czynników, a każdy z nich jest znowu jakimś skrótem.
Architektura 4611 dni, 20 godzin, 22 minuty temu 244 źrodło rozwiń
Programując, często zadajemy sobie pytanie, jak napisać określoną funkcjonalność i nie mówię tu tylko o tym jaki algorytm zastosować, ale także o sposobach implementacji określonych funkcjonalności. Tutaj swoje miejsce, znajdują właśnie wzorce projektowe, czyli unikalne sposoby implementacji określonych fragmentów kodu, które w większości przypadków, można stosować niezależnie od wybranego przez siebie języka. Dobry programista, zawsze powinien skorzystać z gotowego i sprawdzonego wzorca, bo po pierwsze ...
Architektura 5140 dni, 7 godzin, 51 minut temu 196 źrodło rozwiń
W świecie informatyki, zaprogramować można wszystko. Ponadto, każdy problem, czy zagadnienie ma tysiące rozwiązań (a może nawet tyle co programistów na świecie:)). Niektóre problemy - zagadnienia, powtarzają się na tyle często, że pewne mądre głowy opracowały gotowe sposoby, wzorce rozwiązań takich problemów. Kiedyś opisywałem już wzorzec projektowy Model View Controller. Dziś, chciałbym zaprezentować wzorzec projektowy Factory (z ang. fabryki), ułatwiający tworzenie nowych obiektów. Przykłady zaprezent...
Architektura 5160 dni, 7 godzin, 1 minutę temu 297 źrodło rozwiń
Deus ex adfectus machina – menedżer stanów Skąd taki tytuł? Deus ex machina (łac.) – Bóg z maszyny adfectus (łac.) – stan Za Eurypisesem wprowadzę do Theme Festival coś, co szybko rozwiąże problem zarządzaniem grą, „aby akcja nie trwała zbyt długo” (za Wikipedią). Ten wpis poświęcę koncepcji menedżera stanów, „Boga z maszyny stanów”. O co tu chodzi? Całą grę należy wyobrazić sobie jako graf przejść między stanami. Stanem gry może być wszystko, od menu, przez okno opcji, po różne etapy rozgrywki. Przej...
Architektura 5188 dni, 13 godzin, 29 minut temu 32 źrodło rozwiń
Autor: Czasem tak się dzieje, że czytając swój własny kod pierwszy raz od kilku miesięcy mamy problem z jego zrozumieniem, zwłaszcza jeżeli nie komentujemy go w odpowiedni sposób. Ale nie jest to jedyna przyczyna problemu. Ostatnio analizując stare projekty doszedłem do wniosku, że istnieje w nich mnóstwo kodu zaciemniającego rzeczywistą logikę działania. Mam tu na myśli dziesiątki wyrażeń postaci if (something != null) i podobnych, które bardzo skutecznie odciągają uwagę od tego co naprawdę nas interesu...
Architektura 5439 dni, 7 godzin, 51 minut temu 149 źrodło rozwiń
Jak powszechnie wiadomo - wielką zaletą wzorca MVC jest umożliwienie testowania jednostkowego logiki "wyciągniętej" z klas odpowiedzialnych za interakcję z użytkownikiem. Swego czasu śledziłem w internecie dyskusje na temat "Jak testować kontrolery, aby możliwie najbardziej odizolować je od reszty aplikacji". O to przecież chodzi w Unit Testing...
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....
Architektura 5635 dni, 11 godzin, 57 minut temu 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...
Architektura 5665 dni, 30 minut temu 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.
Architektura 5679 dni, 12 godzin, 12 minut temu 210 źrodło rozwiń
Omówienie Wzorców projektowych. Obecnie omówione zostały wzorce takie jak - Strategia, Dekorator, Metoda Szablonowa, Adapter, Stan, Pośrednik, Polecenie oraz Parametr zbiorczy wraz z przykładami w C#.
Architektura 5719 dni, 12 godzin, 41 minut temu 271 źrodło rozwiń