dotnetomaniak.pl

dotnetomaniak.pl - Najnowsze artykuły o .NET w dziale Architektura - Strona 14

Kilka dni temu zainicjowałem cykl postów związanych z wielowątkowością. Rozpocząłem dość standardowo, bo od wyjaśnienia istoty tego zagadnienia i przedstawienia prostych wątków. Wiedza zawarta w tamtym wpisie, powinna w wielu przypadkach okazać się wystarczająca - szczególnie jeśli w naszej aplikacji mamy tylko jeden wątek dodatkowy, który stworzony jest tylko po to by odciążyć wątek główny. Takie proste rozwiązanie nie będzie jednak zawsze do końca wystarczające. Problemy pojawią się w sytuacji gdy wąt...

Tagi: C#, wątki
Dziel się z innymi:
Wielowątkowość w C# - synchronizacja wątków cz. 1 (lock, Monitor, Mutex) - Alt Control Delete

Architektura 2290 dni, 5 godzin, 35 minut temu Yuras 233 rozwiń

Od jakiegoś czasu dostępny jest dokument opublikowany przez Microsoft Patterns & Practices nad którym pracowała cała rzesza community w tym i nasz Szymon Pobiega – wielkie więc gratulacje! :) może ja ślepy albo głuchy ale dowiedziałem się o tym dopiero teraz :) Tak czy siak, cały dokument jest dostępny niestety jedynie w formacie stron HTML na stronach MSDN – nie ma żadnego docx, pdf czy innego formatu o ile mi wiadomo.

Tagi: CQRS, e-book
Źródło: blog.gutek.pl
Dziel się z innymi:
Jakub Gutkowski | Jakub Gutkowski - CQRS Journey w formacie mobi

Architektura 2293 dni, 21 godzin, 10 minut temu Paweł Łukasik 103 rozwiń

Nie wiem jak Was, ale mnie osobiście irytuje zdarzenie w którym na górnej belce aplikacji pojawia się napis , a sam program wygląda jakby się gdzieś po drodze pogubił... Generalnie taki stan rzeczy może być spowodowany wieloma różnymi aspektami, choć zasadniczo w tym przypadku najczęściej można wskazać dwie przyczyny. Trzeba niestety tu otwarcie przyznać, że w głównej mierze są one spowodowane źle napisanym kodem przez programistów tychże aplikacji. Po pierwsze, w każdym programie może po prostu pójść c...

Tagi: C#, Thread
Dziel się z innymi:
Wielowątkowość w C# - wprowadzenie - Alt Control Delete

Architektura 2294 dni, 6 godzin, 32 minuty temu Yuras 116 rozwiń

W poprzednim poście podałem prostą implementację zdarzeń opartych na słabych referencjach. Zachęcam najpierw do przeczytania poprzedniego wpisu bo bez niego będzie ciężko zrozumieć dzisiejszy post. Dziś implementacja zaproponowana na blogu Paul Stovell’a:publicsealedclass WeakEventHandler

Tagi: C#, weak event
Dziel się z innymi:
Piotr Zieliński » Weak event patterns, część II

Architektura 2348 dni, 5 godzin, 40 minut temu pzielinski 131 rozwiń

Jestem zafascynowany framworkiem PRISM, czytam, oglądam i piszę jakieś przykładowe aplikacje z wykorzystaniem tej biblioteki. Prism ułatwia tworzenia modularnych i dynamicznych systemów, dostarcza mechanizm do rozwiązywania zależności (Unity Container), umożliwia dynamiczną zmianę zachowania aplikacji poprzez wczytywanie dodatkowych modułów z katalogu lub aktualizację pliku konfiguracyjnego aplikacji - to tylko część z błyszczących bajerów. Prism wspiera Silverlight, WPF czy Windows Phone 7 oraz mocno ...

Tagi: Prism, sl, Windows, WPF
Dziel się z innymi:
jstadnicki: PRISM - materiały do nauki.

Architektura 2359 dni, 22 godziny, 28 minut temu http://jstadnicki.blogspot.... 395 rozwiń

Ponad dwa lata temu, popełniłem wpis na temat operacji na kolekcjach w C#. Post ten ku mej uciesze, wciąż cieszy się sporą popularnością, dlatego też postanowiłem napisać niejako jego kontynuację. Gdy dwa lata temu pisałem tamten wpis, wciąż dominującą wersją frameworka .Net, była ta oznaczona wersją 2.0. Dziś sytuacja się trochę zmieniła i przynajmniej w moim odczuciu, coraz więcej osób korzysta z wersji 3.5 i 4.0, a na horyzoncie jest już .Net 4.5, który pojawi się w pełni wraz z Windowsem 8 i Visual ...

Dziel się z innymi:
Operacje na kolekcjach w C# z użyciem LINQ - Alt Control Delete

Architektura 2381 dni, 10 godzin, 32 minuty temu Yuras 294 rozwiń

Zasada Common Reuse Principle mówi, że klasy w pakiecie/assembly są ponownie używane wspólnie. Jest to konsekwencja Reuse Release Equivalence Principle z której wynika, że klient posiada referencje do całej biblioteki a nie pojedynczej klasy. Z tego zaś wynika, że jeżeli polega na jednej klasie (wykorzystuje jedną klasę)  to może wykorzystywać wszystkie. W końcu publikując bibliotekę nie jesteśmy wstanie określić z których klas będzie ktoś używał (chyba że umieścimy tam jedną publiczną klasę ). To wsz...

Źródło: www.benedykt.net
Dziel się z innymi:
Common Reuse Principle–czyli jeśli używasz jednej klasy to używasz wszystkich | @rek online | Arkadiusz Benedykt

Architektura 2386 dni, 9 godzin, 17 minut temu arek 139 rozwiń

Sporo czasu poświęciłem na elektronikę i mimo tego, że nie byłem i nie jestem przesadnie pedantyczny to tranzystory i rezystory zawsze miałem uporządkowane w klasterach z posklejanych pudełek po zapałkach lub woreczkach strunowych. Takie postępowanie powodowało, że zawsze wiedziałem gdzie szukać tego jednego rezystora, który właśnie potrzebowałem. Takie segregowanie nie ma znaczenia przy 10-20-50 elementach, można to jeszcze ogarnąć jednak przy 100 i więcej zaczyna być problemem. Dokładnie to samo dzieje...

Źródło: www.benedykt.net
Dziel się z innymi:
Common Closure Principle – czyli o coś porządkowaniu | @rek online | Arkadiusz Benedykt

Architektura 2391 dni, 16 godzin, 9 minut temu arek 84 rozwiń

W poprzednich częściach przeszliśmy przez zasady SOLID. S – Single Responsibility Principle (oraz cz. 2) O – Open Close Principle (oraz cz. 2) L – Liskov Substitution Principle I – Inversion Segregation Principle D – Dependency Inversion Principle Słowo SOLID bardzo dobrze odzwierciedla to, do czego te zasady prowadzą czyli do budowania solidnego kodu. Przez solidny kod rozumiem taki, który jest łatwy w modyfikacji i który szybko można dostosować do zmieniających się wymagań. Nie są to jednak wszy...

Źródło: www.benedykt.net
Dziel się z innymi:
Reuse Release Equivalence Principle czyli  dlaczego nie kopiujemy kodu | @rek online | Arkadiusz Benedykt

Architektura 2394 dni, 8 godzin, 1 minutę temu arek 111 rozwiń

Wyobraźmy sobie taką sytuację: jest sklep internetowy, podczas składania zamówienia system wylicza rabat – przy zamówieniach 500-1000 zł 5%, powyżej 1000 zł 10%, powyżej 5000 dodatkowo darmowa przesyłka. Brzmi znajomo?

Źródło: www.benedykt.net
Dziel się z innymi:
Open Close Principle czyli jak zarobić ale się nie narobić. | @rek online | Arkadiusz Benedykt

Architektura 2394 dni, 8 godzin, 1 minutę temu arek 251 rozwiń

Postanowiłem poruszyć kwestię zasady oddzielania poleceń od zapytań. Pisał o niej ostatnio Piotr Zieliński. Cóż to takiego te „polecenia” i „zapytania”? Ujmując to zagadnienie bardzo ogólnie można powiedzieć, że cechy charakteryzujące klasę dzielą się na polecenia i zapytania. Pierwsze z nich służą do modyfikowania obiektu, drugie do uzyskiwania o nim informacji...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Na dwa rodzaje metod rozbita klasa: poleceń oraz zapytań.

Architektura 2394 dni, 8 godzin, 1 minutę temu PaSkol 123 rozwiń

Dziś znów powrót do podstaw inżynierii oprogramowania. Przedstawianie podstawowej zasady może wydawać się śmieszne ale mimo wszystko programista dobrze jak wie, że taka zasada ma swoją nazwę i naprawdę powinno się tego przestrzegać.  Za pewne wiele programistów nie zna nazw tych reguł ale i tak postępuje zgodnie z nimi. Post ma jednak uświadomić, że takie praktyki są dobrze udokumentowane i są na naprawdę dobrym zwyczajem a nie tylko intuicją doświadczonego programisty. Wzorzec dotyczy konstrukcji metod...

Tagi: CQS
Dziel się z innymi:
Piotr Zieliński » Zasada Command-query separation (CQS)

Architektura 2397 dni, 8 godzin, 52 minuty temu pzielinski 298 rozwiń

Posted by slanto on Zastosowanie wzorca Decorator na przykładzie produktu i ofert specjalnych. Wzorzec ten pozwala nam na dynamiczną zmianę/rozszerzanie zachowania istniejących klas.

Dziel się z innymi:
Decorator Pattern | Zapiski programisty .net

Architektura 2398 dni, 8 godzin, 57 minut temu http://slanto.myopenid.com/ 275 rozwiń

Piotr Zieliński na swoim blogu rozważał zasadność redefiniowania przez klasy dziedziczące metod z klas dziedziczonych (przy pomocy modyfikatora new), warto zapoznać się z tym wpisem przed kontynuowaniem lektury niniejszego tekstu. Na zakończenie Piotr poprosił o podanie innych, od przestawionych przez niego, powodów, na zasadność użycia modyfikatora new. Oto jeden z nich...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Co jest zasadnym powodem, by przekabacić metodę

Architektura 2401 dni, 5 godzin, 6 minut temu PaSkol 159 rozwiń

Jestem fanem interfejsów jak to wcześniej już pisałem, zatem dzisiaj będzie temat łatwy i przyjemny o interfejsach właśnie. W sam raz na ciężki po długo weekendowy poniedziałek. Interface Segregation Principle mówi, że klient nie powinien być zmuszany do implementowania interfejsów, których nie używa. Z tego wynika, że interfejs powinien być minimalistyczny lub po prostu możliwie chudy. Idealnie by było, gdyby miał jedną metodę a poważnie, można by tutaj parafrazować Single Responsibility Principle i p...

Tagi: SOLID
Źródło: www.benedykt.net
Dziel się z innymi:
Interface Segregation Principle czyli interfejs powinien być jak modelka–przeraźliwie chudy | @rek online | Arkadiusz Benedykt

Architektura 2402 dni, 21 godzin, 36 minut temu arek 209 rozwiń

W obecnym czasie, z bardzo rozwiniętymi środowiskami programistycznymi, takimi jak choćby Visual Studio, czy też Eclipse, bardzo łatwo jest rozpocząć swoją przygodę z programowaniem, które w tym przypadku czasem bardziej przypomina zabawę z klockami, niż rzeczywiste . Jednak nastawiając się na bezmyślne składanie klocków, szybko można obudzić się z przysłowiową , w sytuacji gdy zajdzie potrzeba modyfikacji lub rozszerzenia tak radośnie tworzonego kodu, a warto zaznaczyć, że nieumiejętnie sklejony kod mo...

Dziel się z innymi:
C# - Interfejsy które warto znać  - Alt Control Delete

Architektura 2402 dni, 21 godzin, 36 minut temu Yuras 473 rozwiń

To jest mój pierwszy post, ale od czegoś trzeba zacząć. Wybacz więc niedociągnięcia :). Na pierwszy temat rzucam porównanie wydajności kilku bibliotek (framework'ów) do wstrzykiwania zależności (Dependency Injection), które jest częścią paradygmatu odwróconego sterowania (Inversion of Control) - więcej można przeczytać tutaj. Ostatnio przeczytałem, że znaczna większość programistów korzysta z tych dobrodziejstw. Niby dobrze, o ile wiemy z czym mamy do czynienia. Część bibliotek jest przeładowana ...

Dziel się z innymi:
Sławomir Bryś: Porównanie IoC

Architektura 2402 dni, 21 godzin, 36 minut temu http://slawomirbrys.blogspo... 386 rozwiń

Od młodego uczą nas, że każdy kwadrat jest prostokątem. Później uczymy się programować i zaczyna się tragedia. Matematycznie kwadrat jest specyficznym  przypadkiem prostokąta programistycznie już nie bardzo.

Kwadrat jest prostokątem czyli Liskov Substitution Principle (LSP) | @rek online | Arkadiusz Benedykt

Architektura 2402 dni, 21 godzin, 36 minut temu arek 232 rozwiń

Zasada odwracania zależności głosi, że moduły wysokopoziomowe nie powinny zależeć od modułów niskopoziomowych. Obie grupy modułów powinny zależeć od abstrakcji. Innymi słowy abstrakcje nie powinny zależeć od szczegółowych rozwiązań, to one (rozwiązania) powinny zależeć od abstrakcji. Użyte w treści reguły pojęcie abstrakcji należy interpretować jako klasę abstrakcyjną lub interfejs. Jak widać pozostaje tutaj swoboda wyboru jednego z tych dwóch bytów...

Tagi: .Net, SOLID
Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Tylko interfejs! Nie, bo abstrakcja! Dokąd prowadzi dyskryminacja.

Architektura 2403 dni, 19 minut temu PaSkol 179 rozwiń

W wielu publikacjach service locator podawany jest jako wzorzec projektowy, doskonale nadający się do implementacji inversion of control. W poście jednak chciałbym przedstawić drugą szkołę, która uważa, że ten wzorzec jest “brzydki” i powoduje ogromne zamieszanie. Przede wszystkim odpowiedzmy sobie kiedy używamy podejścia IoC? W aplikacjach tymczasowych? Prototypach? Raczej nie… Początkowy czas na napisanie aplikacji IoC może okazać się dłuższy a korzyści nadchodzą dopiero po kilku miesiącach implementa...

Dziel się z innymi:
Piotr Zieliński » Service Locator jako anti-pattern

Architektura 2404 dni, 17 godzin, 5 minut temu pzielinski 301 rozwiń

1 2... 12 13 14 15 16 17... 25 26