Komentarz (informatyka)
Z Wikipedii
Komentarz to fragment kodu źródłowego, którego jedynym celem istnienia jest informowanie o czymś osoby czytającej źródła, a który nie ma żadnego wpływu na program - i jest zazwyczaj przez kompilator czy też interpreter pomijany.
Komentarz to typowy lukier składniowy.
Spis treści |
[edytuj] Zasady stosowania komentarzy
Istnieją różne szkoły pisania komentarzy - od jednej skrajności, mówiącej, że z komentarzy powinno się móc wywnioskować wszystko co program robi, bez oglądania reszty źródeł, do drugiej, mówiącej, że jeśli kod nie jest oczywisty bez komentarzy, to jest to zły kod, a komentarze są właściwie zbędne.
Generalnie jednak panuje zgoda, że jeśli pisze się komentarz, komentowane powinno być to co kod robi, a nie jak to robi.
Właściwość komentarzy polegająca na ich "niewidzialności" z punktu widzenia kompilatora jest szeroko wykorzystywana jako metoda rozszerzania właściwości języka. W sekcjach stanowiących komentarze zapisywane są dyrektywy dla kompilatora (pascal), treści dla parserów tworzących dokumentacje, czy wręcz całe procedury (JavaScript wewnątrz HTML).
[edytuj] Rodzaje komentarzy
Podział komentarzy w językach programowania można dokonać na podstawie różnych kryteriów:
- podział ze względu na sposób traktowania komentarzy przez translator
- podział ze względu na składnię.
[edytuj] Podział ze względu na interpretację
Komentarz (wraz ze znakami wydzielającymi komentarz z kodu źródłowego) mogą być traktowane przez translator:
- tak, jakby ich nie było, jako znak pusty (oznacza to możliwość wstawienia komentarza wewnątrz literału, np. wh{pętla}ile ; przy czym napis ten przez translator zostanie uznany za napis "while"
- tak, jak odstęp, np. tak jak spację, np. while{początek pętli}a<b do ; komentarz traktowany jak spacja oddzieli słowo kluczowe "while" od identyfikatora "a"
- w inny określony przez implementacje sposób.
[edytuj] Podział ze względu na składnię
Ze względu na składnię komentarz dzieli się na:
- blokowe
- liniowe
- obejmujące całą linię
- obejmujące linię od określonego znaku/znaków do końca linii
Komentarz blokowe charakteryzują się tym, że
- mają znak lub znaki otwierające komentarz i znak lub znaki zamykające komentarz, np. w języku C: znaki otwierające "/*" i znaki zamykające "*/"
- powyższe daje możliwość:
- umieszczania komentarzy wewnątrz linii kodu źródłowego (patrz wyżej)
- tworzenia komentarz składających się z wielu linii tekstu bez konieczności poprzedzania każdej linii znakiem komentarza.
Komentarze liniowe to komentarze, które rozpoczynają się od określonego znaku/znaków, a kończą znakiem/znakami końca linii (np. znakiem o kodzie ASCII 13 lub parą znaków 13 i 10, albo innymi przyjętymi w danym systemie). Tworzenie komentarz składających się z kilku linii wymaga poprzedzania wszystkich linii tekstu znakami komentarza. Rozróżnić można dwa przypadki:
- komentarzem musi być cała linia tekstu
- komentarz rozpoczyna się w dowolnym miejscu linii kodu źródłowego od określonego znaku/znaków, a końcem komentarza jest koniec linii.
Przykład w języku Basic:
10 REM To jest komentarz składający się z całej linii kodu źródłowego 20 LET A=1 ' A to komentarz od znaku ' do końca linii
[edytuj] Komentarze w językach programowania
Język programowania | Rodzaj | Składnia |
---|---|---|
Assembler, AutoLISP | liniowy | [instrukcja] ; komentarz |
Algol 60 | blokowy | begin comment komentarz; instrukcje ... end; instrukcje ... |
blokowy | [[instrukcja]]; comment komentarz; instrukcje ... | |
blokowy | end komentarz <; lub end lub else> | |
Basic, Visual Basic | liniowy | [nr linii] REM komentarz |
liniowy | [nr linii] [Instrukcja] ' komentarz | |
C, C++, PL/I, PL/M | blokowy | /* komentarz */ |
Clipper | liniowy1) | * komentarz |
liniowy | && komentarz | |
liniowy | // komentarz | |
DBase | liniowy | [instrukcja] && komentarz |
liniowy1) | * komentarz | |
Fortran 77 | liniowy1) | C komentarz |
liniowy1) | * komentarz | |
Forth | blokowy | ( komentarz ) |
Icon | liniowy | [instrukcje] # komentarz |
Logo | liniowy1) | ; komentarz |
Modula 2 | blokowy | (* komentarz *) |
Pascal | blokowy | { komentarz } |
blokowy | (* komentarz *) | |
Prolog | liniowy | % komentarz |
Snobol | liniowy1) | * komentarz |
1) Znak komentarza musi być pierwszym znakiem w linii kodu: |