Kilka dni temu opisywałem jak w VS 2008 debugować kod .NET Framework i obiecywałem sprostowanie do wersji 2012. Z tego co udało mi się dowiedzieć, temat nie jest zbyt jasny ale wygląda na to, że: 1. W niektórych wersjach VS2010 działało to ale potem znów zostało popsute. 2. W VS2012 funkcja nie działa. Jeśli komuś udało się to uruchomić pod VS 2012, proszę o komentarz pod wpisem. Link do Microsoft Connect, opisujący bug: http://connect.microsoft.com/VisualStudio/feedback/details/697947/net-framewo...
Strona głównaUżytkownik
http://krzysztofmorcinek.wordpress.com/ | użytkownik
Odpływasz myślami, całe skupienie jest na kostce. Ruszasz palcami i dłońmi, unikniesz kilku chorób zawodowych. Mieści się w pomodoro (patrz niżej). Ćwiczysz umysł, widzenie w 3 wymiarach rozwija. Grywalizacja – chyba każdy chce układać najszybciej.
TL;DR Zobacz filmik "JavaScript: The Good Parts". Jednej rzeczy nigdy za wiele – pisania jak bardzo JavaScript jest “inny”. JavaScript to nie C# ! Tylko składnia jest podobna. To nie wina JS, że działa inaczej niż znany każdemu model obiektowy, to wina programisty, który nie chce wyjść poza strefę komfortu (języki, które już zna).
Sometimes there is a need to generate a document (HTML report, e-mail etc.) from a given template. It’s simple when it comes to just replace some tokens, but in case of more complicated operations (dealing with collections, conditions, loops) it’s better to use advanced template engine. Fortunately there is NVelocity that can be used as a standalone tool that gives pretty much flexibility.
O kontraktach już kiedyś pisałem tutaj. Dziś z kolei zaprezentuję bardzo złą praktyką, czasami niestety jeszcze spotykaną tzn.:interface IDataFilter { IEnumerable
Sztuka programowania 4186 dni, 12 godzin, 43 minuty temu 224 źrodło rozwiń
RandomData, to biblioteka pozwalająca na generowanie mockupowych danych. Z pomocą atrybutów w c# wypełnia obiekt losowymi wartościami. Zachęcam do pobierania i testowania.
Currently a huge number of projects is driven by TDD. (...) In average we spend more than 50% of our time developing front-end side of the app (JavaScript etc) but having in mind, that TDD is only applicable to back-end code. As a ReSharper user I’ll show how easy it is to set up a proper solution with another level of unit testing. (..) Let’s pick out the ColorCalculator as the target. This is a “class” that is responsible for calculating color values between RGB and HEX.
Załóżmy dla przykładu taki o to kod: public class Point { public int X; public int Y; } class Program { public Point Position { get; set; } public void SetPosition(int x, int y) { Position.X = x; Position.Y = y; } static void Main(string[] args) { var p = new Program(); p.SetPosition(10, 10); Console.ReadLine(); } }
Dziś będzie opowieść… Co sądzą ludzie, którzy nie testują? Ja, dla przykładu, wierzę w Unit Testy. Kontrastowałem (podpytywałem) to ze stanowiskiem wielu osób. Niektóre osoby odpowiadały, że to nie działa. Następnie podały powody dlaczego tak uważają i od tych powodów chciałbym zacząć...
Sztuka programowania 4385 dni, 8 godzin, 59 minut temu 167 źrodło rozwiń
Rzezanie w czystym xml’u nie jest raczej przyjemne. Używnia XmlNode zamiast stringów nie jest wielkim pocieszem. Nie tędy droga. Dużo prościej stworzyć sobie obiekty które następnie będziemy serializować (deserializować) do XMLa.
Sztuka programowania 4391 dni, 22 godziny, 59 minut temu 106 źrodło rozwiń
W teorii są 3 rodzaje kontraktów. Podejdę wg mnie praktycznie i opowiem głównie o pierwszym (Requires), z pozostałych dwóch rzadko kto korzysta. Requires używa się do sprawdzania argumentów przekazanych do metody.
Sztuka programowania 4397 dni, 18 godzin, 42 minuty temu 118 źrodło rozwiń
Binduj ValueMember i DisplayMember dla ComboBoxa (DropDownList) używając refleksji zamiast błędogennych stringów.
Sztuka programowania 4397 dni, 21 godzin, 48 minut temu 97 źrodło rozwiń
Dziś w poście o kolejnej regule pisania dobrego kodu. Prawo Demeter mówi o relacjach między klasami a konkretnie o tym z jakimi obiektami dana klasa może komunikować się. W skrócie, prawo nakazuje odwoływanie się tylko do “bliskich przyjaciół” czyli obiektów, które są bardzo znane danemu obiektowi. Brzmi to trochę abstrakcyjnie dlatego przenieśmy to na świat programowania obiektowego. Każda metoda obiektu A może wywoływać wyłącznie metody następujących obiektów: 1. obiektów przekazanych jako parametr w...
Sztuka programowania 4426 dni, 1 godzinę, 45 minut temu 179 źrodło rozwiń
Jak często zdarza się, że szukamy jakiejś opcji w IDE i nie możemy znaleźć miejsca w którym się ona znajduje? IDE jakim jest VS przez lata ewolucji rozrosło się do tak dużych rozmiarów, że znalezienie odpowiedniej funkcjonalności może zająć całkiem sporo czasu. Microsoft zauważył ten problem i w nowym VS 2012 wprowadził Quick Launch...
Odwołam się do wpisu Tworzenie własnej ConfigurationSection. W tamtym podejściu tylko czytałem z configuracji. Teraz chcę pokazać że do konfiguracji można też zapisywać z poziomu kodu.
Architektura 4427 dni, 23 godziny, 29 minut temu 61 źrodło rozwiń
Rozpoznaję taki jakby pattern przeładowanych metod dla string.Format(…). Jest wykorzystywany w wielu miejscach we Frameworku jak i poza nim. Chciałem zwrócić uwagę na ILog.DebugFormat() w bibliotece log4net oraz na Console.WriteLine().
Sztuka programowania 4435 dni, 2 godziny, 9 minut temu 111 źrodło rozwiń
Życie programisty byłoby prostsze, gdyby zawsze używał explicite CultureInfo gdy korzysta z ToString() oraz string.Format(...).
Sztuka programowania 4436 dni, 9 godzin, 38 minut temu 141 źrodło rozwiń
„Ciemno wszędzie, głucho wszędzie, Co to będzie, co to będzie?” … ano będzie, będzie! a raczej jest! pierwszy odcinek drugiego sezonu codingtv();! Dzisiaj zaczynamy tworzyć instalator naszego bloga. Przygotowujemy metodę do uaktulniania ustawień bazy danych w web.confgu i standardowo omawiamy komentarze z poprzedniego odcinka. Pamiętamy również o naszym konkursie i zgodnie z obietnicą dzisiaj wylosowaliśmy zwycięzcę
Piotr Zieliński pisze ciekawy cykl “Dobre i złe praktyki w C#”, a ja dzisiaj chciałem się odnieść do części VI i opisać rzecz, której dotychczas nie byłem świadom. Inicjalizacja właściwości obiektu.
Kolejna część artykułu o dobrych i złych praktykach. Zapraszam do lektury: http://msdn.microsoft.com/pl-pl/library/dobre-i-zle-praktyki-w-c-sharp–czesc-6.aspx
Sztuka programowania 4447 dni, 9 godzin, 9 minut temu 350 źrodło rozwiń