Spis treści
Wiele nowoczesnych języków programowania udostępnia rodzaj komentarza, który możemy stosować w naszym kodzie do dokumentowania działania metod naszego programu. Komentarz taki zaczynamy od znaków /** a kończymy znakami */
Komentarze dokumentujące służą do:
- pomocy w zrozumieniu działania metody,
- opisie parametrów metody,
- opisie zwracanej wartości,
- informacji, czy metoda rzuca jakieś wyjątki i w jakich sytuacjach (o wyjątkach będziemy się uczyć wkrótce),
- dodatkowo, można w komentarzu poinformować o m. in. autorze metody i wersji, od której jest dostępna.
Istnieją narzędzia, które potrafią przejść przez kod źródłowy naszego programu i wygenerować do niego dokumentację na podstawie komentarzy tego specjalnego typu. Przykładem takiego narzędzia jest oficjalny program do tworzenia dokumentacji dla języka Java o nazwie JavaDoc.
Wygenerowaną w ten sposób dokumentację możemy zobaczyć na np. oficjalnej stronie dokumentacji języka Java pod adresem:
Spójrzmy na przykład użycia tego rodzaju komentarzy:
import java.util.Scanner;
public class JavaDocPrzyklad {
public static void main(String[] args) {
System.out.println("Podaj liczbe");
int x = getInt();
System.out.println(
"Ta liczba do kwadratu to " + policzKwadrat(x)
);
}
/**
* Metoda czeka na podanie przez uzytkownika wartosci,
* po czym ja zwraca.
* @return Wartosc podana przez uzytkownika.
*/
public static int getInt() {
return new Scanner(System.in).nextInt();
}
/**
* Zwraca przeslana liczbe podniesiona do kwadratu.
* Przyklad: dla argumentu liczba rownego 5, zwroci 25.
*
* @param liczba Liczba, ktora chcemy podniesc do kwadratu.
* @return Liczba podniesiona do kwadratu.
*/
public static double policzKwadrat(int liczba) {
return liczba * liczba;
}
}
Przed metodami getInt oraz policzKwadrat znajdują się komentarze dokumentacyjne, opisujące co robi każda z tych metod. Dodatkowo, metoda policzKwadrat ma jeden argument, który opisujemy w następujący sposób: najpierw piszemy słowo param poprzedzone znakiem @ (małpa), po którym następuje nazwa argumentu, a po spacji jego opis (może on być dłuższy niż jedna linia).
Możemy w ten sposób opisać więcej, niż jeden parametr:
@param x Pozycja X.
@param y Pozycja Y.
Obie powyższe metody zwracają wartość – do opisu zwracanej wartości używamy słowa @return.
Pytanie: czy powinniśmy dokumentować wszystkie metody? Raczej nie – tylko te bardziej skomplikowane lub takie, których opis będzie przydatny w wygenerowanej dokumentacji, którą, być może, dostarczymy osobom, które będą korzystały z naszego kodu.