Niedawno pisałem o tym, że pojawiła się kolejna wersja beta Visual Studio 2010, wczoraj doszła kolejna nowość: Microsoft opublikował Visual Studio 2010 and .NET Framework 4 Training Kit - October Preview. Kolejna Beta (2) tego Training Kit'u zawiera 15 prezentacji, 19 hands-on labs i 13 demonstracji. Pokazano tam wiele nowych technologii...
Strona głównaUżytkownik
macko | użytkownik
Jakiś czas temu pisałem na temat tworzenia i instalowania serwisu Windows. W większości wypadków jest to dobre rozwiązanie, gorzej jeżeli chcemy uruchamiać również wytworzony plik "exe" dwuklikając na niego (lub wciskając "play" w VS).
Klasa TaskScheduler. Poza klasami TaskFactory i TaskScheduler jest podstawowym elementem nowej przestrzeni nazw Tasks. Cytując MSDN, jest punktem rozszerzenia logiki kolejkowania zadań (stąd klasa TaskScheduler jest abstrakcyjna). Domyślna instancja (zwracana przez statyczną własność TaskScheduler.Current) jest typu ThreadPoolTaskScheduler – wykorzystuje nową implementację klasy ThreadPool opartą o „kradzież” pracy. Z nazwy klasy można wyczytać co kryje ta implementacja – korzysta z ThreadPool do kolejko...
Architektura 5539 dni, 21 godzin, 32 minuty temu 62 źrodło rozwiń
Czy już wszyscy zainteresowani przetestowali Visual Studio 2010 Beta (1)? Jeśli nie, to może o tamtej wersji zapomnieć i zwrócić uwagę na kolejną opublikowaną betę, która dzisiaj pojawiła się jako dostępna dla subskrybentów MSDN, a 21-go października będzie dostępna dla innych zainteresowanych.
Autor: Podczas ostatniej konferencji MTS opowiadałem m.in. o behawiorach, czyli koncepcji pozwalającej jeszcze wyraźniej zaznaczyć linię podziału kompetencji pomiędzy programistami, a projektantami interfejsu. Zanim przejdziemy do części praktycznej mała dygresja językowa. Długo zastanawiałem się, jaki będzie najwłaściwszy odpowiednik angielskiego słowa behaviors. Trywialną z pozoru sprawę komplikuje zawikłana taksonomia samej technologii, na którą oprócz “zachowań” składają się również pary “akcja/w...
Architektura 5544 dni, 2 godziny, 16 minut temu 37 źrodło rozwiń
W prawie wszystkich językach obiektowych istnieją tak zwane specyfikatory dostępu, przykładem których jest choćby public czy private. Pozwalają one ustalać, jak szeroko dostępne są poszczególne składniki klas w stosunku do reszty kodu. Modyfikatory te występują m.in. w trzech najpopularniejszych, kompilowalnych językach obiektowych: C++, C# i Javie.
Pewnie nie raz staliście przed sytuacją, w której jakaś z funkcji spowodować może powstanie wyjątku, którego wystąpienie trzeba zalogować i przerzucić go dalej (re-throw), aby aplikacja zajęła się nim jak należy. Jednocześnie idealnie, gdy wyjątek zawierał będzie jak najwięcej informacji. Zalicza się do nich przyjaciel każdego programisty – StackTrace.
Architektura 5545 dni, 10 godzin, 58 minut temu 75 źrodło rozwiń
Autor: Już jakiś czas temu pisałem o możliwości użycia configu podzielonego na wiele plików. Dziś pokaże jeden z przypadków użycia tej funkcjonalności. Często zdarza się tak, że podczas rozwoju aplikacji używamy naszej lokalnej bazy danych. Czasem jednak chcemy aby inne osoby zobaczyły postęp prac. Aplikacja wrzucona na serwer zapewne będzie miała inny connection string niż ten lokalny. Oczywiście możemy mieć oba connection stringi w pliku web.config i je komentować odpowiednio, ale ponieważ trzeba o tym...
Od jakiegoś czasu pracuję nad uelastycznieniem i zapewnieniem rozszerzalności w dużej aplikacji ASP.NET. W związku z tym zacząłem poszukiwać w sieci sensownego gotowca implementującego wzorzec agregatora zdarzeń; wszak po co wyważać otwarte drzwi .W moich poszukiwaniach dotarłem do artykułu na blogu Denisa Vuyka. Opisuje on użycie agregatora zdarzeń w połączeniu z MEF (Managed Extensibility Framework). Implementacja została “wyciągnięta” z projektu Prism (Composite WPF). Pozostały w niej jednak pewne el...
Autor: Tytuł artykułu zdradza nieco temat jaki chciałbym podjąć. Może samo versus jest nieco przewrotne, gdyż bardziej odpowiednie byłoby “Spring.NET a WCF” czy też po prostu “Spring.NET i WCF”. Tak naprawdę to tytuł powinien brzmieć “Spring.NET a WCF versus programista” ;). Obserwując programistów zaczynających przygodę ze Spring.NET i próbujących zintegrować z tym framew...
Programowanie rozproszone 5546 dni, 12 godzin, 25 minut temu 162 źrodło rozwiń
Autor: Dzisiaj napiszę o rzeczy bardzo prostej ale, o której jednak zdarzyło mi się zapomnieć przez co zmarnowałem trochę czasu. Sytuacja miała miejsce kiedy pracowałem nad kontrolkę, która na swoim interfejsie publicznym między innymi udostępniała zdarzenia SelectionChanged. W kodzie wyglądało to jakoś tak:
Krótko i obrazkowo: dodamy do projektu kilka zasobów i dostaniemy się do nich z poziomu kodu. Całość zostanie przeprowadzona w środowisku Visual Studio, więc jak ktoś go nie używa, to sprawa raczej jest przegrana i może co najwyżej pooglądać widoki ;P. Zaczynamy standardowo, aplikacja konsolowa, najlepiej o jakiejś śmiesznej nazwie. Gdy ty...
Autor: Bardzo szybko przywykłem do idei "domain events" Udiego i nie spodziewałem się napotkania w kodzie DDDSample innego rozwiązania. Jakież było więc moje zdziwienie, gdy zdarzenia (z natury) domenowe odnalazłem nie na poziomie modelu domeny, ale na poziomie warstwy aplikacyjnej. Postanowiłem przejrzeć się bliżej temu tematowi (zamiast na ślepo kopiować Javowe rozwiązanie).
Architektura 5546 dni, 12 godzin, 25 minut temu 83 źrodło rozwiń
Zgodnie z zapowiedziami, jakie od dłuższego czasu pojawiały się na forum Polskiej Grupy Użytkowników SQL Server (PLSSUG), zaczynamy Virtual Study Group 70-432 (VSG432). Co to takiego? To cykl prezentacji, których celem będzie przybliżenie zagadnień, które powinien opanować każdy, kto przystępuje do egzaminu Microsoft o numerku 70-432TS: Microsoft SQL Server 2008, Implementation and Maintenance. Celem nie będzie oczywiście przygotowanie od A do Z ...
Bazy danych i XML 5547 dni, 3 godziny, 3 minuty temu 71 źrodło rozwiń
Asumpt do poniższego rozwiązania dostarczył skrypt PowerShell, który kompiluje projekty pewnego mojego rozwiązania, i gdzie zapałałem chęcią automatycznego uaktualnienia numeru wersji we wszystkich plikach AssemblyInfo.cs. Ale gdzież są te wszystkie pliki? No w projektach… Najprostszy sposób dotarcia do projektów to odczytanie pliku .sln. Hm… ale to oznacza analizowanie zawartości. Z pomocą przyszły wyrażenia regularne oraz świadomość istnienia jasno określonej struktury pliku .sln. Project("{FAE04EC0-3...
Autor: Przypadkiem trafiłem na fajny cheetsheet zawierający zestawienie podstawowych wzorców projektowych, może się komuś przyda :)
Architektura 5547 dni, 3 godziny, 3 minuty temu 366 źrodło rozwiń
Autor: Z ogromną przyjemnością śpieszę donieść, iż projekt DDDSample.Net - .NET-owy klon projektu DDDSample - właśnie doczekał się pierwszej wersji. Wraz z projektem powstał także stosowny blog, na którym publikowane będą informacje dotyczące postępu prac oraz posty komentujące decyzje projektowe, które zostały podjęte przez autorów Java-owego oryginału.
PowerShell to platforma skryptowa dla systemu Windows, stworzona zwłaszcza dla zaawansowanych użytkowników i administratorów, którym brakowało narzędzia podobnego do basha z systemów Uniksowych (mimo iż sam bash jest dostępny także dla Windows w ramach Cygwin, a przykładowo ksh jest rozprowadzany jako składnik Windows Services for Unix). Wiele osób narzekało też na brak platformy skryptowej z prawdziwego zdarzenia, często zapominając o narzędziu Host skryptów dostępnym od Win...
Dzisiaj odrobina odnośnie dostosowywania serializacji do własnych potrzeb. Na pierwszy ogień interfejs ISerializable, pozwalający na ‘wrzucenie’ do serializowanego strumienia tego co chcemy i pod jaką nazwą chcemy.
Architektura 5558 dni, 21 godzin, 56 minut temu 104 źrodło rozwiń
Autor: Od roku piszę projekty posługując się NHibernate. A tu dopiero mój pierwszy post o tym super narządku :) Post tym bardziej niefortunny, gdyż dotyczy błędu na jaki można się nie chący natknąć i stracić dobrą godzinę na jego rozwiązanie. NHibernate pozwala na definiowanie różnego typu generatory wartości klucza głównego. Oprócz generatorów natywnych, czyli wartości generowanych przez bazy...