[RUBY] Rails Tutorial Kapitel 4 Lernen

Wo ich in Kapitel 4 des Rails-Tutorials gedacht habe (.´ ・ ω ・)

Ich denke, das liegt daran, dass es mit den erforderlichen Kenntnissen und Überprüfungen ausgegeben wird. Ich habe nicht wirklich über dieses Kapitel nachgedacht (.´ ・ ω ・). Das Video und der Text waren sehr leicht zu verstehen.

Schienen Kapitel 4 Überprüfung einfacher Inhalte

Kapitel 4 ist Ruby mit Rails-Geschmack. Dies ist das erste Mal für eine so leicht verständliche Objektorientierung. Ich habe auch von Python von Progate und Ruby von TECH :: CAMP gelernt. .. .. (゜ - ゜) Hmm, ich habe mich gefragt, ob objektorientiert lecker ist.

Gut erklärt ... Alle Dinge sind Objekte. Ein Objekt für Menschen, ein Objekt für Autos Es gibt eine Person namens John. John gehört zu einer Person. Menschen haben Faktoren wie Beruf, Geschlecht und Alter. .. .. Es fühlt sich an, als ob der Code gemäß diesem Inhalt geschrieben wurde (.´ ・ ω ・)?

Um die Objektorientierung in meinen Worten zu erklären ...

"String"es gibt.
Wenn objektorientiert geschrieben,
"12345".length #Mit dieser Methode können Sie Zeichen zählen.
"12345".to_i   #Mit einer Methode können Sie eine Zeichenfolge in eine Ganzzahl konvertieren.

.Längenmethode.to_Was kann ich verwenden, obwohl die i-Methode nicht definiert ist??
⇒ Weil die Antwort objektorientiert geschrieben ist.

noch,(.. ´ ・ ω ・)Hmm?ich fühle mich

Tatsächlich"String"と書けばStringと認識されていますが、
String.new("String")Ist eine Abkürzung für den Code.
String(String)Klassenobjekt"String"Es bedeutet zu machen.

Zeichenkette im Voraus(String)In der Klasse werden verschiedene Methoden bereitgestellt.
String.new("")Da das in erstellte Objekt ein Zeichenfolgenobjekt ist, können die vordefinierten Methoden verwendet werden.

In der String-Klasse.to_Ich Methode ist vorbereitet, so
Auch die neu generierte Zeichenkette.to_Dies bedeutet, dass Sie verschiedene Methoden wie i verwenden können.

Der größte Vorteil der Objektorientierung ist
Indem Sie immer eine Zeichenfolge als Zeichenfolgenobjekt generieren.to_Es ist möglich, Methoden wie i zu teilen.('ω')Nein
Wenn Sie der Zeichenfolgenklasse eine neue Methode hinzufügen, kann diese mit allen Zeichenfolgenobjekten verwendet werden.
Als ich bei Progate gelernt habe(.. ´ ・ ω ・)Hmm?Es war, aber jetzt finde ich es bequem(´-ω-`)

Klassen und Vererbung

"String"Gehört zur String-Klasse.
Um zu sehen, wo es hingehört.Sie können die Klassenmethode verwenden.

s = "String"

s.class
⇒ String

Tatsächlich gehört die String-Klasse auch zur Object-Klasse.
>> s.class.superclass             # superclass :Untersuchen Sie die übergeordnete Klasse
=> Object

Die Object-Klasse gehört auch zu einer höheren Klasse.
>> s.class.superclass.superclass 
=> BasicObject

Gehört BasicObject zu einer höheren Klasse? Die Antwort war nein. Es bedeutet, dass Null nicht existiert.
>> s.class.superclass.superclass.superclass
=> nil

Der Grund, warum ich das tue, ist, die Funktion zu übernehmen.('ω')Nein
Unter der Object-Klasse String(String)・ Ganzzahl(ganze Zahl)・ Array(Array)Es gibt Klassen und so weiter.
Arrays, Ganzzahlen, Strings,.Sie können die Längenmethode verwenden, richtig?
Es ist schwer, jeden der drei hinzuzufügen.
Wenn Sie es also zu Object hinzufügen und in niedrigeren Klassen verfügbar machen, können Sie Zeit und Mühe sparen.

Das Erben einer in einer höheren Klasse definierten Methode auf diese Weise an eine niedrigere Methode wird als "Vererbung" bezeichnet.('ω')Nein

#class <Name der Klasse>Sie können mit eine neue Klasse definieren.
>> class Word < String             # <String kann die String-Klasse erben('ω')Nein
>>   #Gibt true zurück, wenn die Zeichenfolge kreisförmig ist
>>   def palindrome?        #Sie können eine neue Methode mit def definieren.
>>     self == self.reverse        #self repräsentiert die Zeichenfolge selbst
>>   end
>> end
=> :palindrome?

Ruby-Grundlagen

$ rails console

#Addition von ganzen Zahlen
>> 17 + 42
=> 59

#String-Verkettung
>> "foo" + "bar"    #String-Verkettung
=> "foobar"

#Variablenzuordnung
>> first_name = "Michael"
=> "Michael"

#Ausdruckserweiterung von Zeichenketten Dies ist praktisch('ω')Nein, ich benutze es auch in Rails.
>> "#{first_name} Hartl"
=> "Michael Hartl"

#Ausdruckserweiterung('ω')Nein
>> first_name = "Michael"
=> "Michael"
>> last_name = "Hartl"
=> "Hartl"
>> first_name + " " + last_name    #Kombinieren Sie mit einem Leerzeichen zwischen dem Nachnamen und dem Vornamen
=> "Michael Hartl"
>> "#{first_name} #{last_name}"    #Join mit Ausdruckserweiterung(Genau das gleiche wie oben)
=> "Michael Hartl"

#String-Ausgabe(puts)
>> puts "foo"     #Geben Sie eine Zeichenfolge aus
foo
=> nil #Der Rückgabewert ist null "nichts"

#String-Ausgabe(print)
>> print "foo"    #Bildschirmausgabe der Zeichenkette(Gleich wie Puts, aber keine Pausen)
foo=> nil

>> print "foo\n"  # \n ist ein Zeilenumbruch. Dies erzeugt die gleiche Ausgabe wie Puts.
foo
=> nil

#''Mit einfachem Zitat""Doppeltes Zitat
>> '#{first_name} #{last_name}'    # ''Der Ausdruck kann nicht erweitert werden.
=> "/#{first_name} #{last_name}"

>> "#{first_name} #{last_name}"    # ""Kann in Ausdrücke erweitert werden.
=> "Michael Hartl"

# empty?Methode
>> "foobar".empty?
=> false
>> "".empty?
=> true

#Bedingte Verzweigung(if)・.include?("String")・.nil?Methode
>> if s.nil?
>>   "The variable is nil"
>> elsif s.empty?
>>   "The string is empty"
>> elsif s.include?("foo")
>>   "The string includes 'foo'"
>> end
=> "The string includes 'foo'"


#Van!Van!Erzwungener logischer Wert(True/False)Ausgabe mit
>> !!nil #Ruby-Objekt ist nur für Null falsch
=> false

>> !!0  #Alle anderen Ruby-Objekte sind wahr
=> true

Ist das ungefähr die Hälfte des Inhalts? Es gibt ziemlich viel Volumen. Wichtige Inhalte wie Arrays und Hashes folgen ... Ich frage mich, ob es urheberrechtlich geschützt ist, wenn ich alles schreibe. Wenn ich also über Symbole schreibe, ist es vorbei ('ω')

Über Symbole, Ganzzahlen und Zeichenfolgen

#Dies ist ein beschriftetes Array namens Hash.
user1 = { "name"=>"test_user", "email" => "[email protected]" }
user2 = { "name"=>"test_user", "email" => "[email protected]" }

user1 == user2
=> false

Warum ist es falsch, obwohl der Inhalt der gleiche ist?('ω')Nein
Eigentlich Objekt_Das Ding namens id ist anders, also überprüfen Sie bitte, ob es anders ist.
user1.object_id 
user2.object_id

Dieses Objekt_Die ID entspricht dem Ort, an dem die Daten gespeichert werden.
Versuchen Sie es auch mit einer Schnur. Objekt jedes Mal, wenn Sie laufen_Die ID wird sich ändern.
"name".object_id
"name".object_id
"name".object_id

Als nächstes kommt die Nummer. Wie wäre es mit den Zahlen? Die Zahlen sind immer das gleiche Objekt_Es wird id.
1.object_id
1.object_id
1.object_id

Endlich ... ein Symbol. Symbole sind sowohl Objekte als auch Zahlen_Die ID ändert sich nicht.
:name #:+Eine Zeichenkette heißt Symbol, aber Objekt_Stellen Sie sich das als etwas vor, das mit id gekennzeichnet ist.

Der Grund dafür ist, dass es schneller ist als die Verwendung einer Zeichenfolge.('ω')Nein
Daher wird der Markenname des Hash dem Symbol gegenüber der Zeichenfolge vorgezogen.

◎ user = { :name=> "test_user" , :email => "[email protected]" }
△ user = { "name"=>"test_user", "email" => "[email protected]" }

Es kann noch einfacher geschrieben werden.
user = { :name=> "test_user" , :email => "[email protected]" }
user = { name: "test_user", email: "[email protected]" }

Benutzerdefinierter Helfer

Wenn Sie die Methode selbst definieren, schreiben Sie sie in eine Datei namens helper ('ω').

app/helpers/application_helper.rb


module ApplicationHelper

  #Gibt den vollständigen Titel pro Seite zurück.
  def full_title(page_title = '')
    base_title = "Ruby on Rails Tutorial Sample App"
    if page_title.empty?
      base_title
    else
      page_title + " | " + base_title
    end
  end
end

Impressionen

Kapitel 4 ist sehr reich und interessant. Sie müssen Ruby kennen, um verschiedene Methoden selbst definieren zu können. Es gibt verschiedene Methoden, aber ich erinnere mich nur an wenige. Nachdem Sie Rails gelernt haben, müssen Sie Ruby richtig lernen ... Hmm, die Spitze ist lang und lang (^ ω ^) ...

Recommended Posts

Rails Tutorial Kapitel 4 Lernen
Rails Tutorial Kapitel 1 Lernen
Rails Tutorial Kapitel 2 Lernen
Schienen-Tutorial Kapitel 6
Schienen-Tutorial Kapitel 1
Schienen-Tutorial Kapitel 7
Schienen-Tutorial Kapitel 5
Schienen-Tutorial Kapitel 10
Schienen-Tutorial Kapitel 9
[Rails] Lernen mit Rails Tutorial
Rails Tutorial Memorandum (Kapitel 3, 3.1)
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 10
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 7
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 4
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 6
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 5
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 2
Rails Tutorial Kapitel 0: Vorbereitende Grundkenntnisse 5
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 3
Rails Tutorial 6. Ausgabe Lernzusammenfassung Kapitel 8
Schienen Tutry
Schienen Tutorial
Schienen Tutry
[Rails Tutorial Kapitel 4] Ruby mit Rails-Geschmack
Schienen Tutry
Schienen Tutorial
Schienen Tutorial
[Rails Tutorial Kapitel 5] Erstellen Sie ein Layout
Tutorial zum Kauen der Schienen [Kapitel 2 Spielzeuganwendung]
Rails Tutorial (4. Ausgabe) Memo Kapitel 6
Rails Tutorial Test
Rails Tutorial Memorandum 1
Rails Lerntag 3
Rails Tutorial Memorandum 2
Rails Lerntag 4
Schienen lernen Tag 2
[Anfänger] Rails Tutorial
Schienen Lerntag 1
Kapitel 4 Rails Flavoured Ruby
Schienen Tutorial Cheet Sheet
Rails Tutorial Kapitel 1 Von Null bis Bereitstellung [Try]
Schienen lernen 2. Tag 2
Schienen lernen Tag 1 Teil 3
Schienen lernen Tag 3 Teil 2
Kauen der Schienen Tutorial [Kapitel 3 Erstellen fast statischer Seiten]
Schienen lernen Tag 1 Teil 2
Schienen Tutorial Fighting Record III
Beheben Sie Gem :: FilePermissionError, wenn Sie Gem Install Rails ausführen (Rails Tutorial Kapitel 1).
Ruby on Rails5 - Schnellübungshandbuch 5.2 Kompatibel Kapitel2
Ruby on Rails5 - Schnellübungshandbuch 5.2 Kompatibel Kapitel3
Rails Tutorial 4. Ausgabe: Kapitel 1 Von Null bis Bereitstellung