Strona głównaUżytkownik

Paweł Łukasik | użytkownik

Paweł Łukasik
Paweł Łukasik
32 895,6
1645 dni, 16 godzin, 33 minuty temu
27 stycznia, 2009
dotnetomaniak.pl

Może słyszeliście o takim ptaszku Fody. Ostatnim czasem ptaszek ten podbił moje serce. Korzystam z jego usług tak często jak się tylko da. Ogólnie muszę podziękować Pawłowi Łukasikowi za prezentacje na KGD.NET, która otworzyła mi oczy PropertyChanged.Fody To chyba mój ulubiony pakiet, ale zanim go opiszę muszę zrobić drobne wprowadzenie. Od początku mojej przygody z WPFem ( i ogólnie XAMLem) strasznie żmudnym procesem było bindowanie pomiędzy DataModelem a widokiem (niech zasłona milczenia zakryje fak...

Tagi: C#, fody, WPF
Dziel się z innymi:
Fody ciekawa ptaszyna – część 1 | Wojtek Pitek about dev

Windows 3784 dni, 40 minut temu wopi 292 źrodło rozwiń

Ponieważ popełniłem kiedyś coś co nazwałem Fody ciekawa ptaszyna – część 1 to w związku z tym należało zrobić coś co nazywa się Fody cz2 co też obecnie czynie. Fody ma wiele pakietów, ale opiszę teraz tylko te wybrane z których kiedyś korzystałem (lub widziałem sens ich zastosowania). Tworząc aplikacje okienkowe musimy również przemyśleć sposób ich dystrybucji. Należy go dostosować do poziomu zaawansowania klienta oraz do nakładów pracy związanych z danym sposobem. Pisząc dużą aplikację wymaga...

Tagi: C#, fody
Dziel się z innymi:
Fody ciekawa ptaszyna – część 2 | Wojtek Pitek about dev

Windows 3771 dni, 19 godzin, 23 minuty temu wopi 162 źrodło rozwiń

Pętle i warunki, naturalnie są z jednym z podstawowych elementów każdego programu. Języki wysokiego poziomu umożliwiają realizację tego za pomocą słów If, for, foreach,while. W językach niskiego poziomu, takich jak IL Assembly, wszystkie powyższe czynności wykonuje się za pomocą skoków warunkowych i bezwarunkowych. Działają one analogicznie do słowa kluczowego GOTO. W IL, najprostsza instrukcja skoku to BR:br jump1 // jakas logika tutajjump1: //... br nie zawiera żadnego warunku. Można ją porównać do...

Dziel się z innymi:
Piotr Zieliński » IL Assembly: instrukcje warunkowe i pętle

Inne 3777 dni, 16 godzin, 11 minut temu Paweł Łukasik 113 źrodło rozwiń

W poprzednim poście opisałem jak działa stos w IL. Wiemy, że jest on kluczowy dla wszelkich operacji. Jedną z ważniejszych instrukcji, wprowadzonych w tamtym poście jest ldc.i4. Służy ona do załadowania liczby 4 bajtowej na stos. Oprócz niej, istnieje wiele innych instrukcji, które pełnią analogiczną rolę. Rozważmy następujący kod c#: float floatNumber =533.3f; double doubleNumber =5454.14; string text ="text"; int[] array =newint[] {21, 3}; Console.WriteLine(floatNumber); Console.WriteLine(doubl...

Tagi: IL
Dziel się z innymi:
Piotr Zieliński » IL assembly: Załadowanie zmiennych lokalnych + operatory

Inne 3784 dni, 40 minut temu Paweł Łukasik 102 źrodło rozwiń

Bardzo często na blogu poruszam tematykę c# internals. Bez nich, praktycznie niemożliwe jest pisanie optymalnego kodu. Jeśli ktoś np. nie wie jak async\await jest zaimplementowany wewnętrznie, bardzo łatwo może popełnić błędy podczas pisania kodu c#. Niedawno ktoś zasugerował mi, abym wyjaśnił bardziej IL. Bardzo często wklejam fragmentu kodu z Reflector’ora i nie wyjaśniam szczegółów. Z tego względu, przez kilka kolejnych wpisów zajmiemy się CLR internals oraz IL. Na początek podstawowe pytanie, co to...

Dziel się z innymi:
Piotr Zieliński » Wprowadzenie do evaluation stack

Inne 3784 dni, 40 minut temu Paweł Łukasik 137 źrodło rozwiń

Istnieje wiele framework’ow ułatwiających izolację danych w testach jednostkowych. Nie opisuje ich na blogu, bo nie wiele od siebie różnią się . Microsoft Fakes jednak ma kilka ciekawych rzeczy i dlatego nim dzisiaj zajmiemy się. Niestety jest dostępny on wyłącznie w wersji Visual Studio Ultimate. Pierwszą wyróżniającą go cechą jest możliwość izolacji metod statycznych, które oczywiście nie mogą być w łatwy sposób mock’owane.  Rozważmy klasyczny przykład:publicclass Person { publicvoid Method() ...

Dziel się z innymi:
Piotr Zieliński » Microsoft Fakes

Inne 3784 dni, 40 minut temu Paweł Łukasik 181 źrodło rozwiń

Historia zaczyna się od prostego fragmentu kodu pokazanego poniżej. Kod ten to fragment walidatora, ktory ma za zadanie określić, czy dane są prawidłowe. Jeśli nie, to zmienna isValid powinna zostać ustawiona na false. var isValid = true; if (condition_1) isValid = false; if (condition_2) isValid = false; Kod ten działał do momentu, kiedy wprowadzono do niego małą zmianę pokazaną poniżej. Było to pewne uszczegółowienie logiki walidacji danych wejściowych. var isValid= true; i...

Dziel się z innymi:
Michał Komorowski: Czy użycie if zamiast else if ma znaczenie?

Extension is available for other Visual Studio versions: GoToTest macro for VisualStudio 2008NavigateToTest VS2010 extensionNavigateToTest VS2012 extensionNavigateToTest VS2013 extension You can download the extension here: NavigateToTest Visual Studio 2013 extension Here’s the latest version that supports Visual Studio 2013. Extension is convention based. It matches ClassName file with ClassNameTest or ClassNameTests and vice-versa, so you can easily navigate to the test file and back. Here are so...

[EN] NavigateToTest VS2013 extension | Blog | Limilabs

Narzędzia 3792 dni, 20 godzin, 33 minuty temu Paweł Łukasik 69 źrodło rozwiń

Wiele razy pisałem już o słowach async\await i z pewnością ułatwiają one życie. Dla przypomnienia rozważmy kod:private async void DownloadAndSortAsync() { int[] allNumbers = await DownloadNumbersAsync(); int[] sortedNumbers = await SortNumbersAsync(allNumbers); MessageBox.Show(string.Join(“,”,sortedNumbers)); } private Task

Tagi: await
Dziel się z innymi:
Piotr Zieliński » Własna implementacja await’era

Sztuka programowania 3792 dni, 20 godzin, 33 minuty temu Paweł Łukasik 194 źrodło rozwiń

W Visual Studio istnieje pewna opcja, która umożliwia sprawdzenie wartości obiektu, do którego nie ma się jawnej referencji. Spójrzmy na następujący przykład:class Program { staticvoid Main(string[] args) { DoSomething(); } privatestaticvoid DoSomething() { var person=new Person(); person.FirstName ="Piotr"; person.LastName ="Zielinski"; } } Jeśli ustawimy breakpoint w metodzie DoSomething naturalnie zobaczymy wartość obiektu person w oknie watch:...

Dziel się z innymi:
Piotr Zieliński » Debugowanie obiektów bez jawnej referencji

Narzędzia 3792 dni, 20 godzin, 33 minuty temu Paweł Łukasik 175 źrodło rozwiń

W ostatnim poście było o SpecsFor, jako alternatywy dla SpecsFlow. Pokazane przykłady były ogólne i nie dotyczyły konkretnej technologii. Z BDD bardzo często korzysta się w celu przetestowania UI. W końcu wpisywane scenariusze, odzwierciedlają typową interakcję użytkownika z aplikacją. Osoby nietechniczne zwykle definiują wymagania z punktu widzenia użytkownika a nie wewnętrznej infrastruktury, która oczywiście nie jest im znana w szczegółach. Dla aplikacji ASP.NET MVC powstał SpecsFor MVC. Dobra wiadom...

Tagi: bdd, specsfor
Dziel się z innymi:
Piotr Zieliński » SpecsFor MVC

Sztuka programowania 3796 dni, 14 godzin, 54 minuty temu Paweł Łukasik 120 źrodło rozwiń

Po bardzo gorącym okresie ostatniego miesiąca i totalnym braku czasu, przyszedł czas na nowy, mogący budzić kontrowersje, niechęć do autora itp. post :) Język angielski. Jakże świetnie znany...

Język angielski wśród developerów | maciejjędrzejewski

Inne 3800 dni, 10 godzin, 30 minut temu jedmac 583 źrodło rozwiń

Recently I step upon an issue of compiling a project using Mono. Mono itself comes with nice tool called xbuild which is a msbuild brother in Mono world. Xbuild can be used to compile a project from command line. I wanted to compile my project targeting Mono under Visual Studio 2012. Unfortunately, targeting for Mono (profile=Mono) does not exists in Visual Studio. Following instructions will add new profile and then new target – Mono – will be available.Downloa...

Źródło: blog.klimczyk.pl
Dziel się z innymi:
Mono profile in Visual Studio 2012 | IT Weblog

Narzędzia 3800 dni, 10 godzin, 30 minut temu Paweł Łukasik 74 źrodło rozwiń

Przez kilka ostatnich wpisów poruszałem temat BDD, a konkretniej jednego z framework’ow – SpecFlow. Dzisiaj o kolejnym rozwiązaniu, które jest przydatne, gdy programiści definiują specyfikacje. SpecsFor można zainstalować standardowo z NuGet: Załóżmy, że będziemy rozpatrywać następujący kod...

Tagi: bdd, specsfor
Dziel się z innymi:
Piotr Zieliński » SpecsFor–kolejny framework do BDD

Sztuka programowania 3800 dni, 10 godzin, 30 minut temu Paweł Łukasik 162 źrodło rozwiń

W następnym poście mam zamiar napisać o SpecsFor, kolejnym framework’u ułatwiającym pisanie testów BDD. Najpierw jednak chciałbym przedstawić expectedObjects oraz Should Assertion Library, które są składowymi SpecsFlow. Wszystkie z wymienionych bibliotek można zainstalować przez NuGet. Should Assertion Library to mała biblioteka ułatwiająca asercje danych. W standardowych unit testach zwykle piszemy coś w stylu:Assert.IsTrue(value); Assert.IsNull(value); Assert.AreEqual(actualValue,expectedValue) Jes...

Dziel się z innymi:
Piotr Zieliński » Testy jednostkowe: expectedObjects oraz Should Assertion Library

Narzędzia 3800 dni, 10 godzin, 30 minut temu Paweł Łukasik 92 źrodło rozwiń

Scenka1 Facet idzie sobie przez las i napotyka gościa wycinającego siekierą choinki - Panie co pan robisz! Dlaczego dewastujesz las? Nie dewastuję lasu tylko zaciągam dług leśny. Będą święta, na choince powieszę bombki to rodzina będzie zadowolona. No a później posadzę nowe choinki w to miejsce. A kiedy to zrobisz? no za trzy sprinty... Scenka2 Facet idzie sobie przez osiedle i spotyka gościa, który wywala gruz do piaskownicy - Dlaczego dewastujesz plac zabaw? Nie dewastuję placu zab...

Paweł Włodarski - ludzka twarz IT: Tragedia wspólnego kodu

Sztuka programowania 3803 dni, 11 godzin, 15 minut temu Paweł Łukasik 422 źrodło rozwiń

JSON.NET to darmowa i naprawdę prosta w użyciu biblioteka, która umożliwia parsowanie JSON z poziomu c#. Instalujemy ją oczywiście z NuGet: Następnie API jest na tyle proste, że wystarczy tak naprawdę nam tylko IntelliSense:var person =new Person() {FirstName ="Piotr", LastName ="Zielinski"}; string content = JsonConvert.SerializeObject(person); Console.WriteLine(content); Efektem będzie konwersja obiektu c# do JSON czyli: {"FirstName":"Piotr","LastName":"Zielinski"} Podobnie można dokonać deseri...

Tagi: JSON, Json.NET
Dziel się z innymi:
Piotr Zieliński » Przydatna biblioteka: JSON.NET

Inne 3806 dni, 15 godzin, 29 minut temu psz750 281 źrodło rozwiń

Mamy sezon ogórkowy, słoneczko przygrzewa, klimatyzacja ledwo dyszy z każdej dyszy, zarząd i kadra średniego szczebla udała się na zasłużony odpoczynek i tylko pasjonaci wolą spędzać ten czas w pracy. Ci pasjonaci to my. W tych ekstremalnych okolicznościach przyrody ...

Tagi: humor
Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Za stres, absurdy, bezkres mordęgi słusznie należy się pieniądz tęgi

Inne 3812 dni, 30 minut temu PaSkol 375 źrodło rozwiń

Ostatnio dodawałem prostą funkcję do pewnej aplikacji webowej: umożliwienie ściągnięcia pliku z dysku. Były to pliki Excela i znajdowały się w katalogu ~/App_Data/reports. Siłą rzeczy takie pliki nie mają ID. Mają nazwę. I po nazwie właśnie je się ściągało. Kod otwierający plik do ściągnięcia można by napisać tak: public Stream OpenFile(string fileName) { string reportsdir = HttpContext.Current.Server.MapPath("~/AppData/reports...

Dziel się z innymi:
Jak nie udostępniać plików do ściągnięcia | Maciej Aniserowicz o programowaniu

Web 3813 dni, 16 godzin, 9 minut temu psz750 341 źrodło rozwiń

Obiekty Hub mają z góry określony czas życia. Ten sam obiekt nie jest współdzielony pomiędzy różne wywołania. Jeśli klient wywołuje metodę, instancja huba jest tworzona od nowa. Oznacza to, że nie możemy przechować stanu między zapytaniami w następujący sposób

Tagi: signal r, SignalR
Dziel się z innymi:
Piotr Zieliński » SignalR: Przekazywanie stanu

Web 3818 dni, 1 godzinę, 15 minut temu Paweł Łukasik 155 źrodło rozwiń

1 2... 25 26 27 28 29 30... 70 71

Najaktywniejsi w tym miesiącu