Portada de Patterns, Principles, and Practices of Domain-Driven Design

Patterns, Principles, and Practices of Domain-Driven Design

por Eric Evans · 2014

Ver sugerencias

Sinopsis

Más de Eric Evans

Ver autor →

Otras obras del mismo autor en el catálogo

Libros similares

Libros relacionados según distintos criterios de búsqueda

A Philosophy of Software Design

John Ousterhout

2018·divulgacion

Aunque no se centra explícitamente en el Diseño Orientado al Dominio, Ousterhout resalta la necesidad de encapsular complejas funcionalidades detrás de interfaces simples y limpias. Esto resuena con los principios de 'ubicidad del lenguaje' y 'contextos delimitados' del DDD, que buscan modelar el dominio de forma que la complejidad inherente se gestione y se exponga de manera controlada, haciendo la conexión inesperada de que un dominio bien modelado es un tipo de diseño de software con interfaces profundas pero fáciles de usar.

Mientras que 'Domain-Driven Design' busca crear sistemas que funcionen bien mediante un modelado riguroso, 'Systemantics' ofrece una perspectiva inversa, examinando por qué los sistemas fallan. Su conexión reside en la comprensión profunda de la complejidad inherente y la necesidad de gestionar los límites, una lección crucial para cualquier arquitecto de software que intente evitar los problemas que DDD busca resolver, haciendo una conexión lateral sobre la conciencia de los riesgos en el diseño de sistemas complejos.

Thinking in Systems: A Primer

Donella H. Meadows

2008·divulgacion

DDD se basa en una profunda comprensión de cómo funcionan los sistemas de negocio y cómo se interrelacionan sus componentes. Este libro, 'Thinking in Systems', proporciona el marco filosófico más amplio para abordar cualquier sistema complejo, ofreciendo un lenguaje y una mentalidad para identificar flujos, retroalimentaciones y estructuras que subyacen a los dominios de negocio, lo que es esencial para modelar eficazmente un dominio.

On the Origin of Species

Charles Darwin

1859·divulgacion

DDD trata con la evolución de sistemas complejos en el tiempo, adaptándose a las necesidades cambiantes del negocio. La teoría de Darwin ofrece un paralelismo filosófico profundo sobre cómo las estructuras (especies, en su caso; modelos de dominio, en DDD) evolucionan, se ramifican y se adaptan a su entorno (el ecosistema, en su caso; los requisitos y realidades del negocio, en DDD). Comprender la lógica subyacente a la evolución natural ayuda a apreciar la necesidad de un modelo de dominio adaptable y resiliente.

Aunque no exclusivo de la programación, Hamming aborda la esencia de cómo los ingenieros y científicos resuelven problemas complejos y construyen sistemas. Su enfoque en el pensamiento riguroso, la claridad de los objetivos y la experimentación resuena con la disciplina necesaria para el DDD, que no es solo una técnica, sino una forma de abordar los problemas del dominio, haciendo de este un texto poco conocido en la esfera del software pero muy relevante filosóficamente.

Structure and Interpretation of Computer Programs

Harold Abelson, Gerald Jay Sussman, Julie Sussman

1985·divulgacion

A pesar de ser un clásico en la informática académica, no se suele asociar directamente con 'Domain-Driven Design'. Sin embargo, su énfasis en la abstracción, la encapsulación y la composición de sistemas complejos de manera rigurosa y conceptualmente coherente es una piedra angular fundamental que subyace a la forma en que se deben modelar los dominios en DDD. Es una conexión estructural profunda sobre cómo conceptualizar y construir sistemas de software robustos y expresivos.

Booch fue uno de los arquitectos iniciales que formalizaron cómo mapear el mundo real en modelos de software. Su enfoque en la identificación de objetos de dominio, sus atributos y comportamientos, y la organización jerárquica de la complejidad, sienta las bases estructurales sobre las que DDD elabora con énfasis en el lenguaje ubicuo y los contextos delimitados. Aunque más general, comparte la misma preocupación por la correspondencia entre la realidad del problema y el diseño del software.

Software Architecture in Practice

Len Bass, Paul Clements, Rick Kazman

1998·divulgacion

Este libro aborda la arquitectura de software desde una perspectiva estructural, definiendo cómo las decisiones arquitectónicas impactan la calidad del sistema. DDD, aunque centrado en el dominio, influye directamente en la forma en que se organiza la arquitectura (e.g., límites de contextos, capas). Este libro comparte con DDD la preocupación por estructurar el software para que sea claro, adaptable y soporte los objetivos del negocio, presentando cómo las decisiones de diseño a gran escala se moldean para satisfacer requisitos específicos.

Ayúdame a que yoleo sea sostenible