Null object mi różnicy nie robi

Untitled

Brzydal

Każdy czegoś nie lubi, ja na przykład nie lubię gdy ktoś siada na moim krześle, a potem ja muszę na nim usiąść, fuj – takie ciepłe, zawsze chwilę odczekuje.
Albo NULL – to ciągłe sprawdzanie czy zmienna nie jest nullem, a potem jeszcze specjalna obsługa tu i tam i jeszcze tam, a potem tam i tam niosą, się ify po całym projekcie, albo wyjątki – BLEH

Sposób

Na szczęście na jedno i drugie jest sposób; każdemu mówię, że na moim krześle się nie siada i głośno warczę gdy ktoś łamię tę regułę, albo czekam aż wystygnie – przecież ich nie pogryzę.
Continue reading

Otwarte karty

modyfikatory

Public, Protected, Private

Do czego służą modyfikatory dostępu? Do ograniczania dostępu do metod, pól i właściwości klas (C#). Ograniczenie to sprawdzane jest w trakcie kompilacji i gdy sięgasz za daleko taki komunikat pojawia się na ekranie:
Error    CS0122    ‘Test.fooPrivate()’ is inaccessible due to its protection level.
Ale wystarczy odrobina refleksji tu i tam i można spokojnie olać modyfikatory:

Continue reading

Ślub. Factory żeni się z IOC

Małżeństwo

Małżeństwo to nie taka prosta sprawa. Są różne i różnie się układają, różni ludzie się do tego mieszają czasem wychodzi to lepiej a czasem gorzej. Podobnie jest w programowaniu. Ostatnio musiałem ożenić IOC z Factory. Problem który się pojawił to tworzenie obiektu na podstawie jakiegoś tam parametru wejściowego, na początku miałem tylko jeden przypadek (np. RssChannel) i musiałem tylko ten przypadek obsługiwać, mogłem spokojnie wstrzyknąć handler i było cacy. Potem (w zasadzie teraz) mam drugi przypadek (Person) i na początku także wstrzykiwałem sobie handler dla tego przypadku. W ramach porządkowania robiłem małe poprawki w kodzie i nie mogłem przejść obok tego bez reakcji. Poza tym OCP patrzyło na mnie spode łba tak paskudnie. Continue reading

Feature request jak to ugryźć

Mało czasu

Czas goni, a rąk i głów i czasu do implementacji ficzerów brakuje. Co wtedy robić, od którego zacząć robić żeby było lepiej dla aplikacji i dla ludzi, a na końcu dla mnie i mojego portfela?

Zamiast zastanawiać się w ten sposób, może warto oddać głos użytkownikom? Niech oni klikają w system, system zbiera te informacje i w krótkim czasie można się dowiedzieć co było klikane najczęściej i właśnie na tym skupić kolejna działania rozwojowe.

Mój pomysł

Jak ja do tego podszedłem? W poprzednim wpisie pokazałem jak wygląda u mnie pasek pod każdym w rss (http://jaroslawstadnicki.pl/2016/04/font-awesome-w-mvc/).
Kod odpowiedzialny za wyświetlenie tego paska wygląda w taki sposób: Continue reading