Categoría

Arquitectura del software

Patrones, decisiones tecnicas y formas practicas de mantener sistemas evolutivos.

Subcategoría

Fundamentos para entender las decisiones

  1. Cambiar sin miedo: complejidad, refactorización y deuda técnica

    Distingue la dificultad del negocio de la que añade el código, refactoriza conservando el comportamiento y prioriza la deuda técnica según el trabajo que provoca. Un ADR breve ayuda a conservar las razones de las decisiones que afectan al diseño.

    Leer artículo
  2. Calidad, pruebas y observabilidad: qué significa que una aplicación funcione bien

    Los atributos de calidad necesitan objetivos concretos y compromisos explícitos. La testabilidad ayuda a comprobar el comportamiento y la observabilidad a entender qué ocurre en marcha.

    Leer artículo
  3. SOLID: cinco principios para repartir responsabilidades

    Los cinco principios SOLID ayudan a revisar por qué cambia una pieza, cómo admite variaciones y qué contratos y dependencias necesita. Cada separación debe aportar una mejora concreta.

    Leer artículo
  4. Dependencias y contratos: qué necesita saber cada pieza

    Una colaboración necesita aclarar qué conoce cada pieza y qué comportamiento promete. Los contratos expresan condiciones, resultados y errores para reducir suposiciones implícitas.

    Leer artículo
  5. KISS, DRY y YAGNI: tres ideas para no complicarnos la vida

    KISS revisa la complejidad de la solución, DRY busca una referencia clara para cada conocimiento y YAGNI cuestiona capacidades futuras que todavía no necesitamos.

    Leer artículo
  6. Arquitectura de software: las ideas antes que los diagramas

    La arquitectura organiza responsabilidades y relaciones. Abstracción, encapsulación, cohesión, acoplamiento y modularidad ayudan a entender qué hace cada pieza y cómo afectan los cambios al resto de la aplicación.

    Leer artículo