dotnetomaniak.pl

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

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 1743 dni, 14 godzin, 24 minuty 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 1745 dni, 7 godzin, 11 minut temu pzielinski 276 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 1747 dni, 10 godzin, 7 minut temu houp 257 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 1748 dni, 9 godzin, 24 minuty 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 1748 dni, 23 godziny, 12 minut temu arek 265 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 1750 dni, 14 godzin, 42 minuty temu arek 187 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 1751 dni, 7 godzin, 50 minut temu tmalesza 287 rozwiń

Wczoraj mówiliśmy o single responsibility principle (SRP) czyli o zasadzie pojedynczej odpowiedzialności. Jest to zasada, która moim zdaniem najwięcej zmienia w dotychczasowych przyzwyczajeniach programistycznych. Na początku jest trochę męcząca ponieważ zgodnie z nią w klasie nie powinniśmy tworzyć innych obiektów.Jak to? Nie mogę używać słowa kluczowego new? Nie mogę tworzyć obiektów? No właściwie to nie. Jeżeli chcesz w klasie tworzyć obiekty to to już jest odpowiedzialność. Wiec klasa nic poza tworz...

Tagi: SOLID, SRP
Źródło: www.benedykt.net
Dziel się z innymi:
Single Responsibility Principle – ciąg dalszy

Architektura 1752 dni, 16 godzin, 3 minuty temu arek 97 rozwiń

WeakReference i cache Zacznijmy od tego, co to jest cache? Za Wikipedią: Pamięć podręczna (ang. cache) – mechanizm, w którym część spośród danych zgromadzonych w źródłach o długim czasie dostępu i niższej przepustowości jest dodatkowo przechowywana w pamięci o lepszych parametrach. Ma to na celu poprawę szybkości dostępu do tych informacji, które przypuszczalnie będą potrzebne w najbliższej przyszłości. Na początek trochę interfejsów (kontraktów). Dane odc...

Źródło: mancoding.tk
Dziel się z innymi:
WeakReference i cache | # Man coding

Architektura 1765 dni, 22 godziny, 58 minut temu http://pawlos.blogspot.com/ 202 rozwiń

Dzisiaj pokażę, jak od strony programistycznej wygląda AppDomain. Zwykle tworzymy aplikację host, która trzyma referencje do kilku AppDomain. Stwórzmy najpierw aplikację konsolową wyświetlającą po prostu tekst:namespace ConsoleApplication3 { class Program { staticvoid Main(string[] args) { while (true) { Console.WriteLine(AppDomain.CurrentDomain.FriendlyName); System.Threading.Thread.Sleep(2000); } } }...

Tagi: AppDomain
Dziel się z innymi:
Piotr Zieliński » AppDomain–część II

Architektura 1768 dni, 8 godzin, 58 minut temu pzielinski 123 rozwiń

Komenda preprocesora #if DEBUG i problemy z utrzymaniem (rename).

Tagi: .Net, debug
Dziel się z innymi:
#if DEBUG | .NET Blog

Architektura 1769 dni, 6 godzin, 16 minut temu http://krzysztofmorcinek.wo... 180 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.

Tagi: SOLID, wzorce
Dziel się z innymi:
jstadnicki: SOLIDnie po łebkach

Architektura 1771 dni, 7 godzin, 26 minut temu http://pawlos.blogspot.com/ 237 rozwiń

W .NET istnieje twór zwany AppDomain. W systemie operacyjnym mamy kilka podobnych pojęć takich jak proces czy wątek. AppDomain w dużej mierze przypomina proces – służy do izolowania aplikacji bezpośrednio niezwiązanych ze sobą. Dwa różne procesy mają przede wszystkim różną przestrzeń pamięciową. Adres zmiennej w procesie A, odnosi się już do innego obszaru w procesie B – alokacja zaczyna się w różnych miejscach.  Z tego względu uruchomienie nowego procesu jest czasochłonną operacją i wiąże się z alokacją...

Tagi: AppDomain
Dziel się z innymi:
Piotr Zieliński » Co to jest AppDomain?

Architektura 1771 dni, 10 godzin, 15 minut temu pzielinski 251 rozwiń

O liczbach losowych Napiszmy prosty program, który rzuca 10 razy kostką. class Program { static void Main(string[] args) { for (int i = 0; i < 10;="" i++)="" console.writeline(gen.next(6)="" +="" 1);="" }="" }="" teraz="" program="" już="" działa="" zgodnie="" z="" oczekiwaniami.="" widzimy,="" że="" zmiana="" polegała="" na="" tym,="" że="" teraz="" mamy="" jeden="" generator,="" generujący="" kolejne="" liczby.="" w="" czym="" kilka="" generatorów="" jest="" ...

Tagi: liczby, losowe
Dziel się z innymi:
O liczbach losowych « Czepialski programista

Architektura 1790 dni, 22 godziny, 53 minuty temu Witek 230 rozwiń

autor: Niedawno uczestniczyłem w Study Group poświęconej architekturze aplikacji organizowanym przez Łódzką grupę profesjonalistów IT & .NET, gdzie przedstawiałem prezentację p.t. "Rozszerzalne aplikacje w .NET (czyli MAF i MEF)". Tych, którzy chcieliby się zapoznać z prezentacją lub kodem źródłowym, który powstał podczas prezentacji, zapraszam do obejrzenia mojej prezentacji umieszczonej na portalu SlideShare.

Prezentacja: „Rozszerzalne aplikacje w .NET (czyli MAF i MEF)” [PL] | Maciej Zbrzezny: Programowanie i Technologie

Architektura 1800 dni, 3 godziny, 41 minut temu paduda 124 rozwiń

mijagiC# W życiu każdego programisty przychodzi moment (dość szybko ), kiedy zwykłe zmienne przestają być wystarczające. Potrzebujemy „miejsca” na przechowywanie porcji danych. W rozwiązaniu tego problemu pomogą nam tablice. Najprościej mówiąc tablica to zarezerwowany obszar w pamięci (zestaw zmiennych), tego samego typu, który jest podzielony na tzw elementy.Tablice jednowymiarowe Tablice jednowymiarowe, jak sama nazwa wskazuje mają tylko jeden wymiar, a ich reprezentacje fizyczną możemy sobie wyob...

Tablice w C# | kodzimy.net

Architektura 1810 dni, 19 godzin, 23 minuty temu kodzimy-net 199 rozwiń

autor: Nie dawno (patrz wpis: „Rozszerzanie aplikacji .NET (czyli plugin'y, add-in'y, MAF, MEF, itp. ...)”) wspomniałem na tym blogu o Managed Aadd-in Framework (zwanego również System.AddIn lub MAF), przyjrzyjmy się bliżej temu rozwiązaniu. Naszą przygodę z MAF zacznijmy może od powrotu to pokazanego wcześniej rysunku, który zaczerpnięty został z MSDN: Muszę przyznać, że musiałem się chwilę zastanowić, gdy go pierwszy raz zobaczyłem. Przedstawia on tzw. pipeline, czyli ścieżkę prowadzącą przez poszcze...

[MAF 01] Rzut okiem na Managed Aadd-in Framework (System.AddIn) [PL] | Maciej Zbrzezny: Programowanie i Technologie

Architektura 1810 dni, 19 godzin, 23 minuty temu paduda 101 rozwiń

Z biegiem lat, mam nieodparte wrażenie, że doba staje się coraz bardziej krótsza. Brakuje mi czasu na wiele różnych rzeczy. Obojętnie czy jest to pisanie kodu, czytanie książek, czy też nauka. Problem ten dotyczy również bloga, dlatego też spróbuję rozwiązać go w pewien sposób, wprowadzając nowy rodzaj tekstów oznaczonych tagiem Szybkie porady. Głównym zadaniem wpisów oznaczonych takim znacznikiem, będzie rozwiązanie pewnych, jasno określonych problemów. Teksty tego typu mogą pojawić się właściwie w każd...

Tagi: C#, mp3
Dziel się z innymi:
Odtwarzanie plików MP3 w C# - Alt Control Delete

Architektura 1816 dni, 6 godzin, 39 minut temu Yuras 161 rozwiń

W poprzedniej notce pokazałem jak przy pomocy bardzo prostego interfejsu IRepository oraz QueryObject można zrealizować warstwę dostępu do danych. W zalezności od wielkości projektu może się okazać, że ciut brakuje funkcjonalności. Co zatem robić? Z założenia nie chcemy już więcej zmieniać naszego interfejsu. Jak więc przykładowo wykonać operację pobrania rekordu z bazy i ustanowienia na nim blokady? W bazowej implementacji nie mamy takiej metody... i nie będziemy jej dodawać do interfejsu. Na szczęście...

Źródło: dario-g.com
Dziel się z innymi:
Dario-G | Rozszerzanie IRepository

Architektura 1816 dni, 18 godzin, 49 minut temu http://pawlos.blogspot.com/ 108 rozwiń

Jestem właśnie w trakcie lektury "Czystego kodu" Roberta C. Martina (polecam wszystkim programistom). Chciałbym podzielić się pewnym spostrzeżeniem autora tej książki. Otóż jako zupełne przeciwieństwa stawia on kod obiektowy oraz kod proceduralny operujący na strukturach danych. Zasadnicza różnica polega na tym, że klasy ukrywają swoją implementację komunikując się ze światem zewnętrznym wyłącznie przez metody, podczas gdy struktury danych mają zupełnie jawną postać, przez co nie potrzebują żadnych metod...

Kamil Durkiewicz: Obiekty vs. struktury danych

Architektura 1819 dni, 4 godziny, 54 minuty temu http://durkiewicz.blogspot.... 224 rozwiń

1 2... 6 7 8 9 10 11... 18 19
Szkolenia SecurITum

luty

25.

marzec

03.
Wroc#
Wrocław

kwiecień

03.
4developers
Warszawa
Zobacz wszystkie

.NET Developer Days 2015

W tym roku ponownie jak w poprzednim jesteśmy jednym z patronów medialnych konferencji .NET Developer Days. W tym roku jednym z prelegentów będzie Scott Hanselman.  czytaj więcej
2015-07-22

Najaktywniejsi

1

macko (32 816,53)

2

http://pawlos.blo... (31 520,45)

3

pzielinski (27 178,29)

4

gordon_shumway (21 178,87)

5

paduda (20 336,33)

6

psz750 (13 018,14)

7

rroszczyk (10 383,88)

8

Damian (9 011,08)

9

danielplawgo (7 235,99)

10

arek (6 727,86)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 418,06)

15

jedmac (3 238,38)

16

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

17

CaMeL (2 954,87)

18

mnikolajuk (2 596,93)

19

spetz (2 533,07)

20

FutureProcessing (2 530,11)