Sprache Analyse ist ein grundlegender Schritt in das Erlernen einer neuen Programmiersprache - sogar eine vergleichsweise "einfachen" Sprache wie Ruby . Ein genauer Blick können Sie sehen, Unterschiede zwischen Programm- Elemente, die letztlich bestimmen, wie ein Ruby-Skript und verhält sich später , wie das Skript richtig zu verwenden. Während die "include" und "require" -Anweisungen ziemlich ähnlich erscheinen mag auf den ersten Blick , zeigt ein genauerer Blick wichtige Unterschiede. Die beiden können einfach verwechselt werden , aber vor allem, wenn Sie sich mit Programmiersprachen, die diese Konzepte in unterschiedlichen Begriffe zu definieren sind . Identification
"require" gibt eine Anweisung an Ruby- Klasse oder das Modul Datei aus dem Modul -Bibliothek Verzeichnis importieren , so dass Sie verweisen können und verwenden Sie den Code innerhalb des Moduls in Ihrem Programm. " Include" ist ein Beispiel für ein Rubin Präprozessordirektive als " mixin . " In ihm , verweisen Sie auf ein Modul und dadurch so integrieren Sie das Modul und einige oder alle seiner Aktionen in Ihrer Klasse Definition . Mit einem mixin - in diesem Fall ein "include" - ermöglicht es dem Programmierer zu erhöhen oder erweitern die Funktionalität einer Klasse
Syntax
Die Syntax Struktur gehören . und erfordern sind ähnlich, aber das Attribut, das Sie anhängen jeder ist anders. Die Syntax Struktur eine Include fügt das Modul name-Attribut auf die "include" -Richtlinie und umschließt das Attribut in doppelte Anführungszeichen , wie : include In einer require-Anweisung , Sie den Dateinamen anfügen Attribut ohne Anführungszeichen " modulename . " . Zum Beispiel: Dateinamen erfordern
Ort
erfordern Anweisung ist eine einzeilige Standalone -Anweisung, die meist kurz nach Öffnung des Programms Pfad Datei eingefügt . Richtlinie . Zum Beispiel, wenn Sie schreiben und speichern eine Methode namens " Week" in die Bibliothek und wollen das Verfahren in einem anderen Programm verwenden , fügen Sie die require-Anweisung :
# /usr /bin /rubyrequire "Woche" !
Obwohl weniger häufig, können Sie zusätzlich eine require-Anweisung innerhalb einer "if" bedingte Anweisung . Ein include ist immer Teil eines größeren Klassen-Definition . Je nachdem, wie Sie wollen , um die Methode zu verwenden , können Sie Variablen aus dem Verfahren um die Klasse selbst definieren weiter :
Klasse Decadeinclude Weekno_of_yrs = 10def no_of_monthsputs Woche :: FIRST_DAYnumber = 10 * 12puts numberend
< br >
Überlegungen
Unterschiede zwischen "include" und "require" kann Ihnen helfen, eine stabile und gut funktionierende Ruby-Skript . Verstehen Sie jedoch, dass , während Sie häufig verwenden die beiden zusammen , das ist nicht immer der Fall. Wenn Sie eine neue Klasse erstellen und beabsichtigen, Methoden aus einem Modul gespeichert werden, um das Modul -Bibliothek in der neuen Klasse zu integrieren , müssen Sie beides. Wenn Sie erstellen und verwenden Sie die Methode innerhalb des gleichen Programms , müssen Sie nur auf " include" es in Ihrer Klasse Definition .