Differenze tra "Include" e "richiedono" in Ruby

May 28

Differenze tra "Include" e "richiedono" in Ruby


analisi del linguaggio è un passo fondamentale per imparare ogni nuovo linguaggio di programmazione - anche un linguaggio relativamente "semplice" come Ruby. Uno sguardo da vicino ti aiuta a vedere le differenze tra elementi del programma che alla fine determinano il modo in uno script di Ruby si comporta e più tardi, come utilizzare lo script in modo corretto. Mentre la "include" e "richiedono" affermazioni possono sembrare molto simili a prima vista, uno sguardo più attento rivela differenze fondamentali. I due possono essere facilmente confuso, però, soprattutto se si ha familiarità con i linguaggi di programmazione che definiscono questi concetti in termini diversi.

Identificazione

"Richiedi" dà Rubino un'istruzione di importare file di classe o modulo dalla cartella libreria di moduli in modo da poter fare riferimento e utilizzare il codice all'interno del modulo nel programma. "Include" è un esempio di una direttiva rubino preprocessore chiamato "mixin". In esso, si fa riferimento a un modulo e facendo in modo di integrare il modulo e alcune o tutte le sue azioni nella vostra definizione di classe. Utilizzando un mixin - in questo caso, un "include" - consente al programmatore di aumentare o estendere la funzionalità di una classe.

Sintassi

La struttura della sintassi di include e require sono simili, ma l'attributo si accoda ad ogni è diverso. La struttura della sintassi di un include aggiunge l'attributo nome del modulo per la direttiva "include" e racchiude l'attributo tra virgolette doppie, come ad esempio: include ". Modulename" In una dichiarazione richiede, aggiungete l'attributo nome del file senza usare le virgolette. Per esempio: richiedere il nome del file.

luogo

Un richiedono dichiarazione è una dichiarazione standalone una riga che è più spesso inserita subito dopo la direttiva di file percorso di apertura del programma. Ad esempio, se si scrive e si salva un metodo chiamato "Settimana" per la libreria e si desidera utilizzare il metodo in un altro programma, aggiungere la richiedono dichiarazione:

! / Usr / bin / ruby

richiedono "Settimana"

Anche se meno comune, è anche possibile effettuare una dichiarazione richiedono all'interno di un "if" condizionale. Un comprendono è sempre parte di una definizione di classe più grande. A seconda di come si intende utilizzare il metodo, è possibile includere variabili dal metodo per definire ulteriormente la classe:

classe Decade
includere settimana
no_of_yrs = 10
no_of_months def
mette Settimana :: FIRST_DAY
numero = 10 * 12
mette il numero
fine

considerazioni

Differenze tra "include" e "Richiedi" può aiutare a creare uno script solido e ben funzionante Ruby. Capire, tuttavia, che mentre si usano spesso le due cose insieme, questo non è sempre il caso. Ogni volta che si crea una nuova classe e l'intenzione di integrare i metodi da un modulo salvato nella libreria di modulo nella nuova classe, è necessario utilizzare entrambi. Se si crea e utilizza il metodo all'interno dello stesso programma, avete solo bisogno di "includere" nel vostro definizione della classe.