Basiscomponenten ontwikkelen

Wanneer moet u de kerncomponenten gebruiken?

Aangezien de Componenten van de Kern allen-nieuw zijn, en veelvoudige voordelen aanbieden, wordt het geadviseerd voor nieuwe AEM projecten om hen te gebruiken. Voor bestaande projecten zou een migratie deel moeten uitmaken van een grotere projectinspanning, bijvoorbeeld een herbranding of het totale refactoring.

Daarom geeft Adobe de volgende aanbevelingen:

  • Nieuwe projecten
    De nieuwe projecten zouden altijd moeten proberen om de Componenten van de Kern te gebruiken. Als kerncomponenten niet rechtstreeks kunnen worden gebruikt of uitgebreid om aan projectvereisten te voldoen, creeer dan een douanecomponent na de componentenarchitectuur die in kerncomponenten wordt vermeld. Vermijd het gebruik van de stichtingscomponenten.
  • Bestaande projecten
    De aanbeveling blijft de stichtingscomponenten, tenzij een locatie of onderdeel wordt gereflecteerd.
    Aangezien zij zeer wijd door de meeste bestaande projecten worden gebruikt, de stichtingscomponenten wordt ondersteund.
  • Nieuwe aangepaste componenten
    Bepalen of een bestaande De kerncomponent kan worden aangepast.
    Als niet, is de aanbeveling om een nieuwe douanecomponent na te bouwen Componentrichtlijnen.
  • Bestaande aangepaste componenten
    Als uw componenten zoals verwacht werken, dan houd hen zoals zij zijn.

    Als dat niet het geval is, raadpleegt u "Nieuwe aangepaste componenten" hierboven.

Hoe te met de Componenten van de Kern Succes

De kerncomponenten zijn krachtig, flexibel en gebruiksvriendelijk. Enkele belangrijke richtlijnen volgen zorgt ervoor dat uw project met de Core Components een succes wordt.

Migreren naar de kerncomponenten

Om het even welk nieuw project zou met de Componenten van de Kern moeten worden uitgevoerd. Nochtans zullen de bestaande projecten gewoonlijk uitgebreide implementaties van de Componenten van de Stichting hebben.

Migreren van stichtingscomponenten

Een grotere inspanning op een bestaand project (bijvoorbeeld rebranding of het algemene refactoring) biedt vaak een kans om aan de Componenten van de Kern te migreren. Om deze migratie te vergemakkelijken, heeft Adobe een aantal migratiehulpmiddelen verstrekt om de goedkeuring van de Componenten van de Kern en de recentste AEM aan te moedigen.

De AEM moderniseringsinstrumenten de gemakkelijke omzetting mogelijk maken van:

  • Statische sjablonen converteren naar bewerkbare sjablonen
  • Ontwerpconfiguraties omzetten naar beleid
  • Elementaire componenten omzetten naar kerncomponenten
  • De klassieke interface converteren naar een interface met aanraakbediening

Voor meer informatie over het gebruik van deze instrumenten, zie de documentatie.

OPMERKING

De AEM Moderniseren Hulpmiddelen zijn een communautaire inspanning en niet gesteund of door Adobe gewaarborgd.

Migratie via Verplaatsen naar AEM as a Cloud Service

Omdat AEM as a Cloud Service met de recentste versie van de Componenten van de Kern automatisch komt, wanneer u zich van een op-gebouw AEM installatie beweegt, zult u om het even welk gebiedsdeel aan de Componenten van de Kern in uw projecten moeten verwijderen pom.xml bestand.

Uw proxycomponenten werken nog steeds zoals voorheen, omdat proxy's verwijzen naar het benodigde supertype en het supertype pad de versie bevat. Op deze manier, eenvoudig het verwijderen van de gebiedsdelen laat de Componenten van de Kern toe om in AEMaaCS te werken enkel zoals zij op-gebouw deden.

Net als bij elk ander AEMaaCS-project moet u ook een afhankelijkheid toevoegen aan de AEM SDK-jar. Dit is niet specifiek voor de Core Components, maar is vereist.

<dependency>
   <groupId>com.adobe.aem</groupId>
   <artifactId>aem-sdk-api</artifactId>
</dependency>

Zie het document AEM projectstructuur voor meer informatie over AEMaaCS-projecten.

Ondersteuning van kerncomponenten

De Componenten van de kern zijn een integraal deel van AEM en gesteund zoals is, onder de zelfde voorwaarden alsof zij als deel van Quickstart werden geleverd.

De algemene regel is, net als andere AEM productkenmerken: Componenten worden eerst aangekondigd te worden vervangen en de oudste verwijderd voor de volgende AEM. Dit geeft klanten minstens één versiecyclus om naar de nieuwe versie van de component te bewegen, alvorens zijn steun te laten vallen.

In de versie van elke component worden duidelijk de AEM versies vermeld die worden ondersteund. Wanneer de steun voor een versie van AEM beëindigt, dan ook de steun van de Componenten van de Kern voor die versie van AEM.

Raadpleeg voor meer informatie over de ondersteuning van componentaanpassingen de Kerncomponenten aanpassen pagina.

Technische mogelijkheden

De volgende lijst geeft een overzicht van de verschillen tussen kerncomponenten en stichtingscomponenten.

Voor details over hun auteursmogelijkheden en opties om hen pre-configureerbaar te maken, verwijzen naar de ontwerppagina hierover.

Capaciteit Kerncomponent Foundation-component
Logische implementatie Java POJO's met Verkoopmodellen annotaties JSP-code
Opmaakdefinitie HTML Sjabloontaal (HTL) syntaxis JSP-code
XSS-ontsmetting Geautomatiseerd door HTML Meestal handmatig
Naam van CSS-klassen Gestandaardiseerde naamgevingsconventie gebaseerd op Element-wijziging blokkeren (BEM) notatie (vanaf release 2.0.0) Aangepaste schema's
Dialoogdefinitie Koraal 3 Koraal 2 + klassieke gebruikersinterface
JSON-uitvoer Sling Modellen Exporter met Jackson serialization Standaard Sling-servlet
Versioning Voor het model en het HTL Geen
Testen Eenheidstests + integratietests Integratietests
Aflevering Via public GitHub Via Quickstart
Licentie Apache-licentie Adobe-bedrijfseigen
Bijdrage Via pull request Niet mogelijk
Toegankelijkheid Volledig conform de WCAG 2.0 AA-standaard Slechts gedeeltelijk compatibel met het WCAG 2.0 AA-standaard

Componentlijst

De volgende lijst maakt een lijst van de beschikbare Componenten van de Kern, die met hun API verbinden, en wijst op welke stichtingscomponenten zij vervangen.

Kerncomponent Beschrijving Vervangen basiscomponent(en)
Pagina Responsieve pagina werken met sjablooneditor /libs/foundation/components/page /libs/wcm/foundation/components/page
Broodkruimel Navigatie in paginahiërarchie /libs/foundation/components/breadcrumb
Titel H1-H6-titel /libs/foundation/components/title /libs/wcm/foundation/components/title
Tekst RTF /libs/foundation/components/text /libs/foundation/components/table /libs/wcm/foundation/components/text
Afbeelding Slim en wazig laden van optimale weergavegrootte /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
Lijst Lijst met pagina's /libs/foundation/components/list /libs/foundation/components/mobilelist /libs/wcm/foundation/components/list
Delen van sociale media Delen via facebook en Pinterest widget -
Formuliercontainer Responsief formulieralineasysteem /libs/foundation/components/form/start /libs/foundation/components/form/end
Formuliertekst Tekstinvoerveld /libs/foundation/components/form/text /libs/foundation/components/form/password
Formulieropties Invoerveld Meerdere opties /libs/foundation/components/form/checkbox /libs/foundation/components/form/radio /libs/foundation/components/form/dropdown
Formulier verborgen Verborgen invoerveld /libs/foundation/components/form/hidden
Formulierknop Verzenden of aangepaste knop /libs/foundation/components/form/submit
Navigatie Een sitenavigatie-component die de geneste paginahiërarchie weergeeft /libs/foundation/components/topnav /libs/foundation/components/mobiletopnav
Taalnavigatie Een taal- en landswitch die de algemene taalstructuur opsomt -
Snel zoeken Een zoekcomponent die de resultaten als suggesties ter plaatse in een vervolgkeuzemenu weergeeft /libs/foundation/components/search
Teaser Hiermee kan de auteur van de inhoud eenvoudig een gummetje maken om inhoud te verfijnen met een afbeelding, titel of RTF-tekst en een koppeling maken naar verdere inhoud of andere handelingen -
Tabs Hiermee kan de auteur van de inhoud de pagina-inhoud op meerdere tabbladen ordenen -
Carousel Hiermee kan de auteur van de inhoud de inhoud ordenen in een draaiende carrousel van dia's /libs/foundation/components/carousel
Inhoudsfragment Hiermee wordt de weergave van een inhoudsfragment toegestaan -
Lijst met inhoudsfragmenten Hiermee wordt een lijst met inhoudsfragmenten weergegeven -
Scheidingsteken Hiermee wordt de inhoud van een pagina gescheiden -
Accordeon Inhoudsdeelvensters ordenen in een inklapbare accordeon -
Container Componenten indelen in een container -
Knop Een knop op een pagina maken -
Downloaden Een downloadbaar element toevoegen aan een pagina -
Ervaar fragment Een ervaringsfragment toevoegen aan een pagina /libs/cq/experience-fragments/editor/components/experiencefragment
Insluiten Een externe bron in een pagina insluiten -
Voortgangsbalk Een visuele weergave geven van de voortgang in de richting van een doel -
PDF Viewer Hiermee wordt een PDF-document op een pagina gepresenteerd -

Upgrade van kerncomponenten

Een voordeel van versioned componenten is dat het toestaat om de migratie aan een nieuwe AEM versie van de migratie aan nieuwe componentenversies te scheiden. Als er nieuwe componentversies beschikbaar zijn, is het bovendien mogelijk om elke component afzonderlijk naar de nieuwe versie te migreren.

Migraties naar een nieuwe AEM hebben geen invloed op de werking van de Core Components, op voorwaarde dat de versies ervan ook ondersteuning bieden voor de nieuwe AEM die wordt gemigreerd naar. De aanpassingen aan de Componenten van de Kern zouden ook niet moeten worden beïnvloed, zolang zij geen APIs gebruiken die zijn geweest afgekeurd of verwijderd.

De migraties aan nieuwe versies van de Componenten van de Kern zullen niet beïnvloeden hoe de component ook werkt, maar de nieuwe eigenschappen zouden aan paginaauteurs kunnen worden geïntroduceerd, die één of andere configuratie door een malplaatjeredacteur zouden kunnen vereisen, voor het geval dat het standaardgedrag niet wordt gewenst. Aanpassingen kunnen echter moeten worden aangepast, voor meer details raadpleegt u de Kerncomponenten aanpassen pagina.

Op deze pagina