Portada Command Query Responsibility Segregation By Example

Datos do libro

  • Título: Command Query Responsibility Segregation By Example
  • Autores: Carlos Buenosvinos, Christian Soronellas, Keyvan Akbary
  • Idioma: Inglés
  • Publicado: Leanpub
  • URL: https://leanpub.com/cqrs-by-example
  • Repositorio de exemplos: https://github.com/dddshelf/cheeper-ddd-cqrs-example

Introducción

Adentrarse no complexo mundo da arquitectura de software pode ser un desafío. A pesar de levar xa uns anos traballando deste xeito, a lectura do libro “Command Query Responsibility Segregation by Example” de Carlos Buenosvinos, Christian Soronellas e Keyvan Akbary ofrecenos unha guía práctica, especialmente para aqueles que traballamos con PHP. Este libro vai máis aló da teoría, brindándonos exemplos concretos sobre cómo implementar CQRS no noso día a día, incidindo cando esta arquitectura é útil e cando non.

Este é o segundo traballo dos autores, que se volven a unir para achegarnos o seu coñecemento e experiencia dende que sacaran Domain-Driven Design in PHP. Nel a teoría entrelázase con casos de uso real, proporcionando unha experiencia de aprendizaxe máis doada.

Sobre os autores

Carlos Buenosvinos: con máis de dúas décadas de experiencia en roles destacados como Tech Lead, VP of Engineering e CTO. Carlos deixou a sua pegada en empresas como SEAT, XING, Atrápalo, PCComponentes, Emagister, eBay, Lowpost e Vendo entre outras. É o creador de Ansistrano e co-autor do libro Domain-Driven Design in PHP. Tamén organiza as DevOps Barcelona Conference e PHP Barcelona Conference. A sua canle Rigor Talks é unha fonte excelente de coñecemento tecnolóxico, aínda que parece tela abandoada.

Christian Soronellas: con máis de quince anos de experiencia en postos como Software Engineer ou CTO, Christian contribuiu en empresas como Privalia, Emagister, Atrápalo, Enalquiler, PlanetaHuerto, PcComponentes ou Opositatest. Co-autor do libro Domain-Driven Design in PHP tamén é un organizador activo de eventos tecnolóxicos, participando nas DevOps Barcelona Conference e PHP Barcelona Conference.

Keyvan Akbary: con máis de quince anos no sector, Keyvan desenvolveu produtos e axudou equipos a alcanzar o éxito. O seu enfoque no crecemento de quipos en empresas de produto, con énfasis en Extreme Programming, DevOps, Lean e Kanban, deixou marca en sitios como Youzee, Wise e Cabify. Ademáis fundou a sua propia startup, Funddy. Tamén foi co-autor do libro Domain-Driven Design in PHP.

Con este equipo de autores, o libro é unha valiosa adición á arquitectura de software e CQRS.

O libro

O longo dos capítulos do libro, os autores amósannos a arquitectura do software CQRS, utilizando PHP e o framework Symfony. A través da creación dunha réplica de Twitter chamada Cheeper, exploramos cada un dos compoñentes esenciais de CQRS.

A estrutura do libro divídese en capítulos, cada un centrado nunha peza fundamental, como os Commands ou as Queries. Cada capítulo non so presenta a teoría detrás dos conceptos, se non que tamén nos provee de casos de uso reais respaldados polo código. Este código non é só un acompañante, se non que se atopa dispoñible nun repository de Github, permitíndonos executar a aplicación no noso entorno local e profundizar na práctica.

O estilo e a claridade ca que os autores nos van presentando os distintos conceptos fai que sexa todo trasladable ao noso día a día, cos distintos casos de uso. Proporcionando non só un mapa trazado de como facer as cousas, se non ofrecendo distintas alternativas en función da complexidade que queiramos abrazar. A nivel técnico é un libro de excelente calidade, cubrindo os temas que asociaba a CQRS e ofrecendo algunhas cousas que ata este momento non traballei, como Event Sourcing.

En resumo, o libro non só é unha guía teórica, se non un recurso práctico que permite consolidar o que lemos a través da práctica e da experimentación.

Conclusión

Se ben e certo que non considero este libro como a introducción perfecta para queles que inician no mundo do CQRS, creo firmemente que para os profesionais máis experimentados, que xa tivesen un achegamento previo, este libro debería ser unha lectura obrigatoria.

Persoalmente, atopei que o libro cumpre co que promete e vai máis aló. Non só adquirín novos coñecementos, se non tamén novas perspectivas sobre a aplicación do que xa sabía. Este enfoque práctico, respaldado por exemplos prácticos e casos de uso reais, fíxome profundizar no CQRS e abriu novas portas no meu enfoque cara a arquitectura de software.

Para aqueles que buscan non só entender os conceptos teóricos, se non tamén aplicalos de xeito efectivo no desenvolvemento de software no mundo real, “Command Query Responsibility Segregation By Example” ofrece unha guía sólida que pode levar ao lector a un novo nivel.