Composable – Packageability (Composierbar – Paketierbarkeit)

Erfahren Sie mehr über Gut entwickelte anpassungsfähige KomponentenComposablePackabilityDependency Management

Wohin schauen?
Produktbereich | Standort
Wie sieht gut aus?
Muster
Plattform | Designstandards✅ Es gibt Standards zum Einführen oder Ändern von Abhängigkeiten
Plattform | Designstandards✅ Es gibt Standards zum Deklarieren von Abhängigkeiten
Plattform | Pakete✅ Keine Metadaten werden paketübergreifend dupliziert
Plattform | Pakete✅ Bei der Paketentwicklung werden alle Entwicklungsarbeiten in der frühen Phase in Testorganisationen durchgeführt
Plattform | Quellcodeverwaltung✅ Entwickler können Testorganisationen erstellen und Paketmetadaten erfolgreich über die Quellcodeverwaltung bereitstellen
Plattform | Quellcodeverwaltung✅ Paketversionen für entsperrte Pakete verwenden Aliasnamen (LATEST), um Abhängigkeiten in sfdx-project.json zu deklarieren

Erfahren Sie mehr über Gut entwickelte anpassungsfähige KomponentenComposablePackabilityLoose Coupling

Wohin schauen?
Produktbereich | Standort
Wie sieht gut aus?
Muster
Platform | Apex✅ Von dynamischen Laufzeitinformationen abhängige Methoden verweisen auf geeignete benutzerdefinierte Metadatentypen
Platform | Apex✅ Allgemeine Services und Boilerplate-Code werden mit abstrakten oder virtuellen Apex-Klassen definiert
Plattform | Designstandards✅ (Optional) Alle genehmigten Anwendungsfälle für benutzerdefinierte Einstellungen sind klar aufgeführt (sofern vorhanden)
Plattform | Designstandards✅ Benennungskonventionen behandeln, wie Paketeinheiten angegeben werden
Plattform | Designstandards✅ Es ist möglich, eine Liste aller aktuell definierten Paketeinheiten (und der zugehörigen Benennungskonventionen) zu suchen und zu finden
Plattform | Designstandards✅ Es gibt Standards zum Vorschlagen von Paketeinheiten-Ergänzungen oder -Änderungen
Plattform | Organisation✅ Benutzerdefinierte Metadatentypen bieten dynamische Laufzeitinformationen für Code und deklarative Anpassungen
Plattform | Organisation✅ Es sind keine benutzerdefinierten Objekte vorhanden, um dynamische Laufzeitinformationen für Code oder deklarative Anpassungen bereitzustellen
Plattform | Organisation✅ Es sind keine benutzerdefinierten Einstellungen vorhanden oder es sind nur wenige benutzerdefinierte Einstellungen vorhanden und keine sind mit Paketfunktionen verbunden
Plattform | Pakete✅ In Produktions- oder Sandbox-Instanzen sind keine nicht verwalteten Pakete definiert
Plattform | Pakete✅ Organisationsabhängige entsperrte Pakete werden nur für Experimente in der Frühphase oder zum Nachweis des Konzepts verwendet
Plattform | Quellcodeverwaltungpackage.xml werden nur in der frühen Phase oder in Proof-of-Concept-Projektmanifesten angezeigt

Erfahren Sie mehr über Gut entwickelte anpassungsfähige KomponentenComposablePackabilityDependency Management

Wohin schauen?
Produktbereich | Standort
Was vermeiden?
Anti-Pattern
Plattform | Designstandards⚠️ Designstandards sind nicht vorhanden oder befassen sich nicht damit, wie Abhängigkeiten deklariert werden
Plattform | Pakete⚠️ Abhängigkeiten werden durch Duplizieren von Metadaten in verschiedenen Paketen umgangen
Plattform | Pakete⚠️ Die frühzeitige Paketentwicklung erfolgt in Entwickler-Sandbox-Instanzen oder die frühzeitige Paketentwicklung kann nicht in Testorganisationen erfolgen
Plattform | Quellcodeverwaltung⚠️ Entwickler können nicht erfolgreich mit Testorganisationen mit Quellcodeverwaltung arbeiten
Plattform | Quellcodeverwaltung⚠️ Paketversionen für entsperrte Pakete werden explizit (ohne LATEST) in sfdx-project.json deklariert

Erfahren Sie mehr über Gut entwickelte anpassungsfähige KomponentenComposablePackabilityLoose Coupling

Wohin schauen?
Produktbereich | Standort
Was vermeiden?
Anti-Pattern
Platform | Apex⚠️ Allgemeine Services und Boilerplate-Code lassen sich nicht einfach von anderen Klassen unterscheiden
Platform | Apex⚠️ Methoden verwenden keinen konsistenten Ansatz für den Zugriff auf dynamische Informationen, Laufzeitinformationen oder Methoden, die benutzerdefinierte Objekte nach Informationen zum Laufzeitverhalten oder benutzerdefinierten Codeverweisen abfragen
Platform | Apex⚠️ Interne Verweise über Klassen und Methoden hinweg sind schwer zu befolgen und in der Codebasis inkonsistent
Plattform | Designstandards⚠️ Designstandards sind nicht vorhanden oder beziehen sich nicht auf Paketeinheiten und Anwendungsfälle
Plattform | Organisation⚠️ Benutzerdefinierte Einstellungen werden verwendet
Plattform | Organisation⚠️ Benutzerdefinierte Objekte sind vorhanden, um dynamische Laufzeitinformationen für Code oder deklarative Anpassungen bereitzustellen
Plattform | Organisation⚠️ Benutzerdefinierte Metadatentypen werden nicht (oder nicht konsistent) verwendet, um dynamische Laufzeitinformationen für Code und deklarative Anpassungen bereitzustellen
Plattform | Pakete⚠️ Nicht verwaltete Pakete werden in Produktions- oder Sandbox-Instanzen definiert
Plattform | Pakete⚠️ Alle Pakete sind organisationsabhängige entsperrte Pakete
Plattform | Quellcodeverwaltung⚠️ package.xml-Dateien werden zum Steuern von Metadatenbereitstellungen verwendet