O projekcie Fody po raz pierwszy, usłyszałem dość dawno temu, ale dopiero ostatnia prezentacja Tomka na Wroc.NET uświadomiła mi jak fajny jest to projekt. Ja sam będę miał przyjemność prezentować Fody’ego w nadchodzącym tygodniu (na spotkaniu KGD.NET) a dzisiaj wstęp na blogu. Czym jest fody? Krótko mówiąc to framework, który umożliwia odpalanie własnych tkaczy modyfikujących kod już po kompilacji. Dzięki temu cały tzw. pluming code, możemy wyciągnąć z naszego kodu źródłowego do osobnych modułów.
Strona głównaUżytkownik
http://krzysztofmorcinek.wordpress.com/ | użytkownik
Kilka lat temu robiłem coś takiego za pomocą ILMerge. Wymagało to własnego Post build event, etc. Teraz jest rozwiązanie out of the box - Costura.Fody. Wystarczy ściągnąć nugetem.
CultureInfo zawiera informacje regionalne, przydatne, jeśli chcemy dostosować naszą aplikację do różnym krajów. Używamy tej klasy m.in. do określenia formatowania liczb, dat czy po prostu języka w jakim wyświetlamy tekst. Jeśli korzystamy z domyślnych ustawień regionalnych, wtedy poniższy kod wyświetli prawidłową wartość...
Ostatnio Łukasz Gąsior opublikował książkę o ReSharperze, więc w ramach rozruszania ostatnio martwego bloga, w ramach promocji książki naszego kolegi w ramach popularyzacji wiedzy o ReSharperze oraz w ramach eksperymentu z Rafflecopter do zgarnięcia jest ebook “ReSharper Essentials”. Zapraszam
Od dawna jedną z rzeczy, którą chciałem zrobić było napisanie książki. I w końcu się udało :). Wczoraj została oficjalnie wydana moja pierwsza książka – ReSharper Essentials.
Od pierwszego CTP Roslyna z niecierpliwością czekam na release. W telegraficznym skrócie roslyn to nowa generacja kompilatora. Takiego kompilatora gdzie każdy element jest dostępny przez api/serwis. To otwiera takie możliwości jak budowa własnych narzędzi do refaktoryzacji czy analizy kodu, tworzenie nowych słów kluczowych i nie wiadomo co jeszcze. Przy okazji kompilator jest przepisywany tak aby był szybszy od obecnych. Generalnie Roslyn = mnóstwo gorących i ciekawych rzeczy. Dzisiaj, a w...
Dziś wpadł mi link http://damieng.com/blog/2013/12/09/probable-c-6-0-features-illustrated przekazany przez kolegę. Mimo, że na oficjalnych blogach nic nie znalazłem, o tyle natrafiłem na streszczenie jednej z rozmów z BUILD 2013: http://wesnerm.blogs.com/net_undocumented/2013/07/anders-on-c-60-at-build-2013.html. Jest to odpowiedź na wątpliwości na temat przyszłości C#, .NET i “Roslyn”. Jak wszystko dobrze pójdzie to .NET 5 będzie hulać na “Roslyn”, a C# nabierze nowych właści...
Tytuł tego posta określa wg mnie ten kawałek viżuala: Naszukałem się swego czasu baaardzo sporo, aby odnaleźć sposób na otwarcie tego z klawiatury, głównie dla komendy “open containing folder”. I się nie udało. Znalazłem nawet dedykowane temu problemowi pytanie na SO pozostające bez poprawnej odpowiedzi, więc uznałem, że się nie da. Ale ostatnio całkowicie niechcący… udało się.
There are times when you find dependencies of some legacy code in a method that is never used. I personally always have a feeling that one day I need to find a way to search for all these unused methods and just get rid of them. Here I want to show you how to do it with Resharper.
Dość długo siedzę w IT. Zawsze od strony kodu i konkretu. Długo byłem programistą i wydaje mi się, że chociaż częściowo już rozumiem, co jest ważne. Co jest ważne, żeby stać się dobrym programistą. Jeśli chcesz poczytać to powiem w krótkich żołnierskich słowach co sprawiło, że nauczyłem się efektywnie tworzyć oprogramowanie. Oto sekret ;)
Hight Frequency Trading to sport niesamowicie wymagający, z jednej strony trzeba dobrej głowy do kodowania a z drugiej jeszcze większej do matematyki bo z ekonomią to już nie ma wiele wspólnego. Tak czy inaczej, świetna lektura na niedziele. Zapraszam do czytania, jeśli chcesz się dowiedzieć dlaczego do HFT trzeba wykupić miejsce w jednym z 4-5 datacenter, dlaczego mają rolki światłowodów i dlaczego trzeba budować własne switch-e na FPGA http://queue.acm.org/detail.cfm?id=2536492 Źró...
Świetny wykład o UTF-8. Jak powstał i jak jest skonstruowany. Ogląda się po prostu świetnie. Akurat na poniedziałkowe rozruszanie.
It is all about people and cooperation! April 25-26 – dotNetConf took place, online conference for .NET developers, organized by Scott Hanselman and Javier Lozano April 27 – I text Pawel Sawicz, that we can organize something similar with Polish speakers and name it dotNetConfPL, he said: “it’s a good idea”. (motivation++) April 28 – Pawel told me that Michal Franc is also interested and we created google doc to write down ideas and todos. ...
Przeładowania metod to podstawy języka. Niestety, nieumiejętnie stosowane, mogą przystworzyć problemów nawet zaawansowanym programistom. Z tego względu, uważam, że należy po prostu unikać tych przeładować, które są zbyt trudne w zrozumieniu – powodują niepotrzebne zamieszanie. Zacznijmy od klasycznego przykładu, który jest zrozumiały dla każdego
Sztuka programowania 4090 dni, 14 minut temu 241 źrodło rozwiń
Opublikowano Wczoraj wyszła nowa wersja NDepend-a, jeszcze ciepła, cieplutka. 5-tka ma dwie rewolucyjne rzeczy, pierwsza to nowe UI, ładniejsze i bardziej “nowoczesne”, druga – i to jest dla mnie killer to dashboard. Zatem po kolej. Mamy nowe logo, które wygląda całkiem całkiem jak na moje średnio wprawne oko. Mamy wygląd czyli nowe menu, graficzki i inne takie. Wprawdzie nie jest to to co daje Visual Studio, to jednak Patric (autor tego cudownego narzędzia) mówił, że będą dalej nad tym pracować, więc ...
Chcemy zaznaczyć, że klasa możemy być użyta w jakiś sposób, jednocześnie nie definiując żadnych metod, które klasa miałaby implementować. Może się wydawać, że takie coś nie powinno mieć miejsca, bo zawsze chcemy wykonać logikę która została zaimplementowana dzięki kontraktowi zwanemu interfejsem. Przykładami, że jednak czasem tak bywa są INamingContainer w ASP.NET oraz Serializable w Javie.
Sztuka programowania 4090 dni, 14 minut temu 241 źrodło rozwiń
Niedawno napotkałem w Gicie dziwny problem… tak naprawdę jeden z dwóch poważnych, które utrzymywały się przez długi czas (drugi to line-endings które do dziś potrafią mnie w zad uszczypnąć). Mianowicie mój kochany, uwielbiany Git pokazywał mi podczas merge konflikty w każdym jednym pliku, niezależnie od tego czy coś było w nim faktycznie zmieniane czy też nie. Po otwarciu mergetool okazywało się, że nawet jeśli jakieś zmiany nastąp...
Takie stwierdzenie nasunęło mi się przedwczoraj podczas przeglądania dotNETomaiank.pl. Chodzi mi dokładnie o to, że nikt nie podbija. Zaglądnąłem na główną, a tam z góry na dół same jedynki i jedna dwójka (na 20 wpisów). Po co się starać fajny post napisać, jak tak naprawdę i tak wszystko jest płaskie i każdy kliknie. Od tego jest .NET Blogs PL, gdzie po prostu serwuje się aktualne posty z blogów, które chcą się tam ...
Routing będzie manipulował naszym adresem (pasek adresu będzie te zmiany odzwierciedlał), będzie zmieniał naszą historię przeglądania. Dzięki temu przecisk “back” będzie działał bez przeładowywania strony. Zmiana adres będzie tylko po stronie clienta, czyli po znaku ‘#’. Oznacza to że takie zmiany adresu nie będą wysyłane do servera.
Czasami nasz kod nie działa i chcielibyśmy sprawdzić jak działa dokładnie funkcja dostarczona przez .NET Framework. Oczywiście domyślnie nie możemy tego zrobić – po kliknięciu Step Into, przejdziemy po prostu do kolejnej metody. Poniższy opis dotyczy Visual Studio 2008, na którym testowałem i faktycznie działa to. Niestety wciąż mamy problemy z VS 2012 – w następnym wpisie postaram się dać jakiś update odnośnie 2012. W VS mamy coś takiego jak source server oraz możemy również ściągnąć symbols files dla...