Entwickeln von Kernkomponenten

Wann sollten die Kernkomponenten verwendet werden?

Da die Kernkomponenten völlig neu sind und mehrere Vorteile bieten, wird empfohlen, sie für neue AEM-Projekte zu verwenden. Bei vorhandenen Projekten sollte eine Migration Teil einer größeren Projektaufgabe sein, z. B. ein Rebranding oder eine Gesamtrefaktorierung.

Daher bietet Adobe folgende Empfehlungen:

  • Neue Projekte
    Neue Projekte sollten immer versuchen, Kernkomponenten zu verwenden. Wenn Kernkomponenten nicht direkt oder erweitert verwendet werden können, um die Projektanforderungen zu erfüllen, erstellen Sie eine benutzerdefinierte Komponente gemäß der Komponentenarchitektur, die in den Kernkomponenten festgelegt ist. Vermeiden Sie die Verwendung der Foundation-Komponenten, sofern möglich.
  • Existierende Projekte
    Empfohlen wird, weiterhin die Foundation-Komponenten zu verwenden, es sei denn, es ist eine Refaktorierung von Sites oder Komponenten geplant.
    Da sie sehr häufig von den meisten vorhandenen Projekten verwendet werden, werden die Foundation-Komponenten weiterhin unterstützt.
  • Neue benutzerdefinierte Komponenten
    Überprüfen Sie, ob eine vorhandene Kernkomponente angepasst werden kann.
    Wenn nicht, wird empfohlen, eine neue benutzerdefinierte Komponente zu erstellen, die den Komponentenrichtlinien folgt.
  • Vorhandene benutzerdefinierte Komponenten
    Wenn Ihre Komponenten erwartungsgemäß funktionieren, behalten Sie sie unverändert bei.

    Falls nicht, siehe oben „Neue benutzerdefinierte Komponenten“.

So haben Sie Erfolg mit den Kernkomponenten

Die Kernkomponenten sind leistungsstark, flexibel und einfach zu verwenden und anzupassen. Die Einhaltung einiger wichtiger Richtlinien stellt sicher, dass Ihr Projekt mit den Kernkomponenten erfolgreich ist.

Migration zu den Kernkomponenten

Jedes neue Projekt sollte mit Kernkomponenten implementiert werden. Bestehende Projekte verfügen jedoch meist über umfassende Implementierungen der Foundation-Komponenten.

Eine größere Arbeit an einem vorhandenen Projekt (z. B. ein Rebranding oder eine Gesamtrefaktorierung) bietet oft eine Möglichkeit, zu den Kernkomponenten zu migrieren. Um diese Migration zu erleichtern, stellt Adobe eine Reihe von Migrationswerkzeugen bereit, um die Akzeptanz der Kernkomponenten und der neuesten AEM-Technologie zu fördern.

Die AEM-Modernisierungs-Tools ermöglichen eine einfache Konvertierung von:

  • Statischen Vorlagen in bearbeitbare Vorlagen
  • Designkonfigurationen in Richtlinien
  • Foundation-Komponenten in Kernkomponenten
  • Klassische Benutzeroberfläche in Touch-optimierte Benutzeroberfläche

Weitere Informationen zur Verwendung dieser Werkzeuge finden Sie in der entsprechenden Dokumentation.

NOTE

Die AEM-Modernisierung-Tools werden von der Community gesammelt, Adobe bietet keinerlei Unterstützung oder Garantie dafür.

Kernkomponentenunterstützung

Kernkomponenten sind ein integraler Bestandteil von AEM und werden ohne Mängelgewähr unterstützt, zu den gleichen Bedingungen und Konditionen, als ob sie im Rahmen des Quickstarts geliefert würden.

Wie andere AEM-Produktmerkmale lautet die allgemeine Regel: Komponenten werden zunächst als veraltet angekündigt und frühestens in der folgenden AEM-Version entfernt. Dadurch erhalten Kunden mindestens einen Versionszyklus, um zur neuen Version der Komponente zu wechseln, bevor deren Unterstützung eingestellt wird.

Die Version jeder Komponente gibt eindeutig die AEM-Versionen an, die sie unterstützt. Wenn der Support für eine Version von AEM eingestellt wird, gilt das auch für die Unterstützung der Kernkomponenten für diese Version von AEM.

Weitere Informationen zur Unterstützung von Komponentenanpassungen finden Sie auf der Seite Anpassen von Kernkomponenten.

Technische Funktionen

In der folgenden Tabelle finden Sie einen Überblick über die Unterschiede zwischen Kernkomponenten und Foundation-Komponenten.

Einzelheiten zu ihren Authoring-Fähigkeiten und Optionen zu ihrer Vorkonfiguration finden Sie auf der entsprechenden Authoring-Seite.

Funktion Kernkomponente Foundation-Komponente
Logikimplementierung Java POJOs mit Anmerkungen zu Sling-Modellen JSP-Code
Markup-Definition HTML Template Language (HTL)-Syntax JSP-Code
XSS-Bereinigung Automatisiert durch HTL Hauptsächlich manuell
CSS-Klassen-Benennung Standardisierte Benennungskonvention basierend auf der Block Element Modifier (BEM)-Notation (ab Version 2.0.0) Benutzerdefinierte Schemata
Dialogfeld-Definition Coral 3 Coral 2 + Klassische Benutzeroberfläche
JSON-Ausgabe Sling Model Exporter mit Jackson-Serialisierung Standard-Sling-Servlet
Versionierung Für das Modell und die HTL Keine
Testen Unit-Tests und Integrationstests Integrationstests
Bereitstellung Über öffentliches GitHub Über Quickstart
Lizenz Apache-Lizenz Adobe-geschützt
Beitrag Über Pull-Anfrage Nicht möglich
Barrierefreiheit Vollständig konform mit dem WCAG 2.0 AA-Standard Nur teilweise konform mit dem WCAG 2.0 AA-Standard

Komponentenliste

In der folgenden Tabelle sind die verfügbaren Kernkomponenten mit Links zu ihrer API aufgeführt und es wird angegeben, welche Foundation-Komponenten sie ersetzen.

Kernkomponente Beschreibung Ersetzte Foundation-Komponente(n)
Seite Responsive Seite, die mit dem Vorlageneditor arbeitet /libs/foundation/components/page /libs/wcm/foundation/components/page
Breadcrumb Navigation der Seitenhierarchie /libs/foundation/components/breadcrumb
Titel H1-H6-Titel /libs/foundation/components/title /libs/wcm/foundation/components/title
Text Rich-Text /libs/foundation/components/text /libs/foundation/components/table /libs/wcm/foundation/components/text
Bild Intelligentes und entspanntes Laden der optimalen Wiedergabegröße /libs/foundation/components/image /libs/foundation/components/adaptiveimage /libs/foundation/components/logo /libs/foundation/components/mobileimage /libs/foundation/components/mobilelogo /libs/wcm/foundation/components/image
Liste Liste der Seiten /libs/foundation/components/list /libs/foundation/components/mobilelist /libs/wcm/foundation/components/list
Freigabe in Social Media Widget zum Teilen auf Facebook und Pinterest -
Formular-Container Responsives Formular-Absatzsystem /libs/foundation/components/form/start /libs/foundation/components/form/end
Formulartext Texteingabefeld /libs/foundation/components/form/text /libs/foundation/components/form/password
Formularoptionen Eingabefeld für mehrere Optionen /libs/foundation/components/form/checkbox /libs/foundation/components/form/radio /libs/foundation/components/form/dropdown
Ausgeblendetes Formular Ausgeblendetes Eingabefeld /libs/foundation/components/form/hidden
Formularschaltfläche Schaltfläche zum Absenden oder benutzerdefinierte Schaltfläche /libs/foundation/components/form/submit
Navigation Eine Site-Navigationskomponente, die die verschachtelte Seitenhierarchie auflistet /libs/foundation/components/topnav /libs/foundation/components/mobiletopnav
Sprachnavigation Ein Umschalter zwischen Sprachen und Ländern, der die globale Sprachstruktur auflistet -
Schnellsuche Eine Suchkomponente, die die Ergebnisse als ersetzende Vorschläge in einem Dropdown-Menü anzeigt /libs/foundation/components/search
Teaser Ermöglicht es dem Inhaltsautor, mühelos einen Teaser für weitere Inhalte zu erstellen, indem er ein Bild, einen Titel oder Rich-Text verwendet und Links zu weiteren Inhalten oder anderen Aktionen erstellt -
Registerkarten Ermöglicht es dem Inhaltsautor, Seiteninhalte innerhalb mehrerer Registerkarten zu organisieren -
Karussell Ermöglicht es dem Inhaltsautor, Inhalte in einem drehbaren Karussell der Folien zu organisieren /libs/foundation/components/carousel
Inhaltsfragment Ermöglicht die Anzeige eines Inhaltsfragments -
Inhaltsfragmentliste Ermöglicht die Anzeige einer Liste mit Inhaltsfragmenten -
Trennzeichen Trennt Inhalt auf einer Seite -
Accordion Organisieren von Inhalts-Bedienfeldern in einem ausblendbaren Accordion -
Container Organisieren von Komponenten in einem Container -
Schaltfläche Erstellen einer Schaltfläche auf einer Seite -
Download Hinzufügen eines herunterladbaren Assets zu einer Seite -
Experience Fragment Hinzufügen eines Experience Fragment zu einer Seite /libs/cq/experience-fragments/editor/components/experiencefragment
Einbetten Einbetten einer externen Ressource in eine Seite -
Fortschrittsleiste Visualisierung des Fortschritts beim Erreichen eines Ziels -
PDF-Viewer Zeigt ein PDF-Dokument auf einer Seite an -

Künftige Komponenten

Einen Überblick über geplante Kernkomponenten finden Sie im Projekt-Wiki auf GitHub.

Aktualisierung der Kernkomponenten

Ein Vorteil versionierter Komponenten besteht darin, dass die Migration auf eine neue AEM-Version von der Migration auf neue Komponentenversionen getrennt werden kann. Wenn neue Komponentenversionen verfügbar sind, wird außerdem die einzelne Migration jeder Komponente zur neuen Version ermöglicht.

Die Migration zu einer neuen AEM-Version wirkt sich nicht auf die Funktionsweise der Kernkomponenten aus, sofern ihre Versionen auch die neue AEM-Version unterstützen, auf die migriert wird. An den Kernkomponenten vorgenommene Anpassungen sollten ebenfalls nicht beeinträchtigt werden, sofern sie keine veralteten oder entfernten APIs verwenden.

Migrationen auf neue Versionen der Kernkomponenten wirken sich nicht auf die Funktionsweise der Komponente aus, aber es können ggf. neue Funktionen für Seitenautoren eingeführt werden, was möglicherweise einige Konfigurationen durch einen Vorlageneditor erfordert, falls das Standardverhalten nicht gewünscht wird. Anpassungen müssen jedoch ggf. angepasst werden. Weitere Informationen finden Sie auf der Seite Anpassen von Kernkomponenten.

Auf dieser Seite