Composable - Emballage

Schéma de gestion des dépendances

En savoir plus sur Adaptable bien archivé → Composable → Packageabilité → Gestion des dépendances

Où chercher ?
Domaine de produit | Emplacement
À quoi ressemble le bien ?
Modèle
Plate-forme | Normes de conception ✅ Il existe des normes pour l'introduction ou la modification de dépendances
Plate-forme | Normes de conception ✅ Des normes de déclaration des dépendances existent
Plate-forme | Packages ✅ Aucune métadonnées n'est dupliquée entre les packages
Plate-forme | Packages ✅ Pour le développement de package, tous les travaux de développement en phase initiale sont effectués dans des organisations tests
Plate-forme | Contrôle de source ✅ Les développeurs peuvent créer des organisations tests et déployer des métadonnées de package avec succès depuis le contrôle source
Plate-forme | Contrôle de source ✅ Les versions de package pour les packages déverrouillés utilisent l'aliasing (LATEST) pour déclarer des dépendances dans des manifestes sfdx-project.json

Modèle de couplage lâche

En savoir plus sur Adaptable bien architecté → Composable → Packageabilité → Couplage libre

Où chercher ?
Domaine de produit | Emplacement
À quoi ressemble le bien ?
Modèle
Plate-forme | Apex ✅ Méthodes dépendantes des types de métadonnées personnalisées appropriés de référence d'informations dynamiques à l'exécution
Plate-forme | Apex ✅ Les services communs et le code boilerplate sont définis en utilisant des classes Apex abstraites ou virtuelles
Plate-forme | Normes de conception ✅ (Facultatif) Tous les cas d'utilisation approuvés pour des paramètres personnalisés sont clairement répertoriés (si vous en avez)
Plate-forme | Normes de conception ✅ Les conventions de nommage indiquent comment désigner les unités de package
Plate-forme | Normes de conception ✅ Il est possible de rechercher et de trouver une liste de toutes les unités de package actuellement définies (et conventions de nommage associées)
Plate-forme | Normes de conception ✅ Des normes existent pour proposer des ajouts ou des modifications d'unité de package
Plate-forme | Organisation ✅ Les types de métadonnées personnalisées fournissent des informations dynamiques à l'exécution pour les personnalisations de code et déclaratives
Plate-forme | Organisation ✅ Aucun objet personnalisé n'existe afin de fournir des informations dynamiques à l'exécution pour les personnalisations de code ou déclaratives
Plate-forme | Organisation ✅ Aucun paramètre personnalisé n'existe ou peu de paramètres personnalisés existent, et aucun n'est associé à la fonctionnalité empaquetée
Plate-forme | Packages ✅ Aucun package non géré n'est défini en production ou en sandbox
Plate-forme | Packages ✅ Les packages déverrouillés dépendants de l'organisation sont utilisés uniquement pour des expériences en phase initiale ou de validation de concept
Plate-forme | Contrôle de source ✅ Les fichiers de package.xml sont affichés uniquement dans les manifestes de projet à un stade précoce ou de validation de concept

Anti-modèle de gestion des dépendances

En savoir plus sur Adaptable bien archivé → Composable → Packageabilité → Gestion des dépendances

Où chercher ?
Domaine de produit | Emplacement
Qu'éviter ?
Anti-Pattern
Plate-forme | Normes de conception ⚠️ Les normes de conception n’existent pas ou ne traitent pas de la manière de déclarer les dépendances
Plate-forme | Packages ⚠️ Les dépendances sont contournées en dupliquant les métadonnées dans différents packages
Plate-forme | Packages ⚠️ Le développement anticipé de packages se produit dans les sandbox Developer ou le développement anticipé de packages ne peut pas se produire dans les organisations tests
Plate-forme | Contrôle de source ⚠️ Les développeurs ne peuvent pas travailler avec succès avec des organisations tests en utilisant le contrôle source
Plate-forme | Contrôle de source ⚠️ Les versions des packages déverrouillés sont explicitement déclarées (pas d’aliasing LATEST) dans les manifestes de sfdx-project.json

Anti-modèle de couplage lâche

En savoir plus sur Adaptable bien architecté → Composable → Packageabilité → Couplage libre

Où chercher ?
Domaine de produit | Emplacement
Qu'éviter ?
Anti-Pattern
Plate-forme | Apex ⚠️ Les services communs et le code chaudière ne se distinguent pas facilement des autres classes
Plate-forme | Apex ⚠️ Les méthodes n'utilisent pas une approche cohérente pour accéder à des informations dynamiques à l'exécution, ou les méthodes interrogent des objets personnalisés pour des informations sur le comportement à l'exécution, ou référencent des paramètres personnalisés
Plate-forme | Apex ⚠️ Les références internes entre les classes et les méthodes sont difficiles à suivre et sont incohérentes dans la base de code
Plate-forme | Normes de conception ⚠️ Les normes de conception n’existent pas ou ne traitent pas des unités de package et des cas d’utilisation
Plate-forme | Organisation ⚠️ Des paramètres personnalisés sont utilisés
Plate-forme | Organisation ⚠️ Des objets personnalisés existent afin de fournir des informations dynamiques à l’exécution pour des personnalisations de code ou déclaratives
Plate-forme | Organisation ⚠️ Les types de métadonnées personnalisées ne sont pas utilisés (ou ne sont pas utilisés de façon cohérente) pour fournir des informations dynamiques à l’exécution pour les personnalisations de code et déclaratives
Plate-forme | Packages ⚠️ Les packages non gérés sont définis en production ou en sandbox
Plate-forme | Packages ⚠️ Tous les packages sont des packages déverrouillés dépendants de l'organisation
Plate-forme | Contrôle de source ⚠️ Les fichiers package.xml sont utilisés pour contrôler les déploiements de métadonnées