[RAILS] Ruby Review 2
Über diesen Beitrag h1>
Dies ist eine Fortsetzung der vorherigen [Ruby Review 1](https://qiita.com/naoto911/items/f46b35f84cc80f59cac3).
Weitere Informationen zu "Zweck" und "Materialien" finden Sie in [Ruby Review 1](https://qiita.com/naoto911/items/f46b35f84cc80f59cac3).
① Notiz der Begriffe h1>
○ Überschreiben h3>
-Überschreiben von Methoden beim Erben von einer übergeordneten Klasse an eine untergeordnete Klasse
-Kinderklassen haben auch bei gleichnamigen Methoden Vorrang
○RoboCop
・ "Beachten Sie die Ruby-Regeln?" Software, die automatisch ermittelt
・ Der Zweck ist, dass es so viele Regeln und Vorschriften gibt, dass die Sonne untergeht, wenn sie manuell verarbeitet wird.
○ Objekt h3>
・ Oberbegriff für numerische Werte, Verarbeitung usw.
・ Alle Aggregate in Ruby werden als Objekt bezeichnet
・ Die Hierarchie rückt in der Reihenfolge Klasse → Methode → Wert vor
○ Destruktive Bearbeitung h3>
-Speichern des Ergebnisses der Wertumschreibung usw.
-Add "!" Bis zum Ende des Codes
・ Wenn dies nicht erfolgt, kehrt der gespeicherte Wert zum ursprünglichen Wert zurück.
○ Ausdruckserweiterung h3>
-Typ des Schreibens, wenn eine Variable in der Ausgabe einer Zeichenfolge enthalten ist
qiita.rb
name = 'naoto'
puts "my name is #{name}"
・ # {Name} ist die Ausdruckserweiterung
・ Wichtig ist, dass Sie es in Doppelbeschichtung ("") </ font> einschließen.
・ Wenn dies ausgeführt wird, wird Folgendes angezeigt.
qiita.rb
my name is naoto
○ Dynamische Eingabe h3>
・ Notation, für die keine Typspezifikation erforderlich ist
-In der normalen Programmierung wird der Typ beschrieben und der Wert wird gespeichert, wenn die Variable deklariert wird.
・ Ruby kann plötzlich Werte speichern
○ Literal h3>
・ Dinge, die direkt mit Rubin beschrieben werden können
・ Bsp.) Zahlen, Zeichen, Arrays, Hashes usw.
○ Kapselung h3>
- Schutzmaßnahme, die den Zugriff auf Methoden von außerhalb der Klasse verbietet
・ Eines der objektorientierten Konzepte
② Modul h1>
-Konstanten sollten eine Klasse als eine Menge definieren
・ Im Fall von Duema entsprechen Konstanten Karten, Klassen Packs und Module Boxen.
-Kann nicht zwischen Modulen vererbt werden
・ Instanzerstellung ist nicht möglich
⇨ Self ist erforderlich, da Instanzmethoden nicht verwendet werden können
(Selbst. Indem Sie den Prozess als Methodennamen beschreiben
Instanzname.Methodenname ⇨ Modulname.Methodenname und neu zu schreibendes Bild)
qiita.rb
module Driver
def self.run
puts 'Run'
end
def self.stop
puts 'Stop'
end
end
Driver.run
Driver.stop
③ Ausnahmebehandlung h1>
- Unterbrechen Sie den Prozess, indem Sie den Prozess beschreiben, der wahrscheinlich einen Fehler verursacht, und dessen Reaktion.
-Schreibe "Verarbeitung nach Unterbrechung" und "Nachricht" in Anfang ~ Ende
qiita.rb
puts '--- Please enter an integar. ---'
i = gets.to_i
begin
puts 10/i
rescue => ex
puts 'Error!'
puts ex.message
puts ex.class
ensure
puts 'end'
end
[Erläuterung]
・ Beginnen ~ Ende
・ Der Fluss wird bis zum letzten Fehlerpunkt fortgesetzt
・ Rescue => ex
⇨ Beschreiben Sie hier die Verarbeitung, wenn ein Fehler auftritt
· Dafür sorgen
⇨ Beschreiben Sie den zuletzt auszuführenden Prozess, unabhängig davon, ob eine Ausnahme auftritt