Moja firma (mała, około 40 osób w 3 biurach) od czasu do czasu organizuje „warsztaty programistyczne” online, gdzie jeden z deweloperów prowadzi prezentację na jakiś temat techniczny. Niekoniecznie chodzi o naszą pracę, ale po to, aby pomóc wszystkim w doskonaleniu umiejętności i zrozumienia.
Poproszono mnie o zorganizowanie następnego, a tematem (wybranym z listy, którą podałem) jest styl kodu i wzorce projektowe. Wiem, że te rzeczy nie są tak ściśle powiązane, ale trzymajcie się mnie. W naszej bazie kodu widziałem wiele miejsc, które można ulepszyć, niektóre z nich mogą nawet kwalifikować się do DailyWTF, dlatego chcę, aby ta prezentacja była jak najbardziej efektywna. Problem polega na tym, że po prostu nie wiem dokładnie, co pokryć w ciągu godziny.
Moim pierwszym pomysłem jest użycie naszego własnego kodu jako przykładu, aby doprowadzić do tego, że „proszę zastosuj to do swojej pracy”. Ale temat jest tak szeroki.
Niektóre błędy w naszym kodzie (PHP) obejmują:
- Minimalne OO. Ostatnio się poprawia, ale wciąż jest mnóstwo globalnych funkcji. Znalezienie rzeczy zajmuje mi trochę czasu.
- Globalna konfiguracja (chyba opinia). $ GLOBALS ['bla'] można znaleźć w prawie każdym pliku.
- Niespójny styl klamry. Brzmi minimalnie, ale tak naprawdę spowodowało to, że błąd składni został wypchnięty pięć dni temu, co nadal nie zostało poprawione.
- Nieefektywne konstrukcje. Udało mi się wprowadzić kilka podstawowych ulepszeń, które skróciły czas pracy w niektórych obszarach o 70%.
Chcę, aby ta rzecz była tak użyteczna, jak to tylko możliwe, bez protekcjonizmu dla moich współpracowników. Więc na jakich aspektach „stylu” powinienem się skupić i które wzorce projektowe mogą być najbardziej przydatne do wyjaśnienia?