Strona głównaUżytkownik

gordon_shumway | użytkownik

gordon_shumway
gordon_shumway
21 178,88
2236 dni, 13 godzin, 54 minuty temu
7 grudnia, 2009
dotnetomaniak.pl

Pod jednym z moich ostatnich postów pojawił się komentarz zawierający m.in. taką treść: "Chyba potrzebuję mentora, który mógłby rzucić temat, a następnie sprawdzić jego realizację. Czy znajdzie się jakiś chętny? (...) nauka przez fun tworzenia. Ale czy to aby dobra droga?" Za mentora się bynajmniej nie uważam, ale pomyślałem - co tam, może być ciekawe doświadczenie. Kilka miesięcy temu podobny tekst wyczytałem na forum CodeGuru - wówczas też zgłosiłem się na ochotnika do takiej roli. Ale temat umarł po d...

Dziel się z innymi:
Maciej Aniserowicz | "Nauka przez fun"

Inne 5147 dni, 7 godzin, 24 minuty temu gordon_shumway 119 źrodło rozwiń

Na codeplex jest świetny projekt autorstwa Kenta Boogarta pozwalający na definiowane konwerterów w XAMLu.

Źródło: bartekszafko.pl
Dziel się z innymi:
WPF: Konwertery w XAMLu

Windows 5152 dni, 7 godzin, 15 minut temu macko 146 źrodło rozwiń

Przyszedł czas na opisanie najbardziej złożonego wzorca warstwy biznesowej – modelu domeny (DM). Jeśli nie znacie dobrze wzorca opisanego w poprzednich postach (aktywny rekord) nie zaczynajcie nawet próbować zrozumieć DM ponieważ jest on po prostu rozszerzeniem AR. Na początek kilka faktów. DM jest wzorcem w pełni obiektowym, wykorzystującym wszelkie dobrodziejstwa programowania obiektowego (dziedziczenie, polimorfizm itp.). DM w przeciwieństwie do AR nie jest wzorcem zorientowanym na bazę danych. Scen...

Tagi:
Dziel się z innymi:
Warstwa biznesowa – model domeny (domain model pattern)

Architektura 5156 dni, 3 godziny, 18 minut temu pzielinski 199 źrodło rozwiń

W ubiegłym tygodniu odbyła się w Las Vegas wielka coroczna konferencja MIX. Mój ziom JJ miał okazję znajdować się właśnie tam już drugi rok z rzędu. Nasze zeszłotygodniowe konwersacje skłoniły mnie do poważniejszego zastanowienia się nad konferencjami programistycznymi... oraz sensem fizycznego udziału w tych wydarzeniach. Efekt owych rozmyślań przedstawiam poniżej.

Tagi: konferencje
Dziel się z innymi:
Maciej Aniserowicz | Konferencje dla programistów... czy to się opłaca?

Inne 5150 dni, 13 godzin, 37 minut temu gordon_shumway 126 źrodło rozwiń

Niedawno natknąłem się na StackOverflow interesujące pytanie dotyczące Domain-Driven Design. Chciałbym się z Wami podzielić moimi przemyśleniami. Pytanie dotyczyło zaprojektowania logiki biznesowej dla domeny składającej się z trzech obiektów: Książki (Book), Rozdziału (Chapter) oraz Strony (Page): Problem polega na tym, który element, z przedstawionych trzech, powinien być korzeniem agregatu?

Tagi: DDD, uml
Dziel się z innymi:
Przypadek książkowy « Notki Po Polsku « Simon says… architecture!

Architektura 5152 dni, 18 godzin, 8 minut temu gordon_shumway 96 źrodło rozwiń

Rzucam wyzwanie standardom kodowania. Postanowiłem po raz kolejny, na bazie nagromadzonych w ciągi ostatnich miesięcy doświadczeń, zrewidować swój sposób pisania kodu. Oto, co wymyśliłem.Var Jakiś czas temu przy okazji cyklu dotyczącego czytelności kodu pozwoliłem sobie dosyć mocno skrytykować słowo kluczowe var. Zgadnijcie co się stało? Zmieniłem zdanie. varjuż mnie nie straszy. Oswoiłem si...

Dziel się z innymi:
[PL] Challenge everything « Notki Po Polsku « Simon says… architecture!

Inne 5152 dni, 18 godzin, 8 minut temu gordon_shumway 86 źrodło rozwiń

Dzisiaj przyszedł czas na pierwszy wzorzec obiektowy – aktywny rekord(AR). Zaczynamy od diagramu klas:   W przeciwieństwie do poprzednich wzorców, każda klasa definiuje fragment logiki biznesowej. Obiekty klas występują w relacji jeden do jednego względem wierszy w tabeli. Klasa Order będzie zawierała zatem logikę dla konkretnego zamówienia a nie dla zbioru zamówień. Klasy tworzymy zwykle dla każdej tabeli z bazy danych a ich instancje jak już wspomniałem dla każdego przetwarzanego wiersza. Warto po...

Tagi:
Dziel się z innymi:
Warstwa biznesowa – aktywny rekord (Active Record pattern)

Architektura 5155 dni, 13 godzin, 6 minut temu pzielinski 167 źrodło rozwiń

Moduł tabeli (TM – table module) jest również wzorcem proceduralnym (podobnie jak TS). Rozwiązuje jednak podstawowy problem TS – brak zdefiniowania metody podziału logiki biznesowej na klasy. W przypadku TS sam wzorzec nie określał ile klas należy stworzyć. Wszystko zależało od programisty. Mógł on stworzyć jedną klasę zarządzającą zarówno zamówieniami jak i produktami. Moduł tabeli mówi po prostu, że należy stworzyć osobną klasę dla każdej tabeli w bazie danych. Czyli w przypadku gdy mamy tabele “Orders...

Tagi:
Dziel się z innymi:
Warstwa biznesowa – moduł tabeli (table module pattern)

Architektura 5156 dni, 8 godzin, 58 minut temu pzielinski 86 źrodło rozwiń

Automapper oferuje coś takiego jak profile. Dokumentacja nie mówi nam o nich na dzień dzisiejszy zbyt wiele (link) (dla leniwych - nie mówi NIC:) ). Po czymś o nazwie "profil" spodziewałem się możliwości utworzenia mniejszych "podkonfiguracji" charakterystycznych dla konkretnego scenariusza. Na przykład gdybym chciał mapowanie int->string mieć wspólne dla całej aplikacji, to nie umieszczałbym go w żadnym profilu. Natomiast wspomniane kiedyś mapowanie z czasu UTC na czas lokalny mógłbym mieć w profilu o n...

Tagi: AutoMapper
Dziel się z innymi:
Maciej Aniserowicz | Profile w Automapperze

Narzędzia 5155 dni, 13 godzin, 6 minut temu gordon_shumway 41 źrodło rozwiń

Ostatnio musiałem przekazać klientowi częściowo gotową aplikację zanim jednak to zrobiłem poprosiłem znajomego by ją odpalił u siebie i zobaczył czy wszystko mu śmiga (to, że mi na komputerach w domu działa to nic dziwnego). Dobrze się złożyło, gdyż niestety aplikacja się nie uruchomiła :) co lepsze dodała do Windows Event Log błąd Windows Error Reporting o ID 1001. Mimo usilnych prób u siebie nie byłem wstanie problemu z reprodukować - suma sumarum okazało się, że wina leży w jednej DLLce, która u mnie ...

Tagi:
Źródło: blog.gutek.pl
Dziel się z innymi:
.neting in the free world | WER i Event 1001 - Application Error

Inne 5161 dni, 4 godziny, 10 minut temu gordon_shumway 33 źrodło rozwiń

Ostatnimi czasy zarówno na devPytaniach jak i 9fingers pojawiało się podobne pytanie, wcześniej też je wielokrotnie słyszałem. Powiem więcej - sam je kiedyś zadawałem. Na dotnetomaniaku z kolei pojawił się link do bloga, którego autor (Matthew) również dzieli się refleksjami na ten temat: link. Zachęcam do lektury - jeśli nie czytaliście to przeczytajcie i spotkajmy się za kilka minut :).

Dziel się z innymi:
Maciej Aniserowicz | Jakiego języka programowania się uczyć? - kontra

Inne 5155 dni, 13 godzin, 6 minut temu gordon_shumway 168 źrodło rozwiń

Najprostszym wzorcem projektowym warstwy biznesowej,  należącym do grupy wzorców proceduralnych jest skrypt transakcji (w skrócie TS – transcaction script). Spójrzmy na diagram UML przedstawiający przykład jego użycia: Innymi słowy, TS jest zapisem przypadków użycia w naszym systemie. W przypadku systemu sprzedaży oczywistymi przypadki użycia są m.in.: dodanie nowego klienta do bazy, złożenie zamówienia czy pobranie listy produktów. Jak już wspomniałem jest to wzorzec proceduralny a nie obiektowy zate...

Tagi:
Dziel się z innymi:
Warstwa biznesowa – skrypt transakcji

Architektura 5160 dni, 6 godzin, 2 minuty temu pzielinski 114 źrodło rozwiń

W przykładzie z ostatniego posta wielu mogła nie podobać się następująca linijka: 1: string targetTimeZoneName = Config.TargetTimeZone; I mają rację, gdyż można by to zamodelować jako zależność konwertera od konfiguracji - najlepiej przez constructor injection.

Maciej Aniserowicz | Automapper a Dependency Injection

Narzędzia 5160 dni, 6 godzin, 2 minuty temu gordon_shumway 84 źrodło rozwiń

Niedawno popisałem troszkę o czasie UTC i dlaczego tylko taka reprezentacja czasu powinna znajdować drogę do bazy danych. A teraz... w jaki sposób przygotować datę do podróży w drugą stronę, czyli do użytkownika. Z Automapperem jest to zadanie doprawdy banalne, wystarczy odpowiedni Type Converter...

Tagi: AutoMapper, tools, UTC
Dziel się z innymi:
Maciej Aniserowicz | Automapper i mapowanie z czasu UTC

Narzędzia 5159 dni, 2 godziny temu gordon_shumway 58 źrodło rozwiń

Zacznijmy od zdefiniowania do czego potrzebna nam jest tzw. warstwa biznesowa w systemie. Sama nazwa może nie wiele mówi i czasami okazuje się  nawet myląca. Ogólnikowo  jest to rdzeń systemu. Stanowi zdecydowanie najważniejszy punkt każdej aplikacji. Warstwa biznesowa ( w skrócie BL – business layer) zawiera właściwą logikę aplikacji. Jeśli brzmi to zbyt abstrakcyjnie, przedstawmy to na przykładzie systemu sprzedaży (na którym będę często bazował). Co stanowi warstwę biznesową ( a więc logikę)  w syste...

Tagi:
Dziel się z innymi:
Wprowadzenie do warstwy biznesowej

Architektura 5162 dni, 11 godzin, 48 minut temu pzielinski 116 źrodło rozwiń

Ostatnio coraz częściej spotykam się z pytaniem osób, które chcą się nauczyć programować, jakiego języka warto się nauczyć pod kątem przyszłego rynku pracy. Czy jeżeli nauczę się języka X to będą miał pracę? Co lepiej, Y czy Z, żeby dużo zarabiać? I tego typu różne pytania.

Dziel się z innymi:
Jakiego języka programowania się nauczyć?

Inne 5161 dni, 4 godziny, 10 minut temu Damian 297 źrodło rozwiń

Wracamy do kursu o TPL. Dziś trochę informacji faktów o .For oraz .ForEach. Te dwie metody dają podstawowy sposób na zrównoleglenie naszego kodu bez większego wysiłku

Tagi: NET 4.0, TPL
Dziel się z innymi:
.NET blog: TPL - Parallel.For/ForEach

Architektura 5161 dni, 4 godziny, 10 minut temu gordon_shumway 105 źrodło rozwiń

Załóżmy dla przykładu taki o to kod: public class Point { public int X; public int Y; } class Program { public Point Position { get; set; } public void SetPosition(int x, int y) { Position.X = x; Position.Y = y; } static void Main(string[] args) { var p = new Program(); p.SetPosition(10, 10); Console.ReadLine(); } }

Tagi: struktury
Źródło: blog.gutek.pl
Dziel się z innymi:
.neting in the free world | Struktury jako własności klas

Inne 5170 dni, 52 minuty temu gordon_shumway 72 źrodło rozwiń

Jakoś dawno nic mi się z niczym nie skodevjarzyło :). Aż tu nagle.... Nie mam nic przeciwko nałogowym palaczom, sam lubię sobie zajarać. ALE gdy wchodzę o 6.07 z samego rana do obleśnej mikrowindy w tym zapyziałym starym bloku, w którym aktualnie przyszło mi mieszkać, i otacza mnie zewsząd cuchnąca mgła wydyszana z płuc smołczyciela, który nie potrafił poczekać 2 minut z odpaleniem fajki, to mnie szlag trafia...

Tagi: skojarzenie
Dziel się z innymi:
Maciej Aniserowicz | Papierosowo-chamskie sko_dev_jarzenie

Inne 5168 dni, 10 godzin, 23 minuty temu gordon_shumway 129 źrodło rozwiń

Dostałem od znajomego fragment kodu napisany przez jego grupę programistów z pewnego wschodniego kraju: private static boolean isNull(Object objectToCheck) { boolean isNullFlag = false; if(objectToCheck!= null) { isNullFlag = true; } return isNullFlag; }

Tagi: pro
Źródło: blog.gutek.pl
Dziel się z innymi:
.neting in the free world | Interesujące fragmenty kodu produkcyjnego

Inne 5170 dni, 52 minuty temu gordon_shumway 106 źrodło rozwiń

1 2... 11 12 13 14 15 16 17 18

Najaktywniejsi w tym miesiącu