W myśl idei poszerzania wiedzy o zarówno tych podstawowych, jak i zaawansowanych prawach rządzących światem programistycznym, kilka dni temu wybraliśmy się większością zespołu łódzkiego na wideo-prezentację dotyczącą pisania czystego kodu źródłowego, dostarczoną prosto od Wujka Boba. Spotkanie, zorganizowane przez Stowarzyszenie JUG Łódź, odbyło się w budynku Politechniki Łódzkiej, w Katedrze Mikroelektroniki i Technik Informatycznych. Sponsorem tego odcinka była firma Rule Financial, która opłaciła koszty licencji.
Robert Martin zwany popularnie Wujkiem Bobem – to znany amerykański konsultant i autor książek. Jego książka „Clean Code” to swego rodzaju biblia dla programistów, pozycja obowiązkowa dla każdego kto pisze i utrzymuje kod źródłowy. Wujek Bob jest założycielem firmy The Clean Coders, która prowadzi szkolenia w formie code castów, czyli szkoleń wideo. The Clean Coders udostępnia na licencji „community” prezentacje, które można wyświetlić dla 50 osób poza godzinami pracy i tylko jednokrotnie.
Nie żałujemy uczestnictwa. Dobrze jest od czasu do czasu usłyszeć od starszego człowieka wymachującego mieczem samurajskim rozkaz trzymania się odpowiednich standardów!
Usłyszeliśmy, że każdy komentarz w kodzie jest naszą osobistą porażką, ponieważ jest on dowodem na to, że nie potrafimy jasno wyrazić przeznaczenia jakiegoś kawałka kodu poprzez język programowania, w którym w danej chwili pracujemy.
Wujek Bob podkreślał, jak istotne jest trzymanie w projekcie małych plików, zawierających od 60 do 200 linii kodu. Zostało to udokumentowane odpowiednimi statystykami z różnych, dojrzałych projektów.
Pokazana została również różnica między klasą a strukturą danych, do którego z tych obiektów stosujemy domyślną politykę prywatności czy też publiczności danych, a także jak je wykorzystywać do prawidłowego, solidnego projektowania systemów informatycznych.
Mój ulubiony fragment to wyśmianie przez Wujka używanych przez programistów tzw. setterów i getterów. Zawsze mnie to co najmniej niepokoiło, w szczególności wtedy kiedy było to forsowane przez nauczycieli akademickich. Jak dla mnie, i najwyraźniej również dla Wujka Boba, ustawianie zmiennych prywatnymi, a następnie przygotowywanie dla nich funkcji najczęściej nazwanymi „getNazwaZmiennej” jest dowodem na niezrozumienie programowania obiektowego.
Pouczające było również uświadomienie tego, że baza danych nie zawiera rzeczywistych obiektów pochodzących prosto z biznesowego świata. Zawiera ich reprezentację w postaci odpowiedniej struktury danych (gdzie kolumny to publiczne pola takiej struktury).
Całość prowadzona była w dobrej atmosferze i z humorem, jednak rekwizyty Wujka Boba w pewnym momencie zaczęły wytrącać mnie ze słuchania (dla przykładu, jednym z przedmiotów była magiczna różdżka). Ogólnie jednak oceniam prezentację pozytywnie.
Jako że spodobała nam się ta forma, a następne prezentacje z cyklu potrzebują sponsorów, to jest wysoce prawdopodobne, że nasza firma zasponsoruje jedną z nich (o czym na pewno poinformujemy na blogu).