Dodatkowe checki w checkstyle

Code Formatting

Checkstyle to potężna biblioteka, która nie tylko pozwala ustandaryzować formatowanie kodu w projekcie, ale także wyłapać niektóre błędy w programie (np. czy implementując metodę equals zaimplementowano także metodę hashcode) oraz design kodu (np. maksymalny rozmiar metod lub złożoność cyklomatyczną). To, że narzędzia statycznej analizy kodu są niezwykle przydatne, traktuję jako pewnik. Warto ich używać, nawet […]

Metryki jako zmienne publiczne, czy to złe?

Na tym blogu zdarza się, że są poruszane tematy tabu. Tym razem przyszedł czas na statyczne publiczne zmienne. Wiele już zostało powiedziane na temat zła, które wyrządziło światu ich stosowanie. W tym poście chciałbym przeanalizować szczególny przypadek ich użycia, a mianowicie metryki. Metryki, wszędzie metryki W poście Mierz logi na zamiary Bartek opisał jak istotne […]

O lokalności LocalDateTime

W kłopoty wpędza cię nie to, czego nie wiesz, lecz to, co wiesz, a co nie jest prawdą. — Will Rogers Podstawy których nie znają seniorzy Wszyscy wiemy jak ważnym zagadnieniem jest dobre nazewnictwo zmiennych, funkcji, klas i wszystkiego czym operujemy. Jednym z popularniejszych technik refaktoryzacji jest zmiana nazwy. Programiści spędzają sporo czasu nad wymyślaniem […]

Wzorce pracy zdalnej

W ostatnim czasie praca zdalna stała się coraz bardziej rozpowszechniona. Sam pracowałem przez rok jako satelita, a wcześniej także przez rok w pełni rozproszonym zespole w różnych strefach czasowych. Aktualnie pracuję w Allegro, gdzie przez fakt posiadania biur w kilku miastach, elementy pracy zdalnej są na porządku dziennym. Zanim przejdziemy do wzorców, określmy kontekst zespołu […]

Dlaczego scrum jest passé?

Od dłuższego czasu obserwuję, że scrum jest w odwrocie. Nie chodzi o to, że jest coraz mniej popularny. Wręcz przeciwnie, stał się buzzwordem. Pojawia się w prawie każdym ogłoszeniu o pracę (tuż obok młodego zespołu) tracąc swoje pierwotne znaczenie. W moim otoczeniu ludzie wykazują mniej entuzjazmu, aby go wdrażać – częściej chcą go modyfikować i […]

Optional jako pole i co mi zrobisz?

Od wprowadzenia klasy Optional w JDK 8 minęło już sporo czasu. Sporo też napisano o tym jaki i gdzie jej używać, co jest dobrą praktyką a co złą. Przykład tego można znaleźć w artykule Optional Anti-Patterns. Ale czy to wszystko ma sens? Zgadzam się z wieloma postawionymi tam tezami. Chciałem jednak wejść w polemikę z […]