dotnetomaniak.pl

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

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 1932 dni, 18 godzin, 44 minuty temu Yuras 293 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 1937 dni, 17 godzin, 29 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 1943 dni, 21 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 1945 dni, 16 godzin, 13 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 1945 dni, 16 godzin, 13 minut temu arek 250 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 1945 dni, 16 godzin, 13 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 1948 dni, 17 godzin, 4 minuty temu pzielinski 285 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 1949 dni, 17 godzin, 8 minut temu http://slanto.myopenid.com/ 264 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 1952 dni, 13 godzin, 18 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 1954 dni, 5 godzin, 47 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 1954 dni, 5 godzin, 47 minut temu Yuras 468 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 1954 dni, 5 godzin, 47 minut temu http://slawomirbrys.blogspo... 385 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 1954 dni, 5 godzin, 47 minut temu arek 226 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 1954 dni, 8 godzin, 30 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 1956 dni, 1 godzinę, 17 minut temu pzielinski 278 rozwiń

Wielu programistów i firm z branży IT często mówi, że potrafi wytwarzać oprogramowanie wysokiej jakości i że bardzo ważnym jest, aby o tą jakość zabiegać. Nie ma w tym nic dziwnego – wszyscy jesteśmy gotowi zgodzić się, że jakość powinna być możliwie wysoka. Problem pojawia się jednak w momencie, gdy trzeba doprecyzować pojęcia.

Dziel się z innymi:
Czym jest jakość oprogramowania?

Architektura 1958 dni, 4 godziny, 13 minut temu houp 258 rozwiń

Sprostowanie nieścisłości dotyczącej pojęcia polimorfizmu, która pojawiła się w kursie C# na portalu virtualstudy.pl

Tagi: .Net, polimorfizm
Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Cni Panowie, zacne Panie: polimorfizm – sprostowanie.

Architektura 1959 dni, 3 godziny, 30 minut temu PaSkol 133 rozwiń

… na szczęście nie przez wszystkich. Intencją niniejszej serii jest przedstawienie podstaw programowania w trochę inny sposób, dlatego mówiąc najbardziej niedoceniana umiejętność w domyśle tyczy się to początkujących. Starsi albo sami dotarli do odpowiedniej wiedzy albo życie ich nauczyło. Jak wyglądają pierwsze kroki w programowaniu? Po opanowaniu pętli for i foreach, ifów i caseów, Console.WriteLineów oraz tych wszystkich klas i obiektów i nie zapominając o polimofizmach wielu rzuca się w wir poznawan...

Tagi: architektura
Źródło: www.benedykt.net
Dziel się z innymi:
Architektura czyli jedna z najbardziej niedocenianych umiejętności | @rek online | Arkadiusz Benedykt

Architektura 1959 dni, 17 godzin, 18 minut temu arek 266 rozwiń

Po Single Responsiblity Principle najważniejsza (moim zdaniem) zasada programowania obiektowego – Dependency Inversion Principle. Mówi ona, że obiekty powinny być zależne od abstrakcji a nie od konkretnej klasy. A po ludzku, w żadnej definicji funkcji i w żadnej deklaracji zmiennej nie powinniśmy używać nazwy klasy. Zamiast tego powinniśmy używać interfejsy albo klasy abstrakcyjne czyli zamiast private IPerson _owner; public bool ValidateOwner(IPerson personToValidate) { //..... } piszemy private IPe...

Dependency Inversion Principle – czyli co powinno zależeć od czego | @rek online | Arkadiusz Benedykt

Architektura 1961 dni, 8 godzin, 48 minut temu arek 195 rozwiń

Projektując programy w technologiach XAMLowych z wykorzystaniem MVVM Light Toolkit (w zasadzie liczy się wzorzec), zawsze napotykam problemy, na które trudno znaleźć jednoznaczną odpowiedź. Najczęściej kłopoty sprawia widok, który nie zawsze „chce” się zmieścić w kodzie xaml. Prostsze zadania można rozwiązać przy pomocy zachowań (?) czy też triggerów. Sprawy się komplikują w przypadku storyboardów. Co zrobić, jeżeli chcemy uruchomić ...

Storyboardy zgodnie z duchem MVVM

Architektura 1962 dni, 1 godzinę, 56 minut temu tmalesza 295 rozwiń

1 2... 7 8 9 10 11 12... 19 20
#befutureproof
Szkolenia SecurITum

październik

Dodaj nowe Zobacz wszystkie

Najaktywniejsi

1

macko (32 816,53)

2

http://pawlos.blo... (31 925,51)

3

pzielinski (27 178,29)

4

gordon_shumway (21 178,87)

5

paduda (20 336,33)

6

psz750 (13 018,14)

7

rroszczyk (10 386,48)

8

Damian (9 173,12)

9

danielplawgo (7 235,99)

10

arek (6 807,95)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 683,06)

15

spetz (3 363,34)

16

jedmac (3 318,39)

17

http://jakub-flor... (3 224,66)

18

CaMeL (2 954,87)

19

dpawlukiewicz (2 736,19)

20

lkurzyniec (2 732,03)