awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

1 repositorio

Awesome GitHub RepositoriesState Machine

Dynamic programming patterns where transitions between states are governed by a state machine.

Distinct from Dynamic Programming: Specifically uses state machine transitions for DP, unlike general recursive decomposition.

Explore 1 awesome GitHub repository matching software engineering & architecture · State Machine. Refine with filters or upvote what's useful.

Awesome State Machine GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • aasm/aasmAvatar de aasm

    aasm/aasm

    5,219Ver en GitHub↗

    Esta librería proporciona un framework para definir máquinas de estados finitos dentro de clases Ruby para gestionar ciclos de vida de objetos complejos. Funciona como un motor de flujo de trabajo declarativo, permitiendo a los desarrolladores modelar estados, eventos y transiciones de objetos a través de un lenguaje específico de dominio legible. Al integrarse directamente con las capas de persistencia de base de datos, el framework asegura que los cambios de estado se sincronicen con los registros de almacenamiento mientras mantiene la integridad de los datos mediante la gestión de transacciones y el bloqueo de filas. La librería se distingue por imponer reglas de negocio estrictas a través de guardas de transición condicionales y prevenir la modificación directa del estado, asegurando que todos los cambios en el ciclo de vida ocurran exclusivamente a través de eventos definidos. Soporta múltiples máquinas de estados independientes dentro de una sola clase al mapearlas a campos de base de datos distintos, proporcionando un control de ciclo de vida aislado. Además, genera automáticamente métodos de instancia dinámicos para consultar estados y disparar eventos, junto con ámbitos de consulta de base de datos que simplifican el filtrado de objetos según su estado actual. Más allá de la gestión central del ciclo de vida, el framework incluye utilidades para la localización de nombres de estado para soportar interfaces multilingües y proporciona hooks para ejecutar lógica personalizada antes o después de las transiciones. También ofrece matchers de prueba especializados para verificar configuraciones de máquinas de estados y lógica de transición dentro de suites de pruebas automatizadas. El proyecto incluye herramientas para compilar código fuente y configuraciones en documentación estructurada para ayudar con la referencia del sistema.

    Supports hosting multiple independent state machines within a single class by mapping them to distinct database fields.

    Ruby
    Ver en GitHub↗5,219
  1. Home
  2. Software Engineering & Architecture
  3. Dynamic Programming
  4. State Machine

Explorar subetiquetas

  • Multi-Machine ConfigurationsSupport for hosting multiple independent state machines within a single class by mapping them to distinct storage fields. **Distinct from State Machine:** Distinct from general state machines: specifically addresses the architectural pattern of managing multiple concurrent state machines on a single object.