
Damian Łysiak – nasz NodeJS Developer w SolveQ jest miłośnikiem książek. Czyta wszędzie (najchętniej na ławce w parku) pozycje z różnych dziedzin, a najchętniej oczywiście z dziedziny IT. Poniżej 7 pozycji must read, które według Damiana warto przeczytać, jeśli interesuje Was szeroko pojęte IT.
1. Czysty kod. Podręcznik dobrego programisty
Ta książka to świetny, ogólny wstęp do najlepszych praktyk związanych z pisaniem kodu źródłowego. Dowiecie się z niej między innymi:
- jak nazywać zmienne, funkcje i klasy, aby kod nie wymagał komentarzy i był łatwy do zrozumienia,
- jak poprawnie stosować paradygmat obiektowy, tj. kiedy stosować dziedziczenie, interfejsy itp.,
- jak poprawnie obsługiwać błędy pojawiające się w aplikacji,
- dlaczego testy automatyczne są ważne, oraz jakie konsekwencje niesie zaniechanie pisania testów,
oraz wiele innych, ważnych zagadnień.
2. TDD. Sztuka tworzenia dobrego kodu
Autor bardzo przystępnie oraz z przykładami, tłumaczy czym jest Test-Driven Development, czyli pisanie testów automatycznych przed napisaniem właściwego kodu. Poza tym książka zawiera opisy typów testów, wzorców projektowych używanych w testach automatycznych oraz porady odnośnie tego jak stosować ów metodykę w praktyce.
3. Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku
Jeśli nie chcesz odkrywać koła na nowo, to dzięki tej książce możesz poznać wzorce projektowe stosowane przez najlepszych programistów. Używanie szeroko znanych wzorców projektowych ułatwia również komunikację pomiędzy inżynierami w kwestii omawiania i implementowania rozwiązań przeróżnych zagadnień.
4. Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów
Książka zawiera bardzo dobry, ogólny wstęp do architektury systemów i do samego zagadnienia czym ów architektura jest. Dodatkowo zawiera sporo wiedzy o proceduralnym, funkcyjnym i obiektowym paradygmacie programowania.
5. Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów
Książka porusza zagadnienie inżyniera oprogramowania w świecie potrzeb biznesowych. Można się z niej dowiedzieć m.in. jak pod presją czasu wciąż pisać dobry kod oraz kiedy można przystać na błędne decyzje biznesowych członków zespołu (np. dobór technologii, rezygnacja z pisania testów itp.), a kiedy powinniśmy kategorycznie zaalarmować techniczne konsekwencje danego wyboru.
6. Ciągłe dostarczanie oprogramowania. Automatyzacja kompilacji, testowania i wdrażania
Dzięki tej pozycji dowiecie się jak “wyautomatyzować” się z pracy, czyli jak wykorzystać maszyny do wykonywania żmudnych zadań, których nikt nie chce się podjąć. Nudne i powtarzalne procesy jak np. uruchamianie testów i wdrażanie aplikacji usypiają czujność, powodują tzw. działanie mechaniczne i przez to prowadzą do niedopatrzeń i pomyłek ludzkich. Automatyzacja pozwala zniwelować ten problem jak i również znacznie zaoszczędzić czas pracy inżynierów.
7. The Twelve-Factor App
Ostatnia pozycja w zasadzie nie jest książką, aczkolwiek na podstawie powyższej strony www powstało wiele publikacji więc postanowiliśmy dodać ją do tej listy. Jest to pozycja obowiązkowa dla ludzi wchodzących w świat kontenerów Docker. Dowiecie się z niej na co zwracać uwagę tworząc aplikację, którą następnie można skonteneryzować i bezproblemowo skalować w przyszłości. Przeczytacie tam kilka słów o aplikacjach stanowych i bezstanowych oraz jak zapanować nad zależnościami, środowiskami wdrożeniowymi, strumieniem logów itp.7 książek IT, które musisz przeczytać. Nasz subiektywny wybór