Verwenden von Klassen in CoffeeScript

Inhaltsverzeichnis
Eines der wichtigsten Dinge, die uns bei der Definition unserer Anwendung helfen, ist die Verwendung von Klassen, da wir mit ihnen Objekte definieren können, die dem realen Leben nachempfunden sind und deren Übergang in die digitale Welt viel einfacher wird.
In KaffeeScript Eine Klasse zu erstellen und zu instanziieren ist sehr einfach, tatsächlich ist ihre Syntax so minimalistisch, dass wir uns leicht daran erinnern können, anstatt eine Definition von Klassen direkt in zu erstellen JavaScript Es ist etwas umständlicher und das kann länger dauern als erwartet.
AnforderungenUm dieses Tutorial abzuschließen, benötigen wir eine funktionsfähige Installation von KaffeeScript, wir brauchen auch Berechtigungen, um Dateien zu schreiben und auszuführen KaffeeScript auf dem Computer, auf dem wir das Tutorial durchführen. Wir brauchen einen Texteditor, um den Code schreiben zu können, den wir ausführen werden, damit wir etwas Beständiges und nicht alles in der Konsole haben.
Eine Klasse ist nichts anderes als ein Name und einige Eigenschaften, die ihr Verhalten definieren, basierend auf diesem Konzept können wir eine Klasse definieren in KaffeeScript wie folgt:
 Klasse Student
Das ist alles was wir tun müssen, auf einfache Weise haben wir unsere erste Klasse bereits eingebaut KaffeeScriptWas passiert nun, wenn wir eine Eigenschaft einschließen möchten, um sie verwenden zu können, weil wir einfach eine Instanz erstellen und diese Eigenschaft hinzufügen, sehen wir uns Folgendes an:
 student = neuer Student () student.name = "Carolina"
Sehen wir uns nun an, wie im folgenden Bild als KaffeeScript transformiere all unseren Code in JavaScript pure beim Kompilieren, erinnern wir uns an den Befehl dafür, der wäre Kaffee -c Dateiname.Kaffee:

Wir bemerken dann, wie die Syntax von JavaScript pure ist viel umfangreicher und komplexer als die drei Codezeilen, die wir gemacht haben KaffeeScript, das ist die Kraft dieser Sprache, die uns wirklich unserer Anwendung widmen lässt.
Eines der Dinge, die am häufigsten verwendet werden Objekt orientierte Programmierung ist das Hinzufügen von Methoden zu Klassen, da diese uns zusätzlich zu den Eigenschaften eine Vorstellung davon geben, was unser Objekt kann oder nicht kann, zum Beispiel wenn wir mit dem fortfahren Schülerklasse Wir können eine Methode dafür erstellen, in der sein Objekt eine Nachricht ausdrückt, mal sehen, wie man das erreicht:
 Klasse Schülersprech: -> console.log "Hello World!"
Wenn wir dann ein Objekt derselben Klasse erstellen, könnten wir dieselbe Methode bereits verwenden. Zum Beispiel:
 student = neuer Studentstudent.talk ()
Damit stellen wir sicher, dass unsere Methode viele Male verwendet werden kann, solange wir mehrere Instanzen machen, was unserem Code eine der Eigenschaften der Objektorientierung verleiht, nämlich Wiederverwendung. Jetzt werden wir unseren Code so umdefinieren, dass er Argumente akzeptiert. Damit können wir viel mehr als einen einfachen Druck über die Konsole tun, mal sehen:
 class Student talk: (name) -> console.log "Hallo # {name}!" student = new Studentstudent.talk ("Carolina")
Mal sehen, wie sich das alles in Code übersetzt JavaScript wenn wir kompilieren:

Etwas Wichtiges, das wir beim Konstruieren von Objekten, die von Klassen abgeleitet sind, tun können, ist, ihren Wert während ihrer Lebensdauer in unserer Anwendung zu erhalten, damit wir Komponenten erstellen können, die über Methoden auf ihre Eigenschaften zugreifen und sie so in verschiedenen Teilen unserer Anwendung verwenden können.
Um eine Eigenschaft innerhalb von . zu manipulieren KaffeeScript wir müssen nur die benutzen @ Operator gefolgt vom Namen der zu verwendenden Eigenschaft, der wie folgt codiert werden kann:
 class Student speak: () -> console.log "Hallo # {@ name}!" student = new Student () student.name = "Carolina" student. speak ()
Sehen wir uns an, wie das aussieht, wenn es direkt in der Konsole ausgeführt wird:

Wenn dies erledigt ist, sehen wir uns an, wie unser kompilierter Code aussieht JavaScript rein:

Der Unterschied in der Menge an Code ist bemerkenswert und nur um etwas so Einfaches zu tun, wie eine Klasse mit einer Methode zu definieren, sie dann zu instanziieren und die erstellte Methode aufzurufen.
Es gibt Gelegenheiten, in denen die Definition unserer Klasse dazu führt, dass wir Methoden erstellen, die in anderen aufgerufen werden müssen, um eine weniger repetitive und funktionale Programmierung zu erreichen KaffeeScript.
 class Student speak: () -> console.log "Hallo mein Name ist: # {@ name}!" @knowAge () knowAge: () -> console.log "Mein Alter ist: # {@ age}" student = new Student () student.name = "Vanessa" student.age = „23“ student.talk ()
Sehen wir uns an, wie wir in der Konsole das Ergebnis der Ausführung des vorherigen Codes sehen können:

Bisher haben wir die Eigenschaften des Objekts nach seiner Initialisierung definiert, obwohl dies eine praktikable Praxis ist, wenn wir Objekte mit vielen Eigenschaften erstellen müssen, kann dies schwierig zu verwalten sein.
In Fällen, in denen wir mit vielen Objekten und vielen Eigenschaften arbeiten müssen, ist es am besten, die Kraft von . nutzen zu können BauherrenMit ihnen können wir unserem Objekt direkt Leben einhauchen, ohne die verschiedenen Eigenschaften "manuell" definieren zu müssen. Verwenden Sie zum Definieren eines Konstruktors eine Struktur ähnlich der folgenden:
 class Student-Konstruktor: (Name, Alter) -> @name = Name @age = Alter speak: () -> console.log "Hallo mein Name ist: # {@ name}!" @saberEdad () saberEdad: () -> console.log "Mein Alter ist: # {@ alter}"
Wenn wir uns die Definition der Klasse ansehen, ist der Konstruktor nichts anderes als eine Methode, das Interessante daran ist, dass wenn er aufgerufen wird Baumeister bereits KaffeeScript er weiß, dass es sich um eine spezielle Methode für unsere Klasse handelt, und wird sie auch so behandeln. Wenn wir die Instanzen unserer Klasse erstellen, müssen wir sie daher nicht explizit aufrufen. Sehen wir uns ein Beispiel an, wie wir jetzt unsere Objekte definieren können:
 student = neuer Student ("Carolina", "26") student.Speaking ()
Wir sehen, dass wir die Eigenschaft nicht definieren mussten Name noch das Eigentum Alter, übergeben wir die Werte einfach in der Reihenfolge, in der wir sie in unserer Klasse definieren, an den Konstruktor und er erledigt den Rest für uns. Natürlich ist dieses Beispiel sehr einfach gehalten, aber stellen wir uns vor, wir müssen Hunderte von Objekten mit Werten instanziieren, die aus einer Persistenzquelle wie einer Datenbank stammen.
Sehen wir uns im folgenden Bild an, wie unser neuer Code aussieht, nachdem er kompiliert und übersetzt wurde JavaScript rein:

In diesem Fall sehen wir das JavaScript verwendet nicht das Schlüsselwort Baumeister beim Konstruieren der Methode, die wir in . definieren KaffeeScript, an dieser Stelle beginnen wir auf direktere Weise den Unterschied zwischen den Sprachen zu sehen, zusätzlich zu dem, was wir in etwa 12 oder 13 Codezeilen gelöst haben, in JavaScript mehr werden als 20 Zeilen, etwas zu berücksichtigen, wenn wir große Anwendungen machen.
Einer der Vorteile der objektorientierten Programmierung besteht darin, dass wir Nachlass von Klassen, das bedeutet, neue Klassen erstellen und die Funktionalität von Klassen übernehmen zu können Eltern, damit reduzieren wir die Anzahl der Elemente, die wir von Grund auf neu erstellen müssen, da wir beim Vererben alle Methoden und Eigenschaften der Elternklasse übernehmen, in der Kindklasse oder der neuen Klasse müssen wir nur die Methoden und Eigenschaften definieren, die sind exklusiv dafür.
Vielleicht ist dieses Konzept für Programmieranfänger etwas verwirrend oder komplex, aber wenn wir uns das folgende Beispiel ansehen, werden wir sicherlich ein wenig klarer, was wir erreichen können.
 class Person zu kennen Alter: () -> console.log "Mein Alter ist: # {@ alter}" class Student erweitert Person zu sprechen: () -> console.log "Hallo # {@ name}!" student = new Student () student.age = "30" student.name = "Jon" student.knowAge ()
Analysieren wir sehen, wie wir eine Klasse haben Person und dieser hat eine methode WissenAlter () mit dem wir per Konsole das Alter der Instanz ausgeben, wenn wir die Klasse erstellen Student wir sagen ihm, dass er erbt von Person also implizit hat unsere neue Klasse bereits die Methode WissenAlter () auch wenn es nicht in der Klasse definiert ist.
Sehen wir uns im folgenden Bild an, wie unser neuer Code aussieht, wenn er kompiliert und übersetzt wurde JavaScript rein:

Wir können dann sehen, dass unser Code JavaScript ist ziemlich komplex, um die Vererbung zu definieren, aber bei der Verwendung von KaffeeScript seine Optimierung ist extrem hoch. Wenn wir das Dienstprogramm sehen, stellen wir uns sehr komplexe Klassen als Anwendungskomponenten vor, die uns in unseren neuen Klassen mehrere Funktionalitäten bieten können, ohne mehr als den spezifischen Code schreiben zu müssen, den wir wirklich brauchen.
Damit haben wir dieses Tutorial beendet, da wir die Welt der Klassen in KaffeeScript Es ist nicht so komplex, wie es auf den ersten Blick schien, es liegt alles in der Kenntnis der Grundlagen und Philosophie der objektorientierten Programmierung. Was wir versichern können ist, dass die Verwendung von KaffeeScript als Sprache macht die Komplexität der Verwendung von Klassen in JavaScript sinkt erheblich, da seine Syntax viel näher an Sprachen wie Python oder Rubin sie machen es viel eleganter und weniger verwirrend beim Lesen des entwickelten Codes.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave