dotnetomaniak.pl

dotnetomaniak.pl - Najnowsze artykuły o .NET - Strona 143

Klasa Monitor to chyba najpopularniejszy, najłatwiejszy i często najlepszy sposób synchronizacji danych w .NET. Większość programistów używa słowa kluczowego lock zamiast bezpośrednio Monitor.Enter. W większości przypadków jest to poprawne i zdecydowanie najbardziej przejrzyste. Dzisiaj chciałbym przyjrzeć się kilku sposobom konstrukcji Monitor.Enter\MonitorExit. Pierwszy, zdecydowanie najgorszy to:Monitor.Enter(_sync); // sekcja krytyczna tutaj Monitor.Exit(_sync); W powyższym kodzie brakuje obsługi...

Piotr Zieliński » Code Review: Monitor.Enter – kilka wzorców

Sztuka programowania 1427 dni, 15 godzin, 39 minut temu pzielinski 142 rozwiń

Artykuł ten tworzę z dość prostego powodu. Wraz z mijającym czasem w każdym programiście rośnie opór oraz lenistwo wobec powtarzalnych czynności wykonywanych codziennie w pracy. Stąd też szukamy sposobów na zautomatyzowanie choć części z tych zadań. PowerShell może być jednym ze sposobów na osiągnięcie tego celu. Z tego powodu warto lepiej się z nim zapoznać.

Tagi: Powershell
Dziel się z innymi:
Simple Solutions: PowerShell okiem programisty .NET

Windows 1430 dni, 16 godzin, 39 minut temu http://horusiath.blogspot.com/ 242 rozwiń

Jakiś czas temu zapowiadałem drugą część artykułu o GC. Tym razem będzie o różnych trybach GC i kiedy z jakiego należy korzystać, tak, aby aplikacja zachowywała się płynnie oraz sprawiała wrażenie, że działa w czasie rzeczywistym. Zapraszam do lektury!

Dziel się z innymi:
Piotr Zieliński » Artykuł– Garbage Collector, cz. I

Sztuka programowania 1430 dni, 16 godzin, 39 minut temu pzielinski 111 rozwiń

Niedawno Microsoft wypuścił bardzo interesującą bibliotekę: CLR Memory Diagnostics (w skrócie: ClrMD). Cudeńko to daje nam do rąk niemałą władzę: możemy z jej pomocą podpiąć się z kodu pod dowolny proces .NET i odczytać z niego masę interesujących informacji (jak chociażby wszystko co chcielibyśmy wiedzieć o aktualnym stanie sterty – Heap). Gdyby tego było mało, w ten sam sposób możemy z kodu analizować crash dumpy.

Dziel się z innymi:
Wednewsday: analiza crash dumpów i procesów .NET na żywca z kodu | Maciej Aniserowicz o programowaniu

Narzędzia 1430 dni, 16 godzin, 39 minut temu psz750 197 rozwiń

Microsoft z każdą wersją wprowadza pewne nowe elementy do języka, które teoretycznie powinny poprawić możliwości języka, jak komfort pracy programisty. Od wersji .net 4.0 wprowadzono nowy typ – dynamic. Jego użycie pozwala na wykonanie czynności, które będą dopiero znane w momencie wykonania aplikacji. W dużym skrócie oznacza to, że kompilator pozwoli na wywołanie dowolnej akcji na obiekcie bez zgłoszenia błędu. Kod zostanie bez problemu skompilowany, nawet, jeśli nie istnieje metoda do której się odwołu...

Tagi: .Net, C#, dynamic
Dziel się z innymi:
dynamic – Code review | Michał Jankowski

Inne 1432 dni, 28 minut temu psz750 290 rozwiń

Resharper to świetne narzędzie ułatwiające życie programistom pracującym z Visual Studio. Część jego bogatej funkcjonalności stanowią ...

Dziel się z innymi:
Refaktoryzacja z Resharperem - Tymoteusz Kęstowicz

Narzędzia 1432 dni, 28 minut temu tkestowicz 254 rozwiń

Pewnie każdy na swojej ścieżce programistycznej spotkał się z klasą abstrakcyjną. Wrzucamy tam kod, który zdaje się być domyślną implementacją pewnej grupy klas i szkoda nam kopiować tego zachowania do każdej z nich osobna. Skoro wszystkie zachowują się podobny sposób, czasem tylko dodając coś od siebie, to warto wykorzystać dziedziczenie i napisać mniej (DRY).

Dziel się z innymi:
jstadnicki: Testowanie klas abstrakcyjnych

Sztuka programowania 1433 dni, 15 godzin, 17 minut temu http://pawlos.blogspot.com/ 224 rozwiń

W Gicie możemy zlecić ignorowanie zmian zachodzących w plikach na kilka różnych sposobów. Na ten temat pisałem już w poście “Git a ignorowanie plików“. Dziś skupię się na jednym z nich, a mianowicie na fladze “assume-unchanged”. Służy ona do poinstruowania Gita, aby traktował wybrane pliki, które już zostały dodane do repozytorium, jako niezmodyfikowane. Dwa przykłady zastosowania: mamy plik konfiguracyjny, który w repozy...

Git i pliki "–assume-unchanged" | Maciej Aniserowicz o programowaniu

Narzędzia 1433 dni, 15 godzin, 17 minut temu http://pawlos.blogspot.com/ 93 rozwiń

W ostatnim poście zajęliśmy się wprowadzeniem do TPL Dataflows. Użyliśmy ActionBlock do implementacji wzorca producent\konsument. Dzisiaj dołączymy kolejne bloki, aby pokazać na czym polega tworzenie współbieżnych algorytmów w TPL. ActionBlock przetwarzał wyłącznie dane – nie zwracał żadnego rezultatu. Innymi słowy, przyjmował parametry wejściowe ale zwracał wyłącznie void. TransformBlock implementuje zarówno ITargetBlock jak i ISourceBlock – stanowi również źródło danych. Rozważmy przykład:privatestati...

Piotr Zieliński » TPL Dataflows–część II (TransformBlock i BroadcastBlock)

Programowanie rozproszone 1433 dni, 15 godzin, 17 minut temu pzielinski 63 rozwiń

Wieczór, umowa z klientem na biurku, a my wciąż myślimy czy na pewno dobrze robimy pozwalając na zapis "aplikacja internetowa będzie działała w przeglądarce X, Y, Z”… w głowie dwie sprzeczne myśli: jest dobrze, damy radę i druga jest źle, przecież jest tyle różnic… Jeżeli budując aplikacje dla siebie czyli zamówienie wewnątrz-firmowe czy na zamówienie klienta zewnętrznego zawsze należy pomyśleć nad wpisem dodającym jakie przeglądarki i najlepiej jakie wersje będziemy wspierać i przez jaki czas po oddani...

Źródło: marcinborecki.pl
Dziel się z innymi:
Ile HTMLa w HTMLu czyli co wspiera Nasza przeglądarka | Marcin Borecki - Making a difference everyday

Web 1435 dni, 6 godzin, 39 minut temu http://pawlos.blogspot.com/ 189 rozwiń

Biblioteka TPL istnieje już od jakiegoś czasu i raczej jest znana dla większości programistów. W .NET 4.5 Microsoft poszedł jednak o kilka kroków do przodu i dostarczył tzw. TPL DataFlows. Jest on oparty oczywiście na bibliotece TPL, dostarcza jednak kilka bardzo ciekawych klas, przydatnych do modelowania współbieżnego. Czasami algorytmy składają się z kilku “bloków”, które należy ze sobą synchronizować. TPL DataFlows służy do modelowania przepływu między różnymi wątkami. We wczesnych wersjach .NET byliś...

Dziel się z innymi:
Piotr Zieliński » TPL Dataflows–wprowadzenie (część I)

Sztuka programowania 1436 dni, 7 godzin, 3 minuty temu pzielinski 168 rozwiń

W poprzednim wpisie pokazałem kilka sposobów na wygenerowanie zbioru kolejnych liczb całkowitych. Dzisiaj zaprezentuję wykorzystanie tych danych w kilku przypadkach. Zacznijmy od przygotowania tabeli zawierającej 100 liczb, będzie ona używana w każdym z prezentowanych przykładów.

Dziel się z innymi:
T-SQL – kilka przykładów zastosowania tabeli liczb całkowitych | Developer notes

Bazy danych i XML 1436 dni, 7 godzin, 3 minuty temu psz750 141 rozwiń

Ostatnio wspomniałem o problemach, na jakie możemy natrafić bawiąc się OAuth w wersji 1. W sieci istnieje wiele różnych providerów, skracających nasze męki przy autoryzacji, jednak wcale nie ukracają one mąk jakie musimy przejść gdy chcemy coś więcej niż tylko autoryzację. Na szczęście mały projekt RestSharp przychodzi nam na ratunek. Dzięki niemu za pomocą kilku prostych metod, możemy dodać nagłówek authorization do zapytania z odpowiednimi parametrami jak iż z automatycznym podpisywaniem zapytań. Prz...

Tagi: oauth, restsharp
Źródło: blog.gutek.pl
Dziel się z innymi:
OAuth1 - RestSharp for rescue | Jakub Gutkowski

Inne 1436 dni, 7 godzin, 3 minuty temu http://pawlos.blogspot.com/ 72 rozwiń

Często podczas programowania w T-SQL pojawia się potrzeba skorzystania ze zbioru kolejnych liczb całkowitych z określonego zakresu. SQL Server nie posiada gotowej tabeli zawierającej takie dane, pozostaje opracowanie własnego rozwiązania.

Dziel się z innymi:
T-SQL – generowanie zbioru kolejnych liczb całkowitych | Developer notes

Bazy danych i XML 1437 dni, 12 godzin, 56 minut temu psz750 158 rozwiń

Pisząc testy jednostkowe dość często spodziewamy się identycznego zachowania w różnych testowanych scenariuszach. “Gdy zajdzie X, ma wydarzyć się A, B i C”. Z kolei “gdy zajdzie Y, ma wydarzyć się A, B i D”. W takich przypadkach, wykorzystując standardowe biblioteki do unit testów, mamy do wyboru kilka rozwiązań: wspólna klasa bazowa współdzielone metody “asercji” w ramach jednej klasy copy/paste testów pomiędzy klasami … pewnie jeszcze coś i...

Dziel się z innymi:
"Test reuse" w MSpec | Maciej Aniserowicz o programowaniu

Sztuka programowania 1437 dni, 12 godzin, 56 minut temu http://pawlos.blogspot.com/ 100 rozwiń

SignalR to bardzo sprytna biblioteczka pozwalająca na komunikację serwer->klient w aplikacjach internetowych. Sam jeszcze nie miałem okazji pobawić się nią w praktyce, ale pewnie już wkrótce… Póki co postanowiłem rozpowszechnić informację krążącą po sieci już od jakiegoś czasu. Jose M. Aguilar, ASP.NET MVP, napisał książkę o SignalR właśnie i udostępnił ją za friko. Wystarczy wejść na stronę http://www.campusmvp.net/signalr-ebook, podać swojego maila i c...

Dziel się z innymi:
Wednewsday: darmowa książka o SignalR | Maciej Aniserowicz o programowaniu

Inne 1439 dni, 16 godzin, 54 minuty temu http://pawlos.blogspot.com/ 204 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.

Dziel się z innymi:
Przydatne konwertery | Michał Jankowski

Windows 1439 dni, 16 godzin, 54 minuty temu psz750 255 rozwiń

Serialziacja jest dobrze znanym tematem. Jakiś czas temu pisałem, jak oddelegować serializację jednego obiektu do drugiego. Pokazałem to na przykładzie wzorca singleton – w tamtym przypadku chcieliśmy oddelegować serializację do IObjectReference, który zwracał po prostu zawsze tą samą instancję. Dziś trochę inny scenariusz. Załóżmy, że w plikach, zawsze chcemy trzymać czas w UTC a nie w konkretnej strefie. Ponadto nie mamy dostępu ani do kodu źródłowego DateTime ani nie chcemy korzystać z DateTimeOffset...

Tagi: serializacja
Dziel się z innymi:
Piotr Zieliński » Serializacja–typy Surrogate

Sztuka programowania 1439 dni, 16 godzin, 54 minuty temu pzielinski 150 rozwiń

Świat się zmienia. Obecnie moc obliczeniowa nie jest takim problem jak kiedyś, co chyba najlepiej odzwierciedla pewnego rodzaju stagnacja na rynku komputerowym. Podobnie sprawa ma się z przestrzenią dyskową. Kiedy sobie przypomnę mój pierwszy komputer, w którym dysk miał 20MB, to pamiętam że miałem dylemat - instalować Windowsa 3.1, czy zainstalować więcej gier;-) Trochę inne były wtedy to czasy. Pamiętam również, że gdzieś pod koniec lat 90-siątych na dobre rozpoczęła się walka formatów do kompresji. P...

Tagi: 7zip, C#
Dziel się z innymi:
Biblioteki warte poznania w C# - SevenZipSharp - Alt Control Delete

Architektura 1440 dni, 15 godzin, 53 minuty temu Yuras 250 rozwiń

Kilka wpisów wcześniej pisałem, dlaczego należy unikać funkcji Suspend. Dzisiaj przyszła kolej na metodę Abort, która również jest sygnałem, że zaprojektowana architektura jest po prostu zła. Aby zrozumieć, dlaczego Abort jest tak niebezpieczny, należy poznać najpierw zasadę jego działania. Wywołując Abort, wyrzucany jest tzw. asynchroniczny wyjątek ThreadAbortException. Dlaczego asynchroniczny? Ponieważ może on zostać wstrzyknięty w “dowolne” miejsce w kodzie. Istnieją pewne zasady, kiedy dokładnie może...

Tagi: Thread.Abort
Dziel się z innymi:
Piotr Zieliński » Code Review: Dlaczego nie należy korzystać z Thread.Abort

Sztuka programowania 1442 dni, 10 godzin, 8 minut temu pzielinski 134 rozwiń

1 2... 141 142 143 144 145 146... 316 317
Szkolenia SecurITum

kwiecień

26.
CodeEurope
Kraków

maj

17.
InfoShare
Gdańsk
23.
CodeEurope
Wrocław
Zobacz wszystkie

Najaktywniejsi

1

macko (32 816,53)

2

http://pawlos.blo... (31 603,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 041,08)

9

danielplawgo (7 235,99)

10

arek (6 807,91)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 578,06)

15

jedmac (3 318,39)

16

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

17

CaMeL (2 954,87)

18

spetz (2 783,22)

19

mnikolajuk (2 596,93)

20

lkurzyniec (2 590,69)