Pozycje obowiązkowe
Jedną z książek, którą warto przeczytać jest "Czysty kod. Podręcznik dobrego programisty" autorstwa Roberta C. Martina. W swojej publikacji przedstawia on najlepsze metody pozwalające na opracowanie kodu idealnego. Zapoznaje czytelnika z zasadami tworzenia dobrego kodu i przekształcania złego kodu w dobre rozwiązanie, a także określa skuteczne metody formatowania czytelnego kodu.
W książce ujęto informacje na temat:
- pisania dobrej jakości kodu (czystego kodu),
- tworzenia nazw,
- funkcji,
- testów jednostkowych oraz o utrzymaniu ich czystości,
- obiektach oraz przyjmowanej strukturze danych,
- organizacji klas,
- współbieżnościach,
- zasadach tworzenia projektu.
Ten sam autor przygotował również publikację pt.: "Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów". To lektura doskonała dla każdego początkującego programisty. Można się z niej dowiedzieć, jakimi cechami powinien wyróżniać się profesjonalny programista, jak mówić "nie", a kiedy trzeba powiedzieć "tak". Autor uczy, jak radzić sobie z presją, zmęczeniem i pośpiechem i jak efektywnie zarządzać swoim czasem. Jest to doskonałe przygotowanie do zawodu. Pomaga uporządkować dzień pracy i wprowadzić właściwe nawyki, dzięki którym możliwe będzie utrzymanie balansu między pracą a czasem wolnym.
Kolejną pozycją obowiązkową jest książka "Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów". W tej publikacji nacisk kładzie się na przekazanie informacji na temat tego, jak stosować reguły obowiązujące przy architekturze oprogramowania, jak stosować je w codziennej pracy, jakie wyzwania stoją przed specjalistami. Dodatkowo odnosi się to także do zagadnień związanych z programowanie funkcyjnym, strukturalnym, obiektowym czy komponentami – ich łączeniem i spójnością.
W ten sposób możliwe jest nie tylko minimalizowanie nakładów pracy, ale również maksymalizowanie produktywności. To przydatna lektura dla tych osób, które chcą zmienić swój system pracy, wprowadzić nowe rozwiązania i chcą efektywniej wykonywać swoje obowiązki.
W dalszej kolejności warto zwrócić również uwagę na pozycję autorstwa P. Sebela pt.: "Sztuka kodowania. Sekrety wielkich programistów". W książce pojawiają się rozmowy z takimi specjalistami z dziedziny programowania, jak: K. Thompson, P .Norvig, B. Eich, D. Crockford.
Każdy z rozmówców mówi o swoich doświadczeniach, o początkach kariery oraz o przyszłości zawodu programisty. Jest to pozycja zapewniająca nieco inne spojrzenie na pracę i na możliwości rozwoju.
Ostatnią pozycją obowiązkową jest książka autorstwa D. Thomasa oraz A. Hunta pt.: "Pragmatyczny programista. Od czeladnika do mistrza". Choć pierwsze wydanie pochodzi z 1999 roku, to nadal zachowuje ona swoją aktualność. Przez ponad 20 lat programiści zyskali lepsze narzędzia, pojawiły się nowe wzorce pracy, ale pewne zasady są niezmienne.
W przekonaniu autora nieustannie należy pamiętać o tym, dlaczego się programuje i jaki jest cel podejmowanych działań. Wskazuje się, jak unikać pułapek związanych z powielaniem wiedzy, jak dbać o bezpieczeństwo i jak skutecznie testować czy tworzyć zespół. Każda z tych wskazówek uczy, jak rozwijać się w zawodzie i jak radzić sobie lepiej.
Inne książki warte uwagi
Ciekawą pozycją, która pozwala na zyskanie nowego spojrzenia na swój zawód jest książka pt.: "Kariera programisty. Jak budować doświadczenie, przejść rekrutację i zdobyć pracę marzeń" autorstwa J. Sonmeza. Jest to książka, która nie pomoże w rozwijaniu umiejętności programisty, nie nauczy nowego języka i nie odkryje tajników programowania. To coś znacznie więcej. Książka pokazuje, jak budować swoją karierę, jak nad nią pracować i rozwijać. Kładzie duży nacisk na to, by rozwijać nie tylko swoje umiejętności programistyczne, ale również uczyć się tego, jak efektywnie funkcjonować w środowisku programistycznym.
W publikacji pojawiają się zatem takie zagadnienia, jak:
- tworzenie atrakcyjnego dla rekrutera CV,
- unikanie błędów w czasie rozmowy kwalifikacyjnej,
- zasady współpracy z surowym przełożonym oraz budowania relacji z zespołem,
- utrzymanie balansu między pracą a życiem prywatnym,
- wybieranie najbardziej korzystnego dla siebie modelu zatrudnienia,
- poprawna identyfikacja braków w wiedzy oraz zdolność uzupełniania ich.
Książką, którą warto przeczytać jest publikacja "Getting Things Programmed. Droga do efektywności" autorstwa Michała Bartyzela. Podkreśla on, że na pracę każdego programisty składa się wiele zadań. Wymagają one różnego poziomu zaangażowania, a często wymagają realizowania kilku czynności jednocześnie, dlatego każdy programista powinien mieć opanowane właściwe zarządzanie swoją uwagą, dobre planowanie zadań oraz powinien umiejętnie szacować, jakiej wiedzy brakuje mu do efektywnego wykonywania poszczególnych zadań.
Książka definiuje kluczowe zadania, które stoją przed każdym programistą, wizualizuje zagrożenia, a jednocześnie podsuwa pomysły na samokształcenie. Są to gotowe rozwiązania, które można wdrożyć lub zmodyfikować w taki sposób, by pasowały do konkretnej sytuacji.
Na szczególną uwagę zasługuje również pozycja autorstwa m.in. E.Gamma pt.: "Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku". Jest to pozycja przeznaczona dla zaawansowanych programistów. Ujęto w niej wiele przykładów, wzorców projektowych i rozwiązań, które można zastosować w pracy. Książka pokazuje, że nie zawsze wszystko trzeba wymyślać na nowo. Lepiej bowiem skorzystać z tych rozwiązań, które już ktoś opracował wcześniej. Choć język, którym posługują się autorzy jest skomplikowany, to jest to pozycja, na którą warto zwrócić uwagę.
Również dla bardziej zaawansowanych programistów polecana jest książka autorstwa M. Fowlera pt.: "Refaktoryzacja. Ulepszanie struktur istniejącego kodu". Choć pierwsze wydanie pochodzi sprzed 20 lat, to w odświeżonym wydaniu publikacja jest nadal aktualna i niezwykle przydatna. Pomaga poszerzyć umiejętności i wspiera w procesie usprawniania czy poprawiania istniejących już kodów (zwiększa czytelność i wydajność, usprawnia strukturę).
Z kolei dla początkującego programisty ciekawą książką będzie "Software Craftsman. Profesjonalizm, czysty kod i techniczna perfekcja", autorstwa S. Mancuso. W publikacji zdecydowano się na rzemieślnicze podejście do zawodu programisty. Promowana koncepcja software craftsmanship wprowadza zupełnie inne podejście do programowania. Najważniejszy staje się tutaj: profesjonalizm, techniczna perfekcja oraz dbałość o pełne zadowolenie klienta.
Można to osiągnąć przy pomocy określonych praktyk programistycznych, które czerpią z doświadczenia programowania ekstremalnego, zwinnego oraz odchudzonego. Jest to zupełnie inne spojrzenie na pracę, dzięki któremu można wprowadzić zmiany usprawniające dotychczasowy sposób wykonywania powierzonych obowiązków.
Lekturą niezbędną dla każdego programisty jest książka pt.: "Praca nad zastanym kodem. Najlepsze techniki", która została napisana przez M. Featchera. Wskazuje on sposoby usprawnienia kodów, które już funkcjonują. Uwzględnia kluczowe informacje na temat doboru techniki czy też zasad wprowadzania zmian w zastanym kodzie. Przy jej pomocy można nauczyć się pracować na starych kodach i wykorzystywać testy automatyczne.
Ostatnią książką, na którą warto zwrócić uwagę jest książka autorstwa S. McConnell’a "Kod doskonały. Jak tworzyć oprogramowanie pozbawione błędów". Omawia ona proces tworzenia oprogramowania najwyższej jakości. To przy jej pomocy można nauczyć się (lub usprawnić) projektowanie z zachowaniem minimalnej złożoności, zapewnić sobie dbałość o jakość i unikanie błędów w kodzie, szybkiego i skutecznego debugowania czy rozwiązywania problemów z całą konstrukcją oprogramowania. W książce ujęto wiele list kontrolnych, które pomagają ocenić architekturę, jakość klas oraz procedur, nazw zmiennych czy też struktur sterujących oraz przykłady dobrego i złego kodu.
Książki dla dzieci i nie tylko
Choć programista pracujący w zawodzie nie potrzebuje zaznajamiać się z podstawami, to jeśli tylko ma dziecko i chce mu pokazać swój świat, również może wybrać kilka książek, które w tym pomogą. Doskonałym przykładem jest książka napisana przez U. Wiejak K. Niemir oraz A. Wojciechowskiego pt.: "Programowanie dla dzieci". Publikacja wprowadza w tajniki programowania, uczy podstaw i pokazuje świat programowania od najłatwiejszej strony.
Podobne publikacje, na które warto zwrócić uwagę, to: "Programowanie z Minecraftem", "Kodowanie dla młodszych przedszkolaków", czy "Hello Ruby". Choć książki te powstały z myślą o dzieciach, doskonale sprawdzą się też w przypadku osób, które chciałyby rozpocząć swoją przygodę z programowaniem, a nie mają w tym obszarze żadnej wiedzy.
Zaletą tych książek jest prosty język i dokładne objaśnienia. Jeśli programista chce wciągnąć w świat programowania swoich bliskich, może zacząć od najłatwiejszych książek. Z pewnością będzie to ciekawa i pouczająca lektura, która skutecznie zarazi pasją.
Podsumowanie
Wybierając ciekawą lekturę można zdecydować się zarówno na książki poświęcone konkretnemu językowi programowania, jak również na poradniki rozwijające posiadane już umiejętności. Można wybrać też książki charakteryzujące specyfikę pracy programisty. Bez względu na oczekiwania, nie warto koncentrować się na jednym obszarze. W pracy programisty wiedza teoretyczna to nie wszystko. Wybierając lekturę warto pomyśleć o swoim rozwoju i budowaniu odpowiedniej pozycji zawodowej. Książki mogą wskazać ścieżkę rozwoju, która okaże się dla programisty najlepsza.
To wszystkie na dzisiaj. Jeżeli taki artykuł Ci się spodobał, to koniecznie dołącz do mojej społeczności – darmowe zapisy, gdzie będziesz również miał dostęp do dodatkowych materiałów i przede wszystkim bonusów. Do zobaczenia w kolejnym artykule.
Poprzedni artykuł - Najważniejsze Wskazówki Jak Napisać Dobre Programistyczne CV