Miesiąc: Listopad 2013

Bezpieczniej z TryParse()

Zwyczajny, często widziany kod który parsuje stringa na inta. W zależności od tego czy jesteśmy pewni, że przekazany string ładnie się sparsuje, powyższa funkcja może wystarczyć lub nie. Fakt, że dostajemy string już mówi, że coś może pójść nie tak. Gdybyśmy mogli przekazać int…

Minimum Viable Product (MVP)

Chciałem dzisiaj powiedzieć o podejściu które jeszcze nie wiem jak dobrze nazwać (może Lean, a może Agile, a może właśnie MVP, o którym to określeniu dowiedziałem się od mojego reviewera), a chodzi w nim żeby być minimalistą w implementowanych funkcjach i skupiać się na…

SisoDB – dokumentowy ORM

SisoDB czyli lekki dokumentowy ORM dla .NET. Cenię w nim prostotę (KISS) 🙂 Gubię się gdy trzeba coś konfigurować, administrować. Po prostu lubię inne rzeczy. Przykład kodu wykorzystujacy plikowa baze danych SqlCe: Tu naprawdę nie ma o czym pisać. Trochę kodu i działa. (UseOneTo()…

Rzucanie własnych wyjątków specyficznych dla aplikacji

Kiedyś przeczytałem o antypaternie jakim jest tworzenie nowego typu wyjątku, który jest per aktualny projekt, czyli np. GitHubException, ktory dziedziczy z System.Exception i nie dodaje własnych pól ani zachowania. Tworzymy go ponieważ wszystko co już jest nie pasuje nam, a wiadomo, że rzucanie Exception…

Global Day of Coderetreat 2013

Jak co roku w grudniu na całym świecie o tej samej porze odbędzie się Code Retreat. W tym roku w Polsce odbędzie się w Krakowie, Łodzi, Katowicach, Warszawie, Bielsku i Gdańsku. Miasta w Polsce. Są to miasta na dziś dzień, można się jeszcze zgłosić…

Wzorce i antywzorce projektowe w C#

Chciałem przypomnieć prezentację Pawła Łukasika zatytułowaną Kurs programowania w C# – 24. Wzorce projektowe, która została nagrana 1,5 roku temu na VirtualStudy. Dużo się z niej nauczyłem zwłaszcza o antyzworcach. Ostatecznie pytanie o wzorce na pewno pojawi się na rozmowie o pracę, jeśli ktoś…

Nie przesadzić z DRY

Nie wszystko co kwacze to kaczka Czasem rzeczy są podobne ale jest to przypadkowe podobieństwo. To są w rzeczywistości różne rzeczy 🙂 Przykład z życia, akurat bardzo niskopoziomowy. Potrzebowałem posklejać takie jakby „ścieżki”, separatorem był underscore (najlepsze polskie tłumaczenie to podłoga) „_”. Przykładowo content_colors_red….

Unconditional Programming, czyli if to zło

Struktury sterujące (if, switch) są źródłem wielu błędów. (Że if to złooo można poczytać na Anti-IF Campaign.) Jeśli można to warto ich unikać. Pokażę prosty przykład. Funkcja ma za zadanie pobrać n początkowych elementów tablicy. Dodatkowo jeśli tablica jest krótsza niż n to trzeba…

Biurowe dźwięki

Dla tych z was, pracujących z domu, którym brakuje biurowych dźwięków: http://coding.fm/ Dla tych z was, pracujących z biura, którym brakuje szumu lasu: http://www.noisli.com

Problems finding property usages in EPi7 WebForms

In EPiServer 7 Web Forms project I wanted to find all usages of a regular property. But I failed – „Usages of ‚RightContentArea ‚ were not found.”. (I am using Resharper for that.) It is very clear that when you reference PropertyName by string…