arquitectura hexagonal

Recursos de programación de arquitectura hexagonal
Hoy empezamos una nueva sección: Analizar el código de un proyecto real. En este caso veremos código de #Brainity. Donde con una aplicación hecha a base de Docker, #Laravel, #VueJS, y tests han conseguido arrancar un proyecto que dará mucho que hablar 😊 🔗 Enlaces relacionados: ├ 🥼 DDD en Laravel: Desintoxicándonos de Eloquent: https://youtu.be/EInyOtPra44 ├ 🐘 Estructura de carpetas - DDD en PHP: https://youtu.be/UFnABp2s8Y0 ├ 🧠 Brainity: https://brainity.co ├ 👩‍💻 Curso "Migración progresiva a VueJS": http://bit.ly/curso-vuejs ├ 🐳 Curso "Docker: De 0 a deploy": http://bit.ly/curso-docker-ctv ├ ✅ Curso "Testing: Introducción y trabajo en equipo": http://bit.ly/curso-testing-ctv ├ 🎯 Curso "Arquitectura Hexagonal": http://bit.ly/curso-hexagonal-ctv └ 💸 Oferta lanzamiento curso "DDD en PHP": http://bit.ly/descuento-ctv {▶️} CodelyTV ├ 🎥 Suscríbete a nuestro canal: https://www.youtube.com/c/CodelyTV?sub_confirmation=1 ├ 𝐟 Facebook: https://facebook.com/CodelyTV/ ├ 📸 Instagram: https://instagram.com/CodelyTV/ ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 👨🏻 Twitter Javi: https://twitter.com/JavierCane ├ 💂‍♂️ Twitter Rafa: https://twitter.com/rafaoe └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
En esta charla veremos la evolución de una aplicación desde código Spaghetti hasta CQRS y algo de Event Sourcing con Carlos Buenosvinos Zamora actualmente Head of SEAT:CODE. Anteriormente ocupo los siguientes cargos: Ex VP Of Technology at XING, Ex CTO at Atrápalo. Organizador de múltiples eventos: PHP Barcelona y DevOps Barcelona. Es el creador de Ansistrano, utilidad basada en Ansible para desplegar aplicaciones. Ha impartido ponencias en las mayores conferencias de PHP por todo el mundo, es autor del libro “Domain-Driven Design in PHP”, que se ha convertido en uno de los manuales por excelencia sobre la implantación de DDD en entornos PHP además del traductor oficial al español del libro “Domain-Driven Design Distilled” de Vaughn Vernon. Slides: https://es.slideshare.net/carlosbuenosvinos/road-from-hex-architecture-to-event-sourcing Web (https://carlosbuenosvinos.com/) Meetup: https://www.meetup.com/es-ES/phpmad/events/265901912/ Twitter: https://twitter.com/phpmad Host: https://www.mo2o.com/ Nos vemos en PHPMad...
SOLID, Arquitectura Hexagonal, CQRS, DDD… total, que llega el momento de modelar nuestras entidades y servicios, y nos hacemos un lío que no sabemos ni por dónde empezar 😅. Sensación de bloqueo. "Hostia, llevo 3 horas pensando y dibujando posibles alternativas y ninguna me convence. Al final será verdad que no tengo ni idea 😬". Planteamos hipótesis erróneas del estilo… _si lo hago con DDD ""de verdad"" la query no aguanta ni 100 peticiones concurrentes, pero esto otro me parece una chapuza, y esto otro viola 7 de los 5 principios SOLID… ¡¡¡mmmmmamaaaaaa!!! 😱._ Keep calm. 👼 En esta charla planteamos distintos escenarios prácticos y reales. Casos de uso de esos que se pueden ver en un screenshot y donde la gran mayoría de desarrolladores web y móviles nos podemos ver identificados: Listado de items con 652342 filtros y combinatorias (backoffices, páginas de categoría o filtrados, búsquedas…). Tipologías de items con partes comunes pero pequeños matices (productos de distintas categorías por ejemplo). Distintas opciones a la hora de modelar nuestras interfaces para hacerlas realmente agnósticas de la infraestructura que hay detrás En fin. Cositas que nos han supuesto un reto a la hora de plantearlas, que hemos fallado modelando y hasta que no lo hemos tenido picado no nos hemos dado cuenta de la magnitud de la tragedia, y batallitas que ojalá puedan serle útiles a alguien 🙂 ------------- Todos los vídeos de Barcelona Software Crafters 2019 en: https://lk.autentia.com/SCBCN19-YT ¡Conoce Autentia! Twitter: https://goo.gl/MU5pUQ Instagram: https://lk.autentia.com/instagram LinkedIn: https://goo.gl/2On7Fj/ Facebook: https://goo.gl/o8HrWX
Mostraremos cómo hemos trabajado en un proyecto Ruby basándonos en Arquitectura Hexagonal/Clean: Patrones varios, inyección de dependencias, TDD, Crafted Design, unas gotas de DDD... Y por supuesto mostraremos código y las herramientas/gemas utilizadas en el camino: Sinatra/Grape, Sequel, APIs de terceros, Rspec...
I've just watched this wonderful talk by Juan Manuel Serrano and Javier Ferrer Acercándonos a la programación funcional a través de la arquitectura hexagonal - por Garajeando
La programación funcional está repleta de vocablos aparentemente inaprensibles: mónadas, funtores, type classes, tipos algebraicos de datos… 🤯 Todos estos conceptos de la programación funcional pueden parecer alejados de lo que acostumbramos a usar en el mundo mas puramente orientado a objetos. No obstante, ¿qué pasa si ponemos frente a frente ambas arquitecturas y patrones? En esta charla queremos unir las experiencias de Habla Computing con la programación funcional y CodelyTV con Arquitectura Hexagonal para motivar el aprendizaje de patrones y principios traídos de la programación funcional poniéndolos en contexto a nivel de arquitectura. Lo haremos desde un enfoque práctico viendo los paralelismos con los patrones de orientación a objetos y cómo podemos potenciarlos 🦄 Trataremos temas característicos de la Arquitectura Hexagonal como la definición y separación de capas, la regla de dependencia, y el modelado del dominio para ver qué cosas nos podemos traer de la programación funcional y así enriquecer ese conocimiento existente en la Orientación a Objetos. Luego ya le pondremos nombre y veremos que podemos entender el significado de las mónadas, las type classes y otras técnicas de la programación funcional, a través del papel que juegan en el diseño de una arquitectura hexagonal.
Este pasado 26 de Enero he tenido la suerte de poder asistir a mi segunda Bilbostack. Después de asistir el año pasado y quedar encantado del contenido, la organización y el networking que se genera alrededor, ya tenia completamente decidido que iba a volver a ir este año. Así que cuando me llegó un mensaje de Vicenç invitandome a participar como ponente, la verdad es que no dudé ni un segundo en aceptar.Sesiones:Kubernetes is not a deployment tool: it's a platform Jose Armesto @...
Javi Ferrer y Juanma Serrano dieron una charla de 'Acercamiento a la Programación Funcional a través de la Arquitectura Hexagonal' en la Software Crafters de Barcelona. Jorge Barroso ha compartido la experiencia que han vivido estos meses en Karumi desarrollando en Kotlin, todas las técnicas y métodos que, donde a traves de los tipos, se reducen los errores y se hace el camino del desarrollo más sencillo. Todos los vídeos de Barcelona Software Craftmanship: https://www.youtube.com/playlist?list=PLKxa4AIfm4pXO6GQN0oRROrxgz6MbuN6c Twitter; https://goo.gl/MU5pUQ Instagram; https://lk.autentia.com/instagram LinkedIn https://goo.gl/2On7Fj/ Facebook; https://goo.gl/o8HrWX
La programación funcional está repleta de vocablos aparentemente inaprensibles: mónadas, funtores, type classes, tipos algebraicos de datos… 🤯 Todos estos conceptos de la programación funcional pueden parecer alejados de lo que acostumbramos a usar en el mundo más puramente orientado a objetos. No obstante, ¿qué pasa si ponemos frente a frente ambas arquitecturas y patrones? En esta charla queremos unir las experiencias de Habla Computing con la programación funcional y CodelyTV con Arquitectura Hexagonal para motivar el aprendizaje de patrones y principios traídos de la programación funcional poniéndolos en contexto a nivel de arquitectura. Lo haremos desde un enfoque práctico viendo los paralelismos con los patrones de orientación a objetos y cómo podemos potenciarlos 🦄 Trataremos temas característicos de la Arquitectura Hexagonal como la definición y separación de capas, la regla de dependencia, y el modelado del dominio para ver qué cosas nos podemos traer de la programación funcional y así enriquecer ese conocimiento existente en la Orientación a Objetos. Luego ya le pondremos nombre y veremos que podemos entender el significado de las mónadas, las type classes y otras técnicas de la programación funcional, a través del papel que juegan en el diseño de una arquitectura hexagonal. ¡Os esperamos! ---------- Software Crafters Barcelona is a two day event which aims to attract and connect software development professionals, who feel passion for their work and share the values and principles of the Crafters movement. It aspires to be a meeting place that facilitates the magic of learning, teaching and collaboration, where participants create a gratifying and enriching experience. It doesn't matter who you are, your knowledge level or your favorite programming language. We encourage you to participate if you: - are passionate about software. - want to be involved, or are already involved, in the Software Crafters movement. - want to share your knowledge, experience, or skills. - enjoy learning by helping others and believe that sharing is key to your own progress. In addition to technical contents, it will be fun. There will be beers, and we'll have stimulating conversations late into the night. Software Crafters Barcelona is an opportunity to meet new friends, face new challenges while learning and further improve your skills. ----- Todos los vídeos de Barcelona Software Craftmanship: https://www.youtube.com/playlist?list=PLKxa4AIfm4pXO6GQN0oRROrxgz6MbuN6c Twitter; https://goo.gl/MU5pUQ Instagram; https://lk.autentia.com/instagram LinkedIn https://goo.gl/2On7Fj/ Facebook; https://goo.gl/o8HrWX
Analizamos los beneficios de introducir una interface en términos de tolerancia al cambio y testabilidad. Nos planteamos cuándo sería apropiado por tanto introducir una interface en nuestro código, y sobre todo, cuándo y por qué sería algo a evitar. ❓ Preguntas a responder: * Cuándo definís interfaces (Árbol decisional para meter una interface como el que comentamos en el vídeo) * Inyectáis los Domain Services en los Application Services vía constructor, ¿o los instanciáis en el constructor del Application Service? Links relacionados: * 👨‍👩‍👧‍👦 Vídeo Composición sobre herencia: https://www.youtube.com/watch?v=OyTPDFyGWRc * 🎟️ Tweet a hacer RT para entrar en sorteo de training Kotlin: * 👨‍🎓 Training Kotlin por Karumi: https://www.karumi.com/open-training/android-kotlin-jump-start-first-edition * 🐘 Repositorio ejemplos PHP: https://github.com/CodelyTV/cqrs-ddd-php-example * ⚛️ Repositorio ejemplos Scala: https://github.com/CodelyTV/scala-http-api * 👩‍💻 Curso Principios SOLID Aplicados: http://bit.ly/solid-codelytv * 🎯 Curso Arquitectura Hexagonal: http://bit.ly/hexagonal-codelytv * ℹ️ Post Matthias Noback al respecto: https://matthiasnoback.nl/2018/08/when-to-add-an-interface-to-a-class/