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?