Kolejna część artykułu o GC – tym razem o zasobach niezarządzanych. Zapraszam do lektury: http://msdn.microsoft.com/pl-pl/library/garbage-collector-cz-3-zasoby-niezarzadzane
Strona głównaUżytkownik
venedie | użytkownik
Sztuka programowania 4170 dni, 21 godzin, 25 minut temu 122 źrodło rozwiń
Konwertery – krótkie klasy i jednocześnie bardzo przydatne elementy, bez których bindowanie niektórych wartości w XAMLu byłoby bardzo kłopotliwe. Mają one zastosowanie w projektach typu Winodws Phone, Silverlight oraz WPF. Praktycznie w większości tego typu projektów mnożna od razu przekleić te najważniejsze.
W poprzednim poście pokazałem jak dokonać subskrypcji aby otrzymywać powiadomienia o nowych danych oraz jak skonwertować IEnumerable to IObservable. Dzisiaj chciałbym pokazać kilka metod klasy Observable, które są szczególnie ważne przy pisaniu testów jednostkowych oraz przy nauce RX. Muszę przyznać, że na co dzień korzystam wyłącznie tylko z kilku z nich ale w przypadku UnitTest’ów są już bardzo praktyczne. Observable to zbiór statycznych metod (często rozszerzających) usprawniających pracę z IOb...
Sztuka programowania 4318 dni, 10 godzin, 4 minuty temu 93 źrodło rozwiń
Kolejna cześć artykułu z cyklu “Dobre i złe praktyki”: http://msdn.microsoft.com/pl-pl/library/dobre-i-zle-praktyki-w-c-sharp–czesc-4.aspx
Sztuka programowania 4451 dni, 11 godzin, 29 minut temu 112 źrodło rozwiń
Na moim blogu co jakiś czas można znaleźć informacje dotyczące pisania dobrego oraz złego kodu w c#. Oprócz tego zacząłem pisać serie artykułów związanych z tą tematyką. Wiele informacji w tych artykułach można było znaleźć już wcześniej na moim blogu ale myślę, że ten cykl stanowi dobre dopełnienie i podsumowanie tego wszystkiego co piszę tutaj. Oczywiście artykuły rozszerzają tematykę, oraz zawierają więcej przykładów więc tym bardziej zachęcam do lektury. Dziś została opublikowana pierwsza część: ht...
Sztuka programowania 4487 dni, 13 godzin, 46 minut temu 630 źrodło rozwiń
Witam kolejna cześć artykułu z cyklu “dobre i złe praktyki w c#”. Zapraszam do lektury: http://msdn.microsoft.com/pl-pl/library/dobre-i-zle-praktyki-w-c-sharp–czesc-2.aspx
Sztuka programowania 4478 dni, 18 godzin, 46 minut temu 391 źrodło rozwiń
Klasa Parallel stanowi doskonałe dopełnienie do task’ów. Dostarcza trzy statyczne metody:Invoke – współbieżne uruchomienie kilku zadań. For – współbieżna pętla FOR. ForEach – współbieżna pętla foreach. Klasa stanowi helper, ponieważ wszystkie powyższe operacje można wykonać za pomocą obiektów Task lub Thread. Implementacja jednak własnej pętli współbieżnej jest zawsze trudniejsza niż użycie po prostu gotowej metody. Zacznijmy od Invoke, przykład:staticvoid Main(string[] args) { Parallel.Invoke(Me...
Kolejna część artykułu z cyklu dobre i złe praktyki. Zapraszam do lektury: http://msdn.microsoft.com/pl-pl/library/dobre-i-zle-praktyki-w-c-sharp–czesc-3.aspx
Sztuka programowania 4452 dni, 14 godzin, 2 minuty temu 175 źrodło rozwiń
Settings Wita w dzisiejszym poście dalej męczę temat charms bar (Win + C) czyli prawego wysuwanego paska. Dziś zajmiemy się ustawieniami naszej aplikacji. Co to znaczy? W przypadku aplikacji metro pisanych na Windows 8 Microsoft mocno zaleca używania jednego miejsca dla ustawień znajduje się właśnie na prawym wysuwanym pasku pod przyciskiem Settings. Jest to miejsce gdzie powinniśmy trzymać ustawienia ponieważ i tak użytkownik musi wejść w to miejsce jeśli będzie chciał zmienić ustawienia nadane p...
Na platformie .NET od wersji 3.5 dostępna jest technologia LINQ oferująca uniwersalny mechanizm zadawania zapytań do obiektów. W tym wpisie pokażę w jaki sposób przy użyciu LINQ to XML przenieść dane z kolekcji obiektów do dokumentu XML, wczytać dane z pliku XML do kolekcji oraz zmodyfikować zawartość XML-a.
Udało mi się dziś skończyć tutorial dla uczestników cyklu spoktań “Wiosna w Chmurach” (opiszę niedługo o co chodzi ). Tutorial pokrywa podstawy z pisania aplikacji na Windows Azure. Przez 1h próbowałem bezskutecznie ‘przekleić’ dokument worda do wordpress’a – za każdym razem jakieś dzikie problemy występowały z formatowaniem, szczególnie z kodem. Dlatego zamiast umieszczać cały tutorial TUTAJ - wrzuciłem go na skydrive’a – wszyscy zainteresowani mogą go pobrać Jeśli...
W .NET 4.0 wprowadzoną klasę Tuple służącą do owijania kilku wartości w jeden obiekt. Tuple to nic innego jak obiekt zawierający w sobie jakieś dane w postaci właściwości. Do dyspozycji jest 8 statycznych metod służących do stworzenia Tuple:Create(T1)Create(T1,T2)Create(T1,T2,T3)Create(T1,T2,T3,T4)Create(T1,T2,T3,T4,T5)Create(T1,T2,T3,T4,T5,T6)Create(T1,T2,T3,T4,T5,T6,T7)Create(T1,T2,T3,T4,T5,T6,T7,T8) Ponadto istnieje możliwość stworzenia tuple za pomocą jednego z konstruktorów:Tuple
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 ...
Architektura 4559 dni, 2 godziny, 35 minut temu 387 źrodło rozwiń
W ramach zakończenia serii wpisów związanych Managed Add-in Framework (MAF / System.AddIn) ([1], [2], [3], [4], [5]) chciałbym dodać jeszcze kilka słów w ramach podsumowania. Na plus, czyli "MAF – daję +1" Zacznijmy od pozytywów Managed Add-in Framework (MAF / System.AddIn): Mamy możliwość uruchomienia pluginów w środowisku izolowanym (inna AppDomain, inny proces) (patrz tu i tu) Rozwiązany jest problem z kompatybilnością aplikacja główna (host) – wtyczka (Add-in). Mamy „lifetime management”, c...
Autor: Zostałem ostatnio zapytany jak można zaimplementować aplikację, bazującej na .NET, która miałaby być rozszerzana za pomocą wtyczek (czasem nazywanych też: Add-In, Add-On, Rozszerzenie, Extension, Plug-In, Snap-In, ...), z których każda uruchamiana by była w bezpiecznym środowisku (np. odrębnej domenie aplikacyjnej). Przyjrzyjmy się więc jakie są możliwości tworzenia rozszzerzeń dla aplikacji (.NET) i jak można przy ich pomocy zapewnić wspomniane bezpieczeństwo. Sposób „wszystko zrobię sam (może ud...