dotnetomaniak.pl

dotnetomaniak.pl - Najnowsze artykuły o .NET w dziale Inne - Strona 30

W .NET istnieje wiele sposobów synchronizacji pracy wątków. O dużej części z nich pisałem już na blogu (z ciekawszych np. klasa Barrier ). Najpopularniejszym i najłatwiejszym sposobem jest użycie słowa kluczowego lock. W wielu przypadkach jest to najlepszy i najbezpieczniejszy wybór. SpinLock to zupełnie inne podejście. W przypadku lock, wątek jest usypiany i budzony gdy przyjdzie na niego kolej. Ma to kilka poważnych wad. Wiążą się one z szeregowaniem oraz zmianą kontekstu. Zmiana kontekstu jest dość c...

Dziel się z innymi:
Piotr Zieliński » Synchronizacja za pomocą SpinLock

Inne 1656 dni, 12 godzin, 59 minut temu pzielinski 194 rozwiń

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

Tagi: C#, Tuple
Dziel się z innymi:
Piotr Zieliński » Klasa Tuple

Inne 1659 dni, 4 godziny, 51 minut temu pzielinski 262 rozwiń

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...

[TUTORIAL] Pierwsza aplikacja w Windows Azure « Krzysztof Kowalski Blog

Inne 1659 dni, 4 godziny, 51 minut temu http://krzysztofkowalskiblo... 165 rozwiń

When working with multi threaded applications, we tend to spawn worker threads which can lead to ineffective code when not done correctly, for example threads will not get reused and will be recreated for each work items. The solution to all those problems is a ThreadPool which reuses threads and queues work items that are consumed by those threads. This sort of implementation while simple can have side effects as unless the pool Queue is immutable it will have to be locked each time an item Enqueued and...

Dziel się z innymi:
Work Stealing | Passion of Programming in .NET

Inne 1665 dni, 4 godziny, 43 minuty temu http://badamczewski.blogspo... 213 rozwiń

Ostatnio zainspirował mnie post Gutka (jego blog jest dostępny pod adresem http://blog.gutek.pl) który przyczynił się do spełnienia marzenia mojej żony – posprzątania biblioteczki. W skrócie mam parę książek do oddania.

Źródło: mnikolajuk.com
Dziel się z innymi:
Książki za FREE

Inne 1668 dni, 5 godzin, 6 minut temu mnikolajuk 314 rozwiń

Co poniższy kod zwróci na ekranie? Spodziewać się można 0,1,2. Jednak na ekranie ujrzymy 5,5,5. Dlaczego?

Tagi: C#, Lambda
Dziel się z innymi:
Piotr Zieliński » Wyrażenia lambda i niespodziewany rezultat

Inne 1672 dni, 16 godzin, 8 minut temu pzielinski 251 rozwiń

W c# 5.0 dodano dwa nowe atrybuty: CallerMemberName oraz CallerFilePath. Można je stosować do domyślnych parametrów metod:staticprivatevoid Print([CallerMemberName]string methodName =null, [CallerFilePath]string fileName =null) { Console.WriteLine(methodName); Console.WriteLine(fileName); } Wywołanie powyższej metody bez podania argumentów spowoduje przekazaniem nazwy metody, która wywołała Print oraz ścieżki pliku w którym znajduje się ta metoda:Print(); Jeśli Print został wywołany w metodzie ...

Tagi: atrybuty, C#
Dziel się z innymi:
Piotr Zieliński » C# 5.0: Atrybuty CallerMemberName, CallerFilePath oraz implementacja interfejsu INotifyPropertyChanged

Inne 1673 dni, 20 godzin, 39 minut temu pzielinski 191 rozwiń

Często widzę następujący kod. Oczywiście jeśli mamy pewność, że zawsze jest klucz nie ma z tym problemu. Czasami jednak takiej pewności nie ma i należy zwrócić NULL albo stworzyć dany element w słowniku. Wtedy zaczynają się problemy bo najczęściej jest to dokonywane za pomocą:

Tagi: C#, data-access
Dziel się z innymi:
Piotr Zieliński » Code review: bezpieczny dostęp do danych

Inne 1676 dni, 22 godziny, 47 minut temu pzielinski 192 rozwiń

Wczoraj mówiliśmy o tym, że funkcja powinna wykonywać jedną rzecz. Świetnym papierkiem lakmusowym jest nazwa funkcji. Jeśli można łatwo nadać jej nazwę i nie zawiera spójników typu i, lub, albo, oraz (lub ich odpowiedników w j. angielskim ) to jesteśmy na dobrej drodze. Funkcje, które wykonują kilka czynności są wprowadzają po prostu w błąd.A co z klasami? Single Responsibility Principle mówi, że klasa powinna mieć jedną odpowiedzialność, powinna mieć jeden powód do zmiany. Takie podejście powoduje, że...

Single Responsibility Principle

Inne 1678 dni, 12 godzin, 53 minuty temu arek 218 rozwiń

Pytanie brzmi: czy metody statyczne są wydajniejsze niż ich “zwykłe” odpowiedniki (instance methods)? Odpowiedź brzmi tak, ponieważ:Wywołanie jakiejkolwiek niestatycznej metody na klasie powoduje przekazanie parametru “this” – a to wymaga dodatkowego czasu.Same wywołanie jest bardziej czasochłonne dla zwykłych metod. W klasach statycznych nie ma dziedziczenia i wirtualnych metod. W niestatycznych metodach, kompilator musi dokonać kilka  dodatkowych operacji. Każda metoda niestatyczna jest wywoływana za p...

Tagi: C#, static
Dziel się z innymi:
Piotr Zieliński » Statyczne metody – wydajność

Inne 1679 dni, 15 godzin, 16 minut temu pzielinski 237 rozwiń

Niniejszy post jest 200-tną notatką na blogu.... Tak zacna i okrągła okazja zostaje niniejszym wykorzystana jako pierwszy z cyklu postów o podstawach programowania. Jednak nie mam zamiaru opisywać poszczególnych konstrukcji językowych ani też kolejnych bibliotek, nie będę również mówił o efektywnych algorytmach. Pisał będę o tym jak pisać aplikacje aby można było je długo i efektywnie rozwijać. Przejdę po zasadach SOLID (ale nie tylko tych 5 podstawowych), przejdę po TDD oraz kilku innych aspektach, któr...

Źródło: www.benedykt.net
Dziel się z innymi:
Podstawy programowania ale troche inaczej

Inne 1679 dni, 20 godzin, 54 minuty temu arek 186 rozwiń

O wzorcu projektowym singleton napisałem już kiedyś sporawy post. Klasy statyczne są prostym mechanizmem i mogą przypominać singleton. Tak jak w singleton, w klasach statycznych mamy do dyspozycji wyłącznie jedną instancję obiektu. Również nie ma możliwości ręcznego stworzenia instancji obiektów. Czym się zatem te twory różnią? 1. Singleton może implementować interfejs lub dziedziczyć po bazowej klasie. Jest to poważna zaleta w stosunku do klasy statycznej. Dzięki temu można np.:class XnaRenderer: IRend...

Tagi: C#
Dziel się z innymi:
Piotr Zieliński » Singleton a klasy statyczne

Inne 1681 dni, 22 godziny, 42 minuty temu pzielinski 234 rozwiń

Rozważmy następujący. Co jest największym problemem tego kodu? Wszystkie przykłady wymyślam na bieżąco dlatego oprócz głównego problemu, który chce zaprezentować w poście, istnieje kilka pobocznych.

Tagi: C#
Dziel się z innymi:
Piotr Zieliński » Code review: lista danych

Inne 1683 dni, 20 godzin, 35 minut temu pzielinski 273 rozwiń

W tym wpisie opiszę od A do Z jak zrobić grę kółko krzyżyk w postaci graficznej aplikacji. Użytkownik będzie miał możliwość gry z komputerem na różnych poziomach „inteligencji”. Całość opakujemy w ładne GUI, użytkownik będzie mógł sterować grą za pomocą myszki. Taki program może być dobrym ćwiczeniem dla początkujących koderów – których serdecznie zapraszam do lektury. GUI Na początek wstawię screeny napisanego przeze mnie programu. Ma to wam przybliżyć efekt, do którego będziemy dąż...

Źródło: kodzimy.net
Dziel się z innymi:
Gra Kółko i Krzyżyk w C# | kodzimy.net

Inne 1687 dni, 5 godzin, 56 minut temu kodzimy-net 840 rozwiń

W c# słowo kluczowe nie służy wyłącznie do alokacji zasobów. W klasach istnieje koncepcja wirtualnych metod, które deklaruje się za pomocą słowa virtual. Są to podstawy polimorfizmu więc w tym poście nie będę opisywał już słówka virtual a wyłącznie new, które używa się również w połączeniu z metodą. Metoda oznaczona new po prostu przykrywa metodę bazową. Najlepiej wyjaśnić to na przykładzie 2 klas:class Cat:Animal { publicvoid Print() { Console.WriteLine("Cat"); } } class Animal { pub...

Dziel się z innymi:
Piotr Zieliński » Method hiding w c# – kiedy używać?

Inne 1687 dni, 5 godzin, 56 minut temu pzielinski 253 rozwiń

Dzisiaj będzie krótko, bo zajęty jestem i więcej czytam niż piszę. Także taka krótka refleksja: Każdy wie, że koszta trzeba minimalizować. Uważam jednak, że istnieje pewna granica tych ograniczeń. Zastanówmy się pracujecie z jakimś narzędziem i jest spoko, robi to czego się od niego oczekuje. Ale moglibyście pracować z innym, za które trzeba zapłacić i nie są to jakieś groszowe sprawy. Kwota którą pracodawca płaci nam to też nie są grosze, a kwota którą otrzymuje za naszą pracę od docelowego klienta...

Dziel się z innymi:
jstadnicki: Cena / wydajność

Inne 1689 dni, 2 godziny, 12 minut temu http://pawlos.blogspot.com/ 221 rozwiń

Immutable objects to obiekty w inżynierii oprogramowania, które pozostają niezmienne po ich inicjalizacji. Wszystkie typy numeryczne, struktury oraz inne value type są immutable. Istnieją również klasy, które zachowują się jak typy niezmienne. Spróbujmy opisać kilka ważnych cech tych obiektów, które mają dla nas specjalne znaczenie:Obiekty niezmienne (immutable) są thread-safe – przystosowane są do dostępu współbieżnego. Skoro obiekt już skonstruowany nie może zostać zmodyfikowany to nie musimy się kompl...

Dziel się z innymi:
Piotr Zieliński » Obiekty niezmienne – immutable objects

Inne 1690 dni, 5 godzin, 42 minuty temu pzielinski 248 rozwiń

Programując, wcześniej czy później będziemy zmuszeni nauczyć się obsługi zdarzeń (events). Opisując program z laborek wyjaśnię jak korzystać ze zdarzeń według wzorca .NETu. Zdarzenia Początkujący programiści mogą nie wiedzieć czym są zdarzenia, ale zapewne ich używają. Bo czy nie zdarzyło się komuś wpisać fragmentu kodu do Form1Load(…) lub button1Click(…)? Podejrzewam, że takich osób jest niewiele. Tak jak w życiu codziennym, tak i w programowaniu są pewne zdarzenia na które musimy odpow...

Tagi: C#, events, zdarzenia
Źródło: kodzimy.net
Dziel się z innymi:
Zdarzenia w C# | kodzimy.net

Inne 1693 dni, 19 godzin, 22 minuty temu kodzimy-net 212 rozwiń

Tak jak napisałem w poprzednim poście: termin terminem, ale dzień w jedną czy w drugą stronę nikogo nie zbawi. A może mieć nieocenione efekty jeżeli chodzi o stosunek programistów do pracy, o zadowolenie z wykonywanych zadań, o zaangażowanie w projekt. Dzisiaj - obiecane "real life" przykłady. Mam takowe póki co trzy, ale w sumie jak na kwartał pracy daje to całkiem niezłą "średnią innowacyjności". Od razu pytanie: jak taka "średnia" wygląda u Was w firmie? I do rzeczy...

Dziel się z innymi:
Maciej Aniserowicz | Zawód-team leader. Mój najważniejszy obowiązek. Przykłady z życia.

Inne 1695 dni, 14 godzin, 11 minut temu http://pawlos.blogspot.com/ 244 rozwiń

Hej, wzięło mi się na przetestowanie rzeczywistej wydajności owej funkcji. Jeszcze produkcyjnie nie używałem jej więc postanowiłem użyć jej praktycznie w teście.

Dziel się z innymi:
Parallel.For testowanie « Netmajor's Tech Blog

Inne 1699 dni, 12 godzin, 23 minuty temu netmajor 123 rozwiń

1 2... 28 29 30 31 32 33... 77 78
Accenture
Szkolenia SecurITum
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 389,4)

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,54)

8

Damian (9 011,08)

9

danielplawgo (7 235,99)

10

arek (6 642,77)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 413,06)

15

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

16

CaMeL (2 954,87)

17

jedmac (2 739,34)

18

mnikolajuk (2 596,93)

19

lkurzyniec (2 466,02)

20

FutureProcessing (2 460,11)