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

Witam, co powiedziecie na taki kod?class Employee { public Employee() { Init(); } publicvirtualvoid Init() { } } class Manager : Employee { public Manager() { } publicoverridevoid Init() { } } Czy jest to dobry design? Jeśli ktoś programował w C++, na pewno nie zgodzi się na wywoływanie jakiejkolwiek metody wirtualnej w konstruktorze. W CPP zostałaby wywołana metoda Employee:Init zamiast Manager:Init ponieważ w momencie tworzenia Employee, obiekt Manager jes...

Tagi: C#
Dziel się z innymi:
Piotr Zieliński » Code review: Inicjalizacja obiektu, wywoływanie metody wirtualnej w konstruktorze

Inne 3383 dni, 16 godzin, 4 minuty temu pzielinski 111 źrodło rozwiń

Dziś znowu zaprezentuję mało znane słowo kluczowe w języku c# – stackalloc.  Najpierw jednak kilka słów przypomnienia na temat alokacji pamięci w .NET.  Generalnie mamy dwa typy obiektów: reference type oraz value type. Typy referencyjne to klasy, z kolei value type to Enum, Integer, Float itp. Klasy alokowane są na stercie (heap), która zarządzana jest przez Garbage Collector. Value Type deklarowane są z kolei na zwykłym stosie. Wyjątkiem jest  sytuacja w której value type jest składową reference type (...

Dziel się z innymi:
Piotr Zieliński » Słowo kluczowe stackalloc

Inne 3384 dni, 4 godziny, 41 minut temu pzielinski 183 źrodło rozwiń

Bądźmy szczerzy: dziś każdy chce być bogaty. Pieniądze czynią nas szczęśliwszymi, rozwiązują wiele problemów, spełniają marzenia. Tylko jak zdobyć na tyle dużo gotówki, aby do końca życia pić drinki na hawajskiej plaży? Jeśli jesteś programistą – miliony masz na wyciągnięcie dłoni. Wystarczy się trochę postarać...

Fones.Blog > Programisto, zostań milionerem!

Inne 3387 dni, 12 godzin, 24 minuty temu fones 423 źrodło rozwiń

autor: Trafiłem dzisiaj na ciekawy artykuł, którego autor testuje szybkość wykonania różnych metod mających na celu zwrócenie ilości linii zawartych w zmiennej typu string.

Dziel się z innymi:
[C#] Najszybsza metoda zliczania linii w stringu « Arvangen

Inne 3389 dni, 13 minut temu macko 376 źrodło rozwiń

Klasy są chyba najbardziej skomplikowanym działem języka C#, a z pewnością najbardziej rozbudowanym. Każda osoba starająca nauczyć się języka będzie musiała się z nimi zapoznać. Klasy w C#, tak jak w większości języków obiektowych, są schematami na podstawie których budowane są obiekty… …I to by było na tyle jeśli chodzi o teorię, czas na trochę kodu!

Źródło: kodzimy.net
Dziel się z innymi:
Klasy w C# | kodzimy.net

Inne 3391 dni, 2 godziny, 4 minuty temu kodzimy-net 211 źrodło rozwiń

Często zależy nam by pewien obiekt przechowywał w sobie wartości tylko z określonego zbioru. W takiej sytuacji z pomocą przyjdzie nam typ wyliczeniowy.

Źródło: kodzimy.net
Dziel się z innymi:
Typ wyliczeniowy Enum w C# | kodzimy.net

Inne 3391 dni, 2 godziny, 4 minuty temu kodzimy-net 264 źrodło rozwiń

Tworząc biznesową aplikacje webową dochodzimy do miejsca, gdy trzeba ją odpowiednio zabezpieczyć. Do tego służą oczywiście certyfikaty. Aby nasz serwis działał również po SSL należy poczynić parę kroków....

Tagi: Security, WCF
Dziel się z innymi:
Wcf i SSL « Netmajor's Tech Blog

Inne 3391 dni, 2 godziny, 4 minuty temu netmajor 138 źrodło rozwiń

W ostatnim poście obiecałem pokazać na przykładzie, że destruktory rzeczywiście mają negatywny wpływ na wydajność. Mamy prostą klasę:class MyClass { ~ MyClass() { // Jakis bezensowny kod np:for (int i =0; i <100*10000; i++) { var newinstance =new myclass(); } stopwatch.stop(); long duration = stopwatch.elapsedmilliseconds; przyjrzyjmy się teraz diagramowi przedstawiającemu rozkład obiektów względem generacji (clr profiler): na moim komputerze duration wyniósł 900. usuńmy destruk...

Dziel się z innymi:
Piotr Zieliński » Garbage Collector, część V– destruktory, wydajność, przykład

Inne 3391 dni, 2 godziny, 4 minuty temu pzielinski 100 źrodło rozwiń

W każdej aplikacji, wykorzystujacej bazę danych do przechowywania informacji, są elementy/tabele/struktury, których zawartość zmienia się niezmiernie rzadko. W związku z tym, zasadne wydaje się zaimplementowanie mechanizmu przechowywania tychże informacji w “bardziej stałym” obiekcie. Ograniczyło by to komunikację pomiędzy bazą danych i aplikacją, a tym samym zwiększyło wydajność aplikacji. Mechanizm taki można zaimplementować na wiele sposobów. Jednym z nich może być klasa typu Manager do przechowywania...

Źródło: kurzyniec.pl
Dziel się z innymi:
Łukasz Kurzyniec - Cache dla danych z bazy

Inne 3391 dni, 14 godzin, 14 minut temu lkurzyniec 157 źrodło rozwiń

Jeśli miał ktoś do czynienia np. z CPP z pewnością kojarzy pojęcie destruktora. Jest to metoda, wywoływana w momencie zwalniania obiektu z pamięci (przeciwieństwo konstruktora). Zarówno w CPP jak w C#, nazwa destruktora stanowi ‘~’ plus nazwa klasy.

Dziel się z innymi:
Garbage Collector, część IV – destruktor i problemy

Inne 3393 dni, 7 godzin, 25 minut temu pzielinski 162 źrodło rozwiń

autor: Czy korzystacie z refleksji w .NET? Czy zdarzyło wam się przeglądać/ustawiać właściwości klas poprzez refleksje? Czy korzystacie z atrybutów? Mnie często i równie często zdarzało mi się ponownie szukać kodu, który rozwiązałby mój problem, dlatego dla wygody poniżej zamieszczam różne funkcje rozszerzające, które realizują wspomniane wyżej zadania. (być może komuś jeszcze się one przydadzą).

Metody rozszerzające, Atrybuty i Refleksje w .NET

Inne 3393 dni, 10 godzin, 13 minut temu paduda 246 źrodło rozwiń

Funkcja walidujaca REGON w VisualBasic .NET : Napisałem dziś funkcje w Visual Basic .NET (bo nigdzie w necie jeszcze nie ma) walidującą nr REGON. Poniżej przedstawiam jej kod Public Function walidujRegon(ByVal numerREGON As String) Dim cyfraKontrolna As Integer Dim dlugoscRegon As Integer = Len(numerREGON) 'wagi regonów 'regon7 = 2,3,4,5,6,7 'regon9 = 8,9,2,3,4,5,6,7 'regon14 = 2,4,8,5,0,9,7,3,6,1,2,4,8 If (dlugoscRegon 14) Then If (dlugoscRegon 9) Then If (dlug...

Źródło: blog.nostitz.eu
Dziel się z innymi:
Mateusz Nostitz-Jackowski » Funkcja walidujaca REGON w VisualBasic .NET

Inne 3396 dni, 23 godziny, 53 minuty temu nosek 126 źrodło rozwiń

W poprzednim poście przedstawiłem zasadę działania generacji w GC.  Dowiedzieliśmy się, że zwalnianie zasobów z generacji 0 jest bardzo szybkie z kolei z GEN 2 wolne. Healthy GC to reguła określająca optymalny (zdrowy) stan GC: gen0 : gen1 : gen2 => 100 : 10 : 1 W Internecie można również znaleźć nieco inne wartości ale ogólna zasada jest taka sama: GEN0 powinna zawierać dużo więcej obiektów niż GEN2. Jeśli obiekty nie są zwalniane, wtedy promowane są do generacji pierwszej i drugiej. Z poprzedniego po...

Dziel się z innymi:
Piotr Zieliński » Garbage Collector, część III–healthy GC

Inne 3397 dni, 30 minut temu pzielinski 159 źrodło rozwiń

Aby pisać kod, który jest wydajny i optymalny należy dobrze zrozumieć jak działa Garbage Collector (GC). W dzisiejszym poście przedstawię ogólne zasady działania GC na przykładzie algorytmu mark and sweep. Zaznaczam, że implementacja w .NET różni się i jest dużo bardziej wyrafinowana – ale o tym w następnych postach. Chcę najpierw przedstawić algorytm mark and sweep ponieważ da to czytelnikowi ogólny obraz zagadnienia związanego ze zwalnianiem pamięci w językach zarządzanych. Garbage Collector oczywiści...

Dziel się z innymi:
Piotr Zieliński » Garbage Collector – część I (algorytm mark and sweep).

Inne 3408 dni, 12 godzin, 40 minut temu pzielinski 327 źrodło rozwiń

Co byście powiedzieli na taki kod?publicclass Person { publicstring FirstName; publicstring LastName; publicstring GetFullName() { returnstring.Format("{0} {1}", FirstName, LastName); } } Na pierwszy rzut oka może nic poważnego. Jednak jeśli chcemy pisać kod zgodny z praktykami C#, powinniśmy zwrócić uwagę na następujące kwestie:Enkapsulacja, FirstName,LastName powinni być ukryte i ewentualnie wyeksponowane za pomocą setterow\getterów.GetFullName jest dobrym sposobem dla Javy (a w...

Dziel się z innymi:
Piotr Zieliński » Code Review: pola w C#

Inne 3410 dni, 7 godzin, 57 minut temu pzielinski 381 źrodło rozwiń

Rozważmy następujący kod:IEnumerable

Tagi: Code review, Linq
Dziel się z innymi:
Piotr Zieliński » Code review: Pułapka z LINQ

Inne 3419 dni, 4 godziny, 53 minuty temu pzielinski 451 źrodło rozwiń

W postach oznaczonych “Code review” zamierzam przedstawiam dobre i złe praktyki pisania kodu. Posty przeważnie będą składały się z fragmentu kodu i opisu co jest w nim źle. Dziś spójrzmy na:StreamReader streamReader =new StreamReader(File.Open(path, FileMode.Open)); string header = streamReader.ReadLine(); string dataPoints = streamReader.ReadLine(); string[] dataPointArray = dataPoints.Split(newchar[]{';’});streamReader.Close(); Co w tym jest jest nie tak? W przypadku gdy np. ReadLine wyrzuci wyjątek, ...

Tagi: Code review
Dziel się z innymi:
Piotr Zieliński » Code review: słowo kluczowe using

Inne 3423 dni, 1 godzinę, 49 minut temu pzielinski 408 źrodło rozwiń

Co raz więcej programistów interesują się językiem Ruby. Jest to wysokopoziomowy język dynamiczny. Dużą rolę odegrał framework Ruby on Rails, dzięki czemu język nabył swoją popularność. Ten artykuł pomoże początkującym (i nie tylko) programistom zapoznać się z tym językiem, który przy napisaniu stosownie małego kawałku kodu pozwala na zrealizowanie prostej funkcjonalności. W tym artykule dowiesz się o :instalacji środowiska, implementacji prostej aplikacji.

Tagi: ruby
Dziel się z innymi:
Ruby on Rails pod Windows

Inne 3424 dni, 2 godziny, 22 minuty temu dit2006 149 źrodło rozwiń

Czy na pewno code review to strata czasu? Cóż może być nudniejsze i bardziej kosztowne niż przeglądanie cudzego kodu źródłowego? Chyba już tylko poprawnianie w nim błędów. Jeszcze kilka lat temu koncepcja przeglądania mojego kodu przez kolegów z zespołu była dla mnie totalną abstrakcją. Aczkolwiek, z czasem zrozumiałem, że w tym szaleństwie jest metoda. W kilku punktach chciałbym przedstawić benefity, które może wprowadzić Code Review do Twojego ekosystemu projektowego drogi Czytelniku. Edukacja M...

Dziel się z innymi:
Code review, lubię to!

Inne 3433 dni, 16 godzin, 38 minut temu paduda 338 źrodło rozwiń

Klasa Barrier umożliwia synchronizacje kilku wątków. Mechanizm bardzo znany np. z Ady pozwala dopuścić wykonanie kodu wyłącznie jeśli inne wątki na to się zgadzają. Załóżmy, że mamy 4 wątki robiące równoległe jakieś obliczenia. Po ich zakończeniu chcemy scalić wynik ale musimy poczekać aż wszystkie zadania zostaną ukończone. W C# 4.0 można wykorzystać tzw. taski, ale w tym artykule skupimy się na Barrier, która służy to dużo bardziej skomplikowanych zadań. Przypuśćmy, że nasz algorytm składa się z kilku...

Tagi: Barrier
Dziel się z innymi:
Piotr Zieliński  » Rendezvous w C#–klasa Barrier

Inne 3434 dni, 15 godzin, 29 minut temu pzielinski 202 źrodło rozwiń

1 2... 68 69 70 71 72 73... 115 116

Najaktywniejsi

1
(32 895,6)
2
(32 816,53)
3
(27 178,29)
4
(21 178,88)
5
(20 336,33)
6
(13 018,14)
7
(10 531,65)
8
(9 775,28)
9
(8 866,31)
10
(6 837,96)
11
(6 214,22)
12
(5 393,84)
13
(4 157,41)
14
(4 026,73)
15
(3 908,07)
16
(3 599,64)
17
(3 448,35)
18
(3 318,39)
19
(3 224,66)
20
(3 221,45)