Posts Tagged ‘Tomasz Nurkiewicz’
Zastąp ify przez polimorfizm
Niecały rok temu pisałem o prezentacji Tomasza Nurkiewicza pt. Uwolnić się od ifów.
Istotnie, wiele instrukcji warunkowych w kodzie utrudnia jego zrozumienie, testowanie i utrzymanie. Często w takiej sytuacji łamany jest Single Responsibility Principle.
Read the rest of this entry »
Krótka historia czasu – Tomasz Nurkiewicz
Tomasz Nurkiewicz, niczym Stephen Hawking, opowiada o pułapkach związanych z datami i czasem w Javie (oraz ogólnie w informatyce). Byłem, widziałem – najlepsza prezentacja na tegorocznej Confiturze!
Od autora:
Jaka jest różnica czasu między Warszawą a Sydney? Odpowiedź na to pytanie jest zaskakująco trudna. Równie zaskakującym jest jak wielu programistów tej trudności nie dostrzega. Niby po co? Bo niemal co roku na światło dziennie wypływają zawstydzające błędy w oprogramowaniu, wynikające z niewiedzy bądź lekkomyślnego traktowania… czasu w systemach komputerowych.
Podczas tej prezentacji spróbuję pokazać, jak ważne jest świadome operowanie czasem podczas pisania oprogramowania. Nie będziemy (prawie) narzekali na klasę java.util.Date
, ale skupimy się na fundamentalnych nieporozumieniach i błędach. Zobaczymy w przykładach fatalne skutki beztroskiego i nieumiejętnego obchodzenia się z czasem.
Nauczymy się także jak przechowywać, przesyłać i przetwarzać czas oraz jak testować systemy zależne od czasu (czyli w zasadzie wszystkie). Nie spodziewajcie się eksploracji takiego czy innego API. Skupimy się raczej na zrozumieniu praw rządzących upływem czasu i ich odpowiednim modelowaniem w naszych programach.
Read the rest of this entry »
Nie polegaj (tylko) na testach jednostkowych
Tomasz Nurkiewicz w swoim artykule pisze, aby nie polegać tylko i wyłącznie na testach jednostkowych. Przekonuje, że 100% pokrycie kodu testami nie wystarcza. Złożony system klasy enterprise wymaga testów integracyjnych, testów komponentów a nawet testów całego systemu.
Ify to zło?
Tomasz Nurkiewicz, znany m.in. ze stackoverflow opowiada o znanej wszystkim konstrukcji warunkowej if. Pokazuje jak można ją zastąpić dziedziczeniem lub wzorcami projektowymi. W trakcie prezentacji refaktoruje fragmenty kodu naszpikowane konstrukcjami warunkowymi, pełne flag, przełączników i trybów. W metodach i klasach sporo mieszania odpowiedzialności: bezpieczeństwo, transakcje, wielowątkowość, mierzenie czasu i obsługa błędów.
Czy ify są aż tak złe?
Read the rest of this entry »