- są logiczne co najmniej w takim stopniu jak begin...end
Klamry są o tyle logiczne, że służą do grupowania/wydzielania danej treści i to nie tylko w programowaniu; begin
i end
są czytelniejsze, bo łatwiej jest czytać słowa, niż zestawy znaków (nie dotyczy Johna Nasha);
- łatwiej/szybciej można je napisać
Tak, łatwiej jest napisać dwa znaki, niż osiem - tutaj nie ma żadnych "ale";
- nie mieszaja sie z keywordami/nazwami
begin
i end
także się nie mieszają, bo to są keywordy; Na dodatek kolorowanie składni zawsze elegancko je uwidacznia spośród innych słów w kodzie programu, przy czym oczywiście jeszcze pomaga "code folding";
- jako dla mnie, ścisłowca, łatwiej jest wypatrzeć i zinterpretować jeden znak (który tutaj się dodatkowo wyróżnia od innych) niż cały wyraz
Patrz punkt wyżej - "syntax highlighting" + "code folding" daje znaczące wyróżnienie; Umysł ścisły czy humanistyczny nie ma tutaj większego znaczenia - interpretacja kodu jest zawsze prosta, jeśli jest kolorowanie składni; Więc czy dany blok wydzielany jest za pomocą znaków {}
, []
, ()
, %%
, czy za pomocą słów begin-end
, poczatek-koniec
, start-finish
- większego znaczenia nie ma, bo i tak jeśli są innym kolorem/stylem w porównaniu z pozostałą częścią kodu to i tak rozum podpowiada, że znaczą one więcej, niż tylko pusty tekst; Do tego dochodzą jeszcze odpowiednie wcięcia, które uwidaczniają dany blok kodu, które też znacząco wpływają na postrzeganie;
Podsumowując - ciężko jest o w pełni obiektywną ocenę, bo przeszkadza przy tym przyzwyczajenie z danego języka; Programistom C
, C++
, C#
, Java
itd. na pewno łatwiej zrozumieć klamry, zaś programistom pascala
czy VB
łatwiej zrozumieć słowne keywordy; Gdyby one komukolwiek przeszkadzały - nie wymyślano by takich składni, bo po co? Po to, żeby się męczyć i gubić w kodzie?
Osobiście wolę begin, end
bo takie jest moje przyzwyczajenie z Pascala
, ale to ocena subiektywna, z którą dużo osób się nie zgodzi (głównie dlatego, że nie piszą w Pascalu
czy VB
);
Na dodatek zobacz na składnię VB
- w nim dopiero trzeba się opisać, a nikomu to nie przeszkadza; Zobacz jak wygląda deklaracja zmiennej:
VB:
Dim FooVar As Integer;
Pascal:
FooVar: Integer;
C++:
int FooVar;
Części ludzi po prostu nie przeszkadza to, że trzeba więcej napisać, by zrobić dokładnie to samo, co w innych językach można osiągnąć dwa razy krócej.