Erfassen Sie Ihre Fortschritte
Trailhead-Startseite
Trailhead-Startseite

Grundlegende Kenntnisse im Überblick

Lernziele

Nachdem Sie diese Lektion abgeschlossen haben, sind Sie in der Lage, die folgenden Aufgaben auszuführen:
  • Beurteilen, ob Sie wirklich für Aura-Komponenten bereit sind
  • Beschreiben, was Aura-Komponenten sind
  • Angeben, wo und warum Aura-Komponenten eingesetzt werden

Aura-Komponenten für den Visualforce-Entwickler

Dieses und auch weitere Module in diesem Trail richten sich an Entwickler, die in Visualforce erfahren sind und ihre Lightning Platform-Kenntnisse dazu nutzen möchten, sich schneller mit Aura-Komponenten vertraut zu machen. Vielleicht haben Sie einen Blick auf das Modul Aura-Komponenten – Grundlagen mit seinen neun Lektionen (!) geworfen und sich dann gesagt, "Ich habe hier Aufgaben zu erledigen und kann mich nicht ewig in Trailhead aufhalten. Gibt es keine schnellere Möglichkeit?"

Dieses Modul und dieser Trail sind genau das Richtige für Sie.

Hier vorab noch ein Hinweis. Das Programmiermodell für Aura-Komponenten ist größer, anspruchsvoller und komplexer als Visualforce. Es gibt also auch mehr darüber zu lernen, und Ihr Visualforce-Hintergrund ist dabei nicht immer von Vorteil.

Hinweis

Hinweis

Ab dem Release Spring'19 (API-Version 45.0) können Sie Lightning-Komponenten mithilfe von zwei Programmiermodellen erstellen: dem Modell "Lightning-Webkomponenten" und dem ursprünglichen Modell "Aura-Komponenten". Lightning-Webkomponenten und Aura-Komponenten können auf einer Seite nebeneinander vorhanden sein und interagieren. In diesem Abschnitt werden Aura-Komponenten behandelt. Weitere Informationen zu Lightning-Webkomponenten finden Sie unter Einführung in Lightning-Webkomponenten.

Lassen Sie uns dies anschaulich erklären. Kennen Sie das Leiterspiel mit seinen Leitern und Schlangen? In unserem Beispiel verwenden wir Leitern und Rutschen. Ziel des Spiels ist, im Zickzack ans obere Ende des Spielbretts zu gelangen. Auf dem Weg dahin können Sie bei Leitern landen, die Sie nach oben, also näher zum Ziel bringen, oder aber bei Rutschen, über die Sie abwärts, in Richtung Ausgangspunkt gleiten. Um schnell nach oben ins Ziel zu gelangen, sollten Sie möglichst immer die Leitern nutzen und die Rutschen meiden.

Jetzt stellen wir uns vor, dass das Erlernen von Aura-Komponenten auf einem ähnlichen Spielbrett abläuft. Die Leitern nach oben sind Ihre Lightning Platform- und Visualforce-Kenntnisse, die Rutschen sind Dinge, die Sie noch nicht wissen, oder Bereiche, auf die sich Ihr Visualforce-Wissen nicht übertragen lässt. Da Sie sich mit Lightning Platform bereits auskennen, erwarten Sie wahrscheinlich, dass das Spielbrett voller Leitern ist, die Ihr Vorankommen beschleunigen.

Wie Sie sich das Erlernen von Lightning Components möglicherweise vorstellen

Aber manche Dinge, die Sie über Visualforce wissen, sind keine Leitern. Aura-Komponenten sind deutlich anders. Wenn Sie auf der Grundlage von Visualforce Annahmen treffen, können sich Ihre Vorkenntnisse als Rutschen entpuppen. Das macht das Vorankommen auf dem Spielbrett ein bisschen anspruchsvoller.

Wie das Erlernen von Lightning Components wirklich aussieht

Das Ziel dieses und der anderen Module in diesem Trail ist es, Sie dabei zu unterstützen, möglichst viele dieser Rutschen zu vermeiden. Wir sprechen hier genau von 22 Rutschen, die mit diesem Symbol gekennzeichnet sind: Rutsche!.

Behalten Sie allerdings im Hinterkopf, dass Sie mit dem Modul Aura-Komponenten – Grundlagen noch viele weitere Rutschen vermeiden können. Falls Sie an scheinbar kleinen Dingen scheitern und auf der Rutsche landen, sollten Sie überlegen, ob Sie Ihre Zeit nicht doch besser in das umfangreichere Modul investieren sollten. Das ist nur so ein Gedanke. (Wir haben ein Symbol für 26 weitere Tipps wie diesen: Leiter!.)

Grundlagen: Was sind Aura-Komponenten?

Wenn wir gefragt werden, was Aura-Komponenten sind, lautet die Antwort meist so:

Das Programmiermodell für Aura-Komponenten ist ein Benutzeroberflächen-Framework für die Entwicklung von dynamischen Webanwendungen für Mobil- und Desktop-Geräte. Mit diesem modernen Framework lassen sich skalierbare Einzelseitenanwendungen mit dynamischen, reaktionsfähigen Benutzeroberflächen für Lightning Platform-Anwendungen erstellen. Es verwendet JavaScript auf Clientseite und Apex auf Serverseite.

Lassen Sie uns kurz innehalten, damit die beeindruckende Aneinanderreihung von Schlagwörtern in dieser Beschreibung wirken kann…

OK. Das genügt. Wie lässt sich dies umformulieren, damit sich Visualforce-Entwickler konkret etwas darunter vorstellen können? Der wichtigste Kernpunkt ist, dass Sie clientseitigen JavaScript-Code schreiben und die Verarbeitung der Benutzeroberfläche so weit wie möglich auf Clientseite stattfindet, bis Sie Daten aus Salesforce abrufen oder darin speichern müssen.

Im nächsten Modul dieses Trails Aura-Komponenten – Kernkonzepte steigen wir voll in diese Thematik ein. Falls Sie mehr über die Beweggründe wissen möchten, aus denen wir Aura-Komponenten so konzipiert haben, erfahren Sie dies in der Lektion "Überlegungen bei der Entwicklung der Benutzeroberfläche” im Modul "Entwickeln für Lightning Experience" (Links dazu finden Sie im Abschnitt "Ressourcen").

Grundlagen: JavaScript

Bei Visualforce war JavaScript optional. Bei Aura-Komponenten ist das anders. Das Programmiermodell für Aura-Komponenten wurde speziell dafür konzipiert, dass Sie mehr Aufgaben auf Clientseite, in JavaScript, erledigen. In dieser Hinsicht unterscheidet sich Lightning Components absichtlich und entschieden von Visualforce. (Genauere Einzelheiten dazu sparen wir uns für das nächste Modul in diesem Trail auf.)

Es ist praktisch unmöglich, eine Aura-Komponente zu schreiben, die kein JavaScript enthält, und die meisten realen, nicht gerade trivialen Komponenten enthalten Dutzende oder gar Hunderte Zeilen an JavaScript-Code. Sie müssen viel JavaScript-Erfahrung haben, um selbst eine Aura-Komponentenanwendung mit nur moderatem Funktionsumfang zu schreiben.

Auf den ersten Blick wirkt JavaScript wie viele Sprachen, mit denen Sie vielleicht vertraut sind, wie etwa Apex. Ist dies eine Leiter? Nein, eine Rutsche!. Es gibt zahlreiche Unterschiede, einschließlich Objekte und Vererbung, Bereichsregeln, Eigenheiten bei "True"- und "False"-Bewertungen etc., mit denen Sie sich wirklich befassen müssen.

Was genau heißt "erfahren"? Unserer Meinung nach sollten Sie mit allen im ersten Kapitel von Speaking JavaScript beschriebenen Konzepten vertraut sein. (Das Kapitel können Sie praktischerweise kostenlos im Internet lesen.) Insbesondere sollten Sie unserer Ansicht nach folgende Bereiche uneingeschränkt beherrschen:

  • Variablendeklaration und Bereichsregeln
  • Regeln für den Übereinstimmungsvergleich sowie Beurteilung von "true" und "false"
  • JavaScript-spezifische Bedeutung von "Objekt" und "Vererbung" (nicht mit Apex identisch)
  • Unterschied zwischen "undefined" und "null" sowie wie und wann sie überprüft werden sollten
  • Behandlung von Funktionen wie Variablen einschließlich ihrer Übergabe als Parameter an andere Funktionen (Rückrufe)
  • Und wenn Sie das Framework wirklich beherrschen möchten, müssen Sie das Konzept der Closure (Funktionsabschluss) verstehen oder zumindest soweit damit vertraut sein, dass Sie das IIFE-Muster (Immediately Invoked Function Expression, sofort ausgeführter Funktionsausdruck) erkennen.

Kurz und schmerzlos: Wenn die Verwendung von JavaScript-Ausdrücken und -Eigenheiten Ihnen nicht flüssig von der Hand geht und Sie nicht schon mehrere Hundert Zeilen in JavaScript geschrieben haben, können wir Ihnen nur raten, sich nochmals auf den Hosenboden zu setzen und zu lernen.

Leiter! Ganz besonders möchten wir Ihnen den hervorragenden Videokurs Getting Started with JavaScript in Salesforce des Lightning Platform -Experten Dan Appleman auf Pluralsight und (im Anschluss daran) die folgenden Bücher empfehlen.

  • "Speaking JavaScript" von Axel Rauschmayer
  • "Object-Oriented JavaScript" von Stoyan Stefanov
  • "The Principles of Object-Oriented JavaScript" von Nicholas C. Zakas
  • Eloquent JavaScript von Marijn Haverbeke (kostenlos erhältlich)

Grundlagen: Modernes HTML und CSS

Das Framework umfasst eine Reihe integrierter Komponenten, die wir als Lightning-Basiskomponenten bezeichnen. Diese Komponenten sind modern, schlank und im Design an Lightning Experience angepasst.

Doch obwohl die Sammlung schnell größer wird, ist sie noch nicht so umfassend wie Visualforce und Sie werden viele Komponenten von Grund auf schreiben müssen. Dazu sollten Ihre HTML- und CSS-Kenntnisse auf dem aktuellen Stand sein. Sie sollten mit HTML5, CSS3 und der Erstellung von Seiten vertraut sein, die anpassungsfähig, für Mobilgeräte optimiert, barrierefrei und browserübergreifend kompatibel sind. Wenn Sie wissen, was Flexbox, Medien-Abfragen, ARIA und REM-Einheiten sind und wie sie verwendet werden, sind Sie im Rennen.

Grundlagen: Salesforce Lightning Design System

Leiter! Ein CSS-Tipp: Versuchen Sie, so wenig wie möglich davon für Ihre Komponenten zu schreiben. Verwenden Sie lieber das Salesforce Lightning Design System (SLDS).

Die richtige Verwendung von SLDS ist im Allgemeinen unkompliziert.

  • Wann immer im Markup Ihrer Lightning-Komponenten möglich, sollten Sie integrierte Komponenten aus dem Namespace "lightning:" verwenden, der die zuvor erwähnten Lightning-Basiskomponenten enthält. Diese Komponenten wurden mit SLDS erstellt und nutzen es automatisch.
  • Strukturieren Sie Ihr HTML-Markup, indem Sie SLDS-Dienstprogrammklassen zu den entsprechenden Elementen hinzufügen.
  • Oder noch besser: Kopieren Sie das Markup direkt von der SLDS-Website und fügen Sie JavaScript-Funktionalität hinzu.
  • Sie sollten nur in ganz wenigen Sonderfällen selbst CSS-Stile für eine Komponente schreiben.

Wichtiger Hinweis: Wenn Sie die SLDS-Website besuchen, die sich hervorragend eignet, um die Verwendung des Salesforce Lightning Design System in allen Einzelheiten zu erlernen, werden Sie feststellen, dass dort häufig der Begriff "Komponente" verwendet wird. Es gibt sogar eine ganze Bibliothek mit Komponenten!

Rutsche! Dies sind aber keine Lightning-Komponenten!

Die SLDS-Website beschreibt die Verwendung von SLDS in beliebigem Webanwendungskontext, ob mit Salesforce, Ruby on Rails, PHP etc. Die "Komponenten", die auf der Website beschrieben werden, sind Webanwendungs-Benutzeroberflächenelemente in idealisierter Form. Sie sind ausschließlich in statischem HTML und CSS definiert – es gibt keine ausführbaren Elemente in SLDS-Komponenten.

Und vor allen Dingen gibt es viel mehr SLDS-"Komponenten" als integrierte Lightning-Komponenten. SLDS beschreibt die Zukunft, auf die wir hinarbeiten. Nur weil die SLDS-Website eine "Komponente" namens "Aktivitätszeitachse" beschreibt, heißt dies noch lange nicht, dass es eine Lightning-Komponente gibt, die diese Funktion ausführt. Und nur weil es eine SLDS-"Komponente" für einen Badge, eine Schaltfläche oder ein modales Fenster gibt, heißt dies nicht, dass eine Lightning-Komponente, die einen Badge, eine Schaltfläche oder ein modales Fenster bereitstellt, damit identisch ist. (Vielleicht ist sie das sogar. Es muss aber nicht zwingend der Fall sein. Und sie könnte sich später auch ändern.)

Kurz und bündig: SLDS-Komponenten sind keine Lightning-Komponenten. Wenn es keine integrierte Lightning-Komponente für Ihre Zwecke gibt, nutzen Sie die SLDS-Website als Ausgangspunkt für die Erstellung einer eigenen Komponente.