Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 31 di 45
  • livello principiante
Indice lezioni

Rdoc: convertire i commenti in documentazione

Come convertire i commenti inclusi nel codice di programmazione in paragrafi di documentazione del programma
Come convertire i commenti inclusi nel codice di programmazione in paragrafi di documentazione del programma
Link copiato negli appunti

Oltre ai commenti scritti tra i tag visti prima, RDoc prende in considerazione anche i normali commenti scritti facendo iniziare la riga con il carattere #. Ovviamente l'utilità di un simile meccanismo sta nell'integrazione tra il codice e i commenti che con RDoc diventano anche documentazione. Per illustrare questa caratteristica andiamo a ripescare le nostre classi e aggiungiamoci i commenti. L'ultima versione era la seguente:

class Veicolo
    attr_reader :carburante

    def initialize (carburante)
        @carburante = carburante
    end

    def rifornimento (quantita)
        @carburante += quantita 
    end
end

class CarroArmato < Veicolo
    attr_reader :colpi

    def initialize (carburante, colpi)
        super(carburante)
        @colpi = colpi
    end
end

class Camion < Veicolo
    attr_reader :posti

    def initialize (carburante, posti)
        super(carburante)
        @posti = posti
    end
end

Commentiamole inserendo una descrizione generica per ogni classe, e poi descriviamo tutti gli attributi e tutti i metodi; il risultato finale sarà:

# Implementazione di un veicolo generico utilizzato 
# come superclasse per tutti gli altri veicoli.
class Veicolo

    # quantità di carburante nel veicolo
    attr_reader :carburante

    # crea un nuovo veicolo con una determinata
    # quantità di carburante
    def initialize (carburante)
        @carburante = carburante
    end

    # rifornisce il veicolo di carburante
    def rifornimento (quantita)
        @carburante += quantita 
    end
end

# Implementazione di un carro armato, 
# ha come superclasse Veicolo.
class CarroArmato < Veicolo

    # numero di colpi presenti nel carro armato
    attr_reader :colpi

    # crea un nuovo carro armato con una data quantità
    # di carburante e di colpi
    def initialize (carburante, colpi)
        super(carburante)
        @colpi = colpi
    end
end

# Implementazione di un camion per il trasporto di soldati, 
# ha come superclasse Veicolo.
class Camion < Veicolo

    # numero di posti presenti nel camion
    attr_reader :posti

    # crea un nuovo camion con una data quantità
    # di carburante e di posti
    def initialize (carburante, posti)
        super(carburante)
        @posti = posti
    end
end

Salviamo tutto ed eseguiamo RDoc che, se chiamato senza argomenti, genera la documentazione per tutti i sorgenti Ruby e C (eventuali estensioni di Ruby) presenti nella directory corrente e nelle sue sotto-directory:

$ rdoc veicolo.rb

                         veicolo.rb: c..c.c.
Generating HTML...

Files:   1
Classes: 3
Modules: 0
Methods: 4
Elapsed: 0.176s

In Figura 4 vediamo la pagina di documentazione della classe Veicolo con in evidenza il pop-up del metodo rifornimento. I pop-up vengono chiamati attraverso i link collegati ai nomi dei metodi e mostrano i relativi stralci di codice.

Figura 4: documentazione con RdocDocumentazione con Rdoc

In Figura 5 vediamo invece il codice come è generato da RDoc chiamato con le opzioni -NS che vedremo dopo.

Figura 5: Documentazione con il comando Rdoc -NSDocumentazione con il comando Rdoc -NS

Ti consigliamo anche