El problema principal
Al ver el buen soporte de las plataformas más modernas de programación tienen para la gestión de paquetes (piense gem
, npm
, pip
, etc.), ¿tiene sentido para diseñar una aplicación o sistema integrado por paquetes desarrollados internamente, con el fin de promover y crear una arquitectura de acoplamiento flexible?
Ejemplo
Un ejemplo de esto sería crear paquetes para el acceso a la base de datos, así como para la autenticación y otros componentes del sistema. Estos, por supuesto, también usan paquetes externos. Luego, su sistema importa y usa estos paquetes, en lugar de incluir su código dentro de su propia base de código.
Consideraciones
Para mí, parece que esto promovería el desacoplamiento del código y ayudaría a la mantenibilidad, casi de una manera basada en la Web frente a una aplicación de escritorio (las actualizaciones se aplican casi automáticamente, una base de código único para una funcionalidad única, etc.).
¿Parece esto un concepto de diseño racional y sensato? ¿Es esto realmente utilizado como una forma estándar de estructurar aplicaciones hoy en día?