Aby wziąć udział w tym kursie, nie trzeba spełniać żadnych szczególnych wymagań.
Dlaczego potrzebujemy Clean Code? Programy ewoluują, dlatego kod jest stale aktualizowany, a powrót do nieczystego kodu w celu znalezienia i zaktualizowania kodu źródłowego może być bardzo, bardzo trudny. Średnio koszt napisania oryginalnego kodu to tylko 40% całkowitego kosztu systemu; średnio 60% kosztów przeznacza się na utrzymanie i aktualizację kodu. Zły kod dramatycznie zwiększa ten stosunek 40/60, granicząc z 20/80 w najgorszych przypadkach; im bardziej nieczysty jest kod, tym więcej czasu spędzamy na jego aktualizacji.
Dzień 1
Wstęp
Good i standardowe nazewnictwo
-nazwy pakietów, plików, klas, pustych przestrzeni i funkcji oraz zmiennych muszą mieć nazwy znaczące wynikające z ich przeznaczenia
-powinno być czytelne
-powinno być przeszukiwalne
-rozważ przestrzeń nazw, którą generujemy; Czy jest sens?
Klasy, obiekty i struktury danych
-istnieje różnica pomiędzy obiektami, które coś robią, a strukturami, które po prostu zawierają dane
-kiedy używać struktur danych i dlaczego
-kiedy używać obiektów i dlaczego
-OOD i abstrakcja
-gettery/settery i dlaczego
-lepiej mieć wiele małych klas, z wieloma małymi pustymi przestrzeniami i funkcjami
Goniektóre komentarze
- są dobre i złe komentarze;
-trzeba wiedzieć jak generować dobre komentarze i zapomnieć o reszcie
Dzień 2
Funkcje
-tylko jedna rzecz
-mały
-argumenty (dobre i złe)
-niezamierzone skutki uboczne
Obsługa błędów
-kiedy radzić sobie z błędami, kiedy pozwolić im się narosnąć
-jeśli obsłużymy wyjątek, co z nim zrobimy i dlaczego
-niestandardowe klasy obsługi błędów
Formatowanie kodu: jak możemy lepiej sformatować kod
Projektowanie oparte na testach: Otwarta dyskusja na temat pomysłu wujka Boba, że programy powinny być TDD