Przychodzi mi na myśl cytat, często przypisywany Albertowi Einsteinowi:
Spraw, aby wszystko było tak proste, jak to możliwe, ale nie prostsze.
Jeśli przesadzisz, przycinając rzeczy, może to utrudnić odczytanie kodu. Ponieważ „łatwy / trudny do odczytania” może być bardzo subiektywnym terminem, wyjaśnię dokładnie, co rozumiem przez to: miarę stopnia trudności, jaką będzie miał wykwalifikowany programista w określaniu „co robi ten kod?”. po prostu patrząc na źródło, bez pomocy specjalistycznych narzędzi.
Języki takie jak Java i Pascal są niesławne ze względu na swoją gadatliwość. Ludzie często wskazują na pewne elementy składniowe i szyderczo mówią, że „są po to, aby ułatwić kompilatorowi pracę”. Jest to mniej więcej prawda, z wyjątkiem części „sprawiedliwej”. Im bardziej wyraźne są informacje, tym kod jest łatwiejszy do odczytania i zrozumienia, nie tylko przez kompilator, ale także przez człowieka.
Jeśli powiem var x = 2 + 2;
, to od razu oczywiste, że x
ma to być liczba całkowita. Ale jeśli powiem var foo = value.Response;
, o wiele mniej jasne jest to, co foo
reprezentuje lub jakie są jego właściwości i możliwości. Nawet jeśli kompilator może to łatwo wywnioskować, nakłada na osobę znacznie więcej wysiłku poznawczego.
Pamiętaj, że programy muszą być napisane, aby ludzie mogli je czytać, a tylko przypadkowo, aby maszyny mogły je uruchomić. (Jak na ironię, ten cytat pochodzi z podręcznika poświęconego niesławnemu językowi, ponieważ jest niezwykle trudny do odczytania!) Dobrym pomysłem jest usunięcie rzeczy, które są zbędne, ale nie zabieraj kodu, który ułatwi innym ludziom dowiedzieć się, co się dzieje, nawet jeśli nie jest to absolutnie konieczne do napisania programu.