OSGI-pakketten
- Onderwerpen:
- Developing
Gemaakt voor:
- Developer
Semantische versienummering gebruiken
De beste werkwijzen voor semantische versienummering zijn overeengekomen op https://semver.org/.
Sluit niet meer klassen en potten in dan strikt noodzakelijk in bundels OSGi
Gemeenschappelijke bibliotheken moeten in afzonderlijke bundels worden opgenomen. Hierdoor kunnen ze opnieuw worden gebruikt in alle bundels. Bij het omsluiten van een JAR in een OSGI-bundel, zorg ervoor dat u online bronnen controleert om te zien of iemand dit al eerder heeft gedaan. Enkele gebruikelijke plaatsen om bestaande bundelomhulsels te vinden zijn: Apache Felix, Apache Sling, Apache Geronimo, Apache ServiceMix, Eclipse Bundle Recipes en de SpringSource Enterprise Bundle Repository.
Afhankelijk van de laagst benodigde bundelversies
Voor afhankelijkheden bij compilatie in POM-bestanden is altijd afhankelijk van de laagst vereiste versie die de benodigde API beschikbaar maakt. Dit maakt hogere achterwaartse verenigbaarheid mogelijk en maakt het terugkeren van moeilijke situaties aan oudere versies gemakkelijker.
Een minimale set pakketten exporteren uit OSGi-bundels
Zodra een pakket is geëxporteerd, hebben we een API gemaakt waarvan anderen afhankelijk kunnen zijn. Zorg ervoor dat u zo weinig mogelijk exporteert en zorg ervoor dat wat wordt geëxporteerd een API is. Het is veel gemakkelijker om een privé methode/klasse te nemen en het openbaar te maken dan het iets te nemen dat eerder werd uitgevoerd en het privé te maken.
Implementaties moeten altijd in een aparte impl pakket. Standaard worden de maven-bundle-plugin zal om het even wat in het project uitvoeren dat geen impl in zijn naam.
Altijd expliciet een semantische versie definiëren voor elk geëxporteerd pakket
Hierdoor kunnen consumenten van uw API samen met u evolueren. Volg daarbij altijd semantische best practices voor versiebeheer. Hierdoor kunnen consumenten van uw API weten welke typen wijzigingen in een nieuwe versie worden verwacht.
Metatype-informatie opnemen als deze wordt weergegeven
Door betekenisvolle metatype informatie te specificeren, zal het uw diensten en componenten gemakkelijker maken om in de console van Felix te begrijpen. Een lijst van SCR annotaties en attributen kan worden gevonden bij: https://felix.apache.org/documentation/subprojects/apache-felix-maven-scr-plugin/scr-annotations.html.
Experience Manager
- Overzicht van de gebruikershandleiding voor ontwikkeling
- Inleiding voor ontwikkelaars
- Aan de slag met het ontwikkelen van AEM Sites - WKND-tutorial
- AEM kernconcepten
- Structuur van de interface voor AEM aanraakbediening
- Concepten van de interface AEM Touch-Enabled
- AEM ontwikkeling - Richtsnoeren en beste praktijken
- Client-Side bibliotheken gebruiken
- Developing and Page Diff
- Editor-beperkingen
- Het CSRF-beschermingskader
- Gegevensmodellering - David Nuescheler’s model
- Bijdragen aan AEM
- Beveiliging
- Referentiematerialen
- Een volledig aanbevolen website maken (klassieke gebruikersinterface)
- Ontwerpen en de Ontwerper (Klassieke UI)
- Platform
- Sling Cheatsheet
- Sling Adapters
- Tagbibliotheken
- Sjablonen
- Het gebruiken van de Verschuivende Fusie van het Middel in AEM
- Bedekkingen
- Naamgevingsconventies
- Een nieuwe graniet UI-veldcomponent maken
- Query Builder
- Tags
- Pagina’s aanpassen die worden weergegeven door de fouthandler
- Aangepaste knooppunttypen
- Lettertypen toevoegen voor grafisch renderen
- Verbinding maken met SQL-databases
- URL’s extern maken
- Banen voor offloaden maken en consumeren
- Cookie-gebruik configureren
- Programmatoegang tot het AEM JCR
- Services integreren met de JMX-console
- De Bulk-editor ontwikkelen
- Rapporten ontwikkelen
- eCommerce
- Onderdelen
- Kernonderdelen
- Stijlsysteem
- Overzicht van componenten
- Componenten AEM - De basisbeginselen
- AEM ontwikkelen
- Ontwikkelen AEM componenten - Codevoorbeelden
- JSON-exportfunctie voor services voor inhoud
- JSON-export inschakelen voor een component
- Afbeeldingseditor
- Decoratietag
- Voorwaarden verbergen gebruiken
- Meerdere lokale editors configureren
- Ontwerpmodus
- Uw gebruikersinterface testen
- Componenten voor inhoudsfragmenten
- Pagina-informatie ophalen in JSON-indeling
- Internationalisatie
- Klassieke UI-componenten
- Erviteitsbeheer zonder hoofd
- Hoofdloos en hybride met AEM
- JSON-export inschakelen voor een component
- Toepassingen voor één pagina
- SPA Inleiding en Analyse
- SPA WKND-zelfstudie
- Aan de slag met SPA in AEM - Reageren
- Aan de slag met SPA in AEM - Angular
- Een component React implementeren voor SPA
- SPA diep duiken
- Overzicht SPA Editor
- SPA ontwikkelen voor AEM
- SPA
- SPA
- Dynamisch model naar componenttoewijzing voor SPA
- SPA
- Integratie SPA en Adobe Experience Platform Launch
- SPA en rendering op de server
- Referentiematerialen SPA
- HTTP-API
- Contentfragmenten
- Ervaringsfragmenten
- Ontwikkelingsinstrumenten
- Ontwikkelingsinstrumenten
- AEM-moderniseringstools
- Dialoogvenster-editor
- Dialoogvenster omzetten
- Ontwikkelen met CRXDE Lite
- Pakketten beheren met Maven
- Hoe te om AEM Projecten te ontwikkelen gebruikend Eclipse
- Hoe te om AEM Projecten te bouwen gebruikend Apache Maven
- Hoe te om AEM Projecten te ontwikkelen gebruikend IntelliJ IDEA
- Het gereedschap VLT gebruiken
- Het gereedschap Proxyserver gebruiken
- Extensie AEM
- AEM Developer Tools for Eclipse
- AEM
- Personalisatie
- AEM uitbreiden
- Paginaontwerp aanpassen
- De consoles aanpassen
- Weergaven van pagina-eigenschappen aanpassen
- Pagina configureren voor Bulk bewerken van pagina-eigenschappen
- Contentfragmenten aanpassen en uitbreiden
- Werkstromen uitbreiden
- Het beheer van meerdere sites uitbreiden
- Tracering en analyse
- Cloud Services
- Aangepaste extensies maken
- Forms
- Services integreren met de JMX-console
- De Bulk-editor ontwikkelen
- Klassieke gebruikersinterface uitbreiden
- Testen
- Best practices voor
- Overzicht van best practices
- Richtlijnen voor AEM ontwikkeling en beste praktijken
- Aanbevolen werkwijzen voor ontwikkeling
- Inhoudsarchitectuur
- Softwarearchitectuur
- We.Retail Reference Implementation
- We.Retail Reference Implementation
- Inhoudsfragmenten in We.Retail uitproberen
- Core Components uitproberen in We.Retail
- Bewerkbare sjablonen uitproberen in We.Detailhandel
- Responsieve lay-out uitproberen in We.Detailhandel
- De geglobaliseerde sitestructuur in ‘We’ uitproberen.Handelsversie
- Uitproberen van ervaringsfragmenten in We.Retail
- Codetips
- Codevalkuilen
- OSGI-pakketten
- JCR-integratie
- Codevoorbeelden
- Problemen met trage query’s oplossen
- Mobiel web