Componible: empaquetabilidad

Patrón de gestión de dependencias

Obtenga más información acerca de Adaptable bien diseñado → Componible → Apto para empaquetado → Gestión de dependencias

¿Dónde buscar?
Área de producto | Ubicación
¿Qué aspecto tiene?
Patrón
Plataforma | Estándares de diseño ✅ Existen estándares para introducir o modificar dependencias
Plataforma | Estándares de diseño ✅ Existen estándares para declarar dependencias
Plataforma | Paquetes ✅ No hay metadatos duplicados entre paquetes
Plataforma | Paquetes ✅ Para el desarrollo de paquetes, todo el trabajo de desarrollo en la etapa inicial se realiza en organizaciones borrador
Plataforma | Control de origen ✅ Los desarrolladores pueden crear organizaciones borrador e implementar metadatos de paquetes con éxito desde el control de origen
Plataforma | Control de origen ✅ Las versiones de paquetes para paquetes desbloqueados utilizan alias (LATEST) para declarar dependencias en manifiestos de sfdx-project.json

Patrón de acoplamiento suelto

Obtenga más información acerca de Adaptable bien diseñado → Componible → Empaquetabilidad → Acoplamiento suelto

¿Dónde buscar?
Área de producto | Ubicación
¿Qué aspecto tiene?
Patrón
Plataforma | Apex ✅ Los métodos dependientes de información dinámica en tiempo de ejecución hacen referencia a tipos de metadatos personalizados apropiados
Plataforma | Apex ✅ Los servicios comunes y el código de placa de caldera se definen utilizando clases Apex abstractas o virtuales
Plataforma | Estándares de diseño ✅ (Opcional) Todos los casos de uso aprobados para la configuración personalizada están claramente enumerados (si los tiene)
Plataforma | Estándares de diseño ✅ Las convenciones de nomenclatura tratan cómo denotar unidades de paquetes
Plataforma | Estándares de diseño ✅ Es posible buscar y encontrar una lista de todas las unidades de paquete definidas actualmente (y convenciones de nomenclatura relacionadas)
Plataforma | Estándares de diseño ✅ Existen estándares para proponer adiciones o cambios de unidades de paquete
Plataforma | Organización ✅ Los tipos de metadatos personalizados proporcionan información dinámica en tiempo de ejecución para personalizaciones de código y declarativas
Plataforma | Organización ✅ No existen objetos personalizados para proporcionar información dinámica en tiempo de ejecución para personalizaciones de código o declarativas
Plataforma | Organización ✅ No existen configuraciones personalizadas o existen pocas configuraciones personalizadas, y ninguna está relacionada con funciones empaquetadas
Plataforma | Paquetes ✅ No se definen paquetes no gestionados en entornos de producción o sandbox
Plataforma | Paquetes ✅ Los paquetes desbloqueados dependientes de la organización solo se utilizan para experimentos de fase temprana o pruebas de concepto
Plataforma | Control de origen ✅ Los archivos de package.xml solo aparecen en la etapa inicial o manifiestos de proyecto de prueba de concepto

Antipatrón de Gestión de dependencias

Obtenga más información acerca de Adaptable bien diseñado → Componible → Apto para empaquetado → Gestión de dependencias

¿Dónde buscar?
Área de producto | Ubicación
¿Qué evitar?
Antipatrón
Plataforma | Estándares de diseño ⚠️ Los estándares de diseño no existen o no tratan sobre cómo declarar dependencias
Plataforma | Paquetes ⚠️ Las dependencias se evitan duplicando metadatos en paquetes diferentes
Plataforma | Paquetes ⚠️ El desarrollo de paquetes temprano se produce en entornos sandbox de desarrollador o el desarrollo de paquetes temprano no puede producirse en organizaciones borrador
Plataforma | Control de origen ⚠️ Los desarrolladores no pueden trabajar con éxito con organizaciones borrador utilizando el control de origen
Plataforma | Control de origen ⚠️ Las versiones de paquetes para paquetes desbloqueados se declaran explícitamente (sin alias de LATEST) en manifiestos de sfdx-project.json

Antipatrón de acoplamiento suelto

Obtenga más información acerca de Adaptable bien diseñado → Componible → Empaquetabilidad → Acoplamiento suelto

¿Dónde buscar?
Área de producto | Ubicación
¿Qué evitar?
Antipatrón
Plataforma | Apex ⚠️ Los servicios comunes y el código de placa de caldera no se distinguen fácilmente de otras clases
Plataforma | Apex ⚠️ Los métodos no utilizan un enfoque coherente para acceder a información dinámica en tiempo de ejecución o los métodos consultan objetos personalizados para información de comportamiento en tiempo de ejecución o código hace referencia a parámetros personalizados
Plataforma | Apex ⚠️ Las referencias internas entre clases y métodos son difíciles de seguir y no son coherentes en toda la base de códigos
Plataforma | Estándares de diseño ⚠️ Los estándares de diseño no existen o no tratan con unidades de paquete y casos de uso
Plataforma | Organización ⚠️ Se utilizan parámetros personalizados
Plataforma | Organización ⚠️ Existen objetos personalizados para proporcionar información dinámica en tiempo de ejecución para personalizaciones de código o declarativas
Plataforma | Organización ⚠️ Los tipos de metadatos personalizados no se utilizan (o no se utilizan de forma coherente) para proporcionar información dinámica en tiempo de ejecución para personalizaciones de código y declarativas
Plataforma | Paquetes ⚠️ Los paquetes no gestionados se definen en entornos de producción o sandboxes
Plataforma | Paquetes ⚠️ Todos los paquetes son paquetes desbloqueados dependientes de la organización
Plataforma | Control de origen ⚠️ Los archivos de package.xml se utilizan para controlar implementaciones de metadatos