5 repositorios
Organization of application functionality into decoupled, independent units managed as a group.
Distinct from Modular Business Logic Compositions: Focuses on general functional modularity rather than specifically business logic compositions for scaling.
Explore 5 awesome GitHub repositories matching software engineering & architecture · Functional Logic Modularization. Refine with filters or upvote what's useful.
Zend Framework es un conjunto integral de componentes desacoplados para construir aplicaciones web modulares y orientadas a eventos. Implementa una arquitectura MVC para separar la lógica de negocio de la interfaz de usuario y proporciona un sistema estructurado de manejo de peticiones a través de un pipeline de middleware secuencial. El proyecto cuenta con un contenedor de inyección de dependencias basado en fábricas para automatizar la instanciación de objetos y gestionar los ciclos de vida de las clases. También incluye una suite de seguridad integral para verificar identidades de usuario y restringir el acceso a recursos utilizando listas de control de acceso (ACL) y adaptadores de control de acceso basado en roles (RBAC). El framework cubre una amplia gama de capacidades, incluyendo abstracción de bases de datos mediante gateways de tablas y filas, implementaciones de llamadas a procedimientos remotos (RPC) para SOAP y JSON-RPC, y un framework de aplicaciones de consola para interfaces de línea de comandos. El área de superficie adicional incluye serialización de datos, validación de entradas, gestión de sesiones y herramientas para el envío de correos electrónicos e internacionalización de contenido.
Divides the application into decoupled, independent units of functionality managed as a coherent group.
BehaviorTree.CPP es una biblioteca de C++ para diseñar lógica de cambio de tareas y comportamientos reactivos utilizando una estructura de árbol jerárquico. Proporciona un marco para crear sistemas de lógica reactiva que gestionan comportamientos complejos a través de un motor de ejecución y un almacén de datos centralizado para compartir el estado entre nodos. La biblioteca desacopla la lógica de comportamiento de alto nivel del código fuente mediante el uso de un analizador XML para definir la morfología del árbol. Además, amplía su funcionalidad a través de un visualizador dedicado para monitorear estados de ejecución en tiempo real y un puente especializado para integrar acciones y servicios de ROS2 en el árbol de comportamiento para el control robótico. El sistema admite la gestión de tareas asíncronas y el diseño de comportamiento reactivo, lo que permite la orquestación de operaciones de larga duración y la capacidad de interrumpir tareas según las condiciones del entorno. Utiliza una pizarra (blackboard) para el intercambio de datos, mapeo de variables basado en puertos para la modularidad y admite extensiones en tiempo de ejecución a través de complementos.
Organizes behavioral logic into decoupled units via XML definitions to separate design from implementation.
Este proyecto es un curso de diseño arquitectónico y recurso educativo centrado en dividir grandes bases de código JavaScript en componentes independientes, testeables y agnósticos al entorno. Sirve como una guía de programación modular y referencia para implementar estrategias estructurales y mejores prácticas en entornos de producción. El material enfatiza el uso de patrones de diseño para crear componentes desacoplados y lógica robusta. Cubre específicamente estrategias para la inversión de dependencias y el uso de interfaces genéricas para asegurar que la lógica pueda ejecutarse en diferentes runtimes de JavaScript. La guía proporciona instrucciones sobre cómo escalar la arquitectura de aplicaciones y gestionar la complejidad mediante modelos de abstracción en capas y modularidad de responsabilidad única. Cubre la aplicación de patrones de diseño modular para mantener un código limpio y manejable a medida que los proyectos crecen.
Divides application functionality into decoupled, independent units to maintain single-responsibility modularity.
Seneca es un framework de arquitectura basada en mensajes y kit de herramientas de microservicios para Node.js. Funciona como un orquestador de tareas distribuido y enrutador de mensajes basado en patrones, permitiendo a los desarrolladores construir sistemas de servicios desacoplados que se comunican a través de un bus de mensajes. El framework se distingue por un sistema de plugins modular que organiza la lógica de negocio en módulos reutilizables y configurables. Soporta extensiones de acción dinámicas, permitiendo que nuevos manejadores envuelvan o sobrescriban patrones de acción existentes para inyectar lógica personalizada sin modificar el código original. El sistema cubre una amplia gama de capacidades, incluyendo comunicación de servicios distribuidos, orquestación de acciones asíncronas y gestión de datos de entidades. También proporciona herramientas de observabilidad para el rastreo de patrones de acción, visualización de logs basada en web y utilidades de aseguramiento de calidad para el mocking de dependencias de servicios.
Splits application logic into independent processes that exchange messages through standard web protocols or buses.
Este proyecto proporciona una guía de estilo integral y un framework arquitectónico para construir componentes mantenibles, modulares y consistentes dentro del ecosistema Vue.js. Establece un conjunto de reglas estandarizadas para organizar los elementos de la interfaz de usuario en unidades autónomas, asegurando que la lógica y los estilos permanezcan aislados para evitar efectos secundarios no deseados. La guía destaca por centrarse en la encapsulación estricta y el diseño de interfaces claro. Promueve el uso de alcance de estilo basado en espacios de nombres para evitar fugas visuales y aplica entradas de componentes predecibles a través de convenciones de nomenclatura descriptivas y tipos de datos simples. Al definir límites claros para las interacciones de los componentes, el framework asegura que las unidades individuales permanezcan independientes y reutilizables en aplicaciones a gran escala. Más allá de los patrones arquitectónicos centrales, el proyecto cubre una amplia gama de estándares de desarrollo, incluyendo jerarquías de archivos estandarizadas, linting automatizado y prácticas de documentación para interfaces de componentes. Enfatiza la importancia de la extracción de lógica modular y convenciones de nomenclatura consistentes para facilitar la colaboración entre grandes equipos de ingeniería. El repositorio sirve como referencia para implementar prácticas de codificación uniformes y patrones estructurales durante todo el ciclo de vida del desarrollo.
Abstracts shared functionality into independent modules to reduce code duplication and simplify the maintenance of individual components.