9 nawyków dobrego programowania
Poniżej kilka zasad, które warto stosować już od początku przygody z web developerką (a także jakimkolwiek językiem programowania). Kolejność punktów jest przypadkowa, są po prostu luźno zebraną listą reguł.
Jeżeli zajmujesz się web developerką, to zanim zaczniesz czytać chciałbym bardzo zachęcić Ciebie do wcześniejszego wpisu -> 9 błędów web developera
1.Podziel zadanie na mniejsze zadania
Sama istota programowania uczy nas, aby poszczególne problemy dzielić na mniejsze zadania. Pozwala nam to zaoszczędzić kodu i przewidzieć wszystkie możliwe zakończenia. Takie myślenie etapowe warto przenieść do naszego świata organizacji. Dzięki temu już na etapie planowania możemy dostrzec możliwe problemy i je rozwiązać. Dodatkowo pozornie trudne i wielkie zadania stają się proste i przyjemne w wykonaniu (to jakby spróbować przenieść wielki głaz zamiast go skruszyć i przenosić po kawałku).
2.Używaj tabulatorów jak należy
Stwierdzenie trochę banalne ale widziałem przypadki, że wcięcia robione były chyba losowo i bardziej przypominały wieże Hanoi w połowie układania. Używamy tabulatorów po to aby od razu było widać, która funkcja jest zagnieżdżona w której (pomijam Pythona, tam tabulatory jednocześnie pełnią rolę klamr). Niby oczywiste ale wiele początkujących osób nie specjalnie zwraca na to uwagi.
3.Komentarze
Uważa się, że kod sam w sobie powinien być na tyle czytelny, aby nie używać komentarzy. Staraj się nazywać zmienne i funkcje, aby same w sobie były komentarzem.
Jeśli komentarze są konieczne, stosuj możliwie krótkie i dokładne jednocześnie.
4.Nie mieszaj technologii
Już od początku nauki z językami webowymi staraj się oddzielać języki. Czyli PHP jest w plikach .php, funkcje JS jest załączone na osobnych plikach .js a jakiekolwiek stylowania niech będą w plikach .CSS.
Plik HTMLa bez CSSa powinien być całkowicie rozsypany, ogołocony, żadnych stylów. Co prawda można używać w dokumentach HTMLa tagu 'style’ ale unikaj go. Możemy też umieszczać funkcje JS między tagami <scirpt> ale oddzielanie plików na pewno zaowocuje w przyszłości. Projekty stają się czytelniejsze, łatwiejsze w modyfikacji czy rozbudowie.
5.Optymalizuj
W trakcie pisania kodu, od razu zastanawiaj się czy daną funkcję można napisać wydajniej. Dzięki temu w przyszłości będziesz pisał wydajny kod na bieżąco. Masa sytuacji się powtarza, a Ty wyrobisz w sobie już gotowe schematy.
6.Szukaj dziur
Bądź jednocześnie pentesterem. Postaw się na miejscu atakującego i sprawdzaj sam swój kod czy nie ma dziur. Jednym z częstych błędów back-end developerów jest brak zabezpieczenia zapytań SQL. Ale tyczy się to nie tylko baz.
7.Debuguj, testuj
Pisanie kodu etapami i sprawdzanie na każdym czy działa jest dobrym nawykiem. Zawsze masz pewność (w przypadku gdy program przestaje działać), która część kodu nawala. Oszczędzasz dzięki temu czas i nerwy.
Obecnie mamy do dyspozycji sporo narzędzi do testów automatycznych, które bardzo ułatwiają nam sprawę.
8.Planuj
Osobiście prawie każdy program rozpisuję na kartce papieru. Dopiero gdy mam cały obraz od początku do końca, opis wszystkich funkcji etc. zaczynam działać. Ciężko mi zliczyć sytuację, że napisałem całkiem pokaźną funkcję i nagle przypomniałem sobie o brakującej opcji – w wyniku czego musiałem przerabiać połowę kodu.
Edit: Pisz kod tak, aby był łatwy w przyszłej rozbudowie 🙂 Rozdzielaj różne zadania pomiędzy różne funkcje/klasy/pliki. Pomaga tu zasada, że jeden skrypt powinien robić jedną rzecz, a dobrze.
9.Programuj w języku angielskim
Dlaczego w angielskim? Przecież „Polacy nie gęsi…„. Tak już jest, że angielski jest językiem programistycznym. Po co tworzymy w jednym języku? Wyobraź sobie sytuację, że musisz pracować na plikach z chińskimi nazwami… Zresztą, praktcznie wszystkie dokumentację będą po angielsku. Jeśli jesteś programistą zwyczajnie tego języka nie unikniesz (co jest samo w sobie dobre 🙂 ).
Ps. Jeżeli jesteś już dobrym programistą, zobacz co zrobić aby pracować wydajniej: Jak zostać wydajnym programistą?