solid

Recursos de programación de solid
Would you like to know how to decompose a monolith into a modular one using design practices like hexagonal architecture driven by use case semantics? This powerful technique enables an application codebase to evolve while minimising the risks of highly coupled, low cohesive modules and fragile tests. Payments are part of everyday life. Whatever we buy, we need to pay for, right? For consumers, this seems simple, but only engineers understand the deep complexities inside payments – and consumers’ low tolerance for error. After launching the world’s first pure-play grocery retailing website 20 years ago, we’ve developed the Ocado Smart Platform (OSP), our end-to-end online grocery fulfilment solution, adopted by 12 of the world’s most forward-thinking retailers. This fast growth comes with the potential challenge of keeping the codebase clean, cohesive, and low coupled while following market-leading architectural principles like SOLID. To address this, we use a new, innovative architectural approach, based on Hexagonal Architecture driven by Use Case semantics. This architectural approach is being deployed gradually during a Monolith Decomposition. We use the Feature Flag technique quite extensively to select different infrastructure components and achieve other behaviours at runtime. In this session, you’ll also get some valuable tips and tricks to apply this style in your codebase. Key takeaways: Use of the Feature Flag technique to achieve multiple behaviours at runtime Restructuring a core microservice from a Monolith into a Modular Monolith Application of Hexagonal Architecture to achieve multiple infrastructure adapters at runtime Understand the reason why Service Layer Based Development (SLBD) is not a feasible alternative Discover how UseCase classes improve on SLBD
En esta segunda parte del webinar de Clean Code veremos cómo los principios SOLID evitan que nuestro código sea un código STUPID. Finalizaremos con un repaso a los test y como deberían ser. Si quieres ver la primera parte de este webinar, accede a este enlace: https://www.youtube.com/watch?v=mdCvZ8hCfdE&t=3s ¿Quién es el ponente? Antonio José García. Soy un apasionado de las últimas tecnologías, siempre con ganas de aprender y mejorar. Me encanta cualquier deporte y soy socio del Real Madrid. También me gusta la cerveza, el cine y los videojuegos.
Alina loves building software in a highly secure way and support everyone in this journey. With a solid Product Engineering background, last two years Alina is actively working on finding ways of including security into SDLC that are effective in Agile environment and scale.
Ponente: Sergio León Título: Inyección de dependencias, fácil! Aula: Paraninfo (Sábado) ------------------------------------- Resumen: ¿Parchear o inyectar? esa es la cuestión. Siguiendo el principio de inversión de dependencias (la D de SOLID) nuestra código será más mantenible, extensible y testeable. Es cierto que podemos hacer poor man's DI pero, con Dependency Injector, tenemos a nuestra disposición un framework de inyección de dependencias que nos hará la vida mucho más fácil. En esta charla se explicará primero las ventajas de seguir la D de SOLID para hacer un código mantenible y extensible. Después, veremos como cambia nuestro código y los tests, usando patch vs poor man's DI. Por último, usaremos Dependency Injector para mostrar como usar un contenedor y resolver las dependencias en el composition root.
Cuando hablamos de los Patrones de Diseño de Software solemos hablar de ellos a micro-nivel, por lo tanto, cómo podemos aplicarlos al código. Pero mucho de estos patrones podemos llevarlos a nuestra arquitectura de software y aplicarlos a nivel macro. En este vídeo vemos justamente cómo hacerlo con el patrón Strategy y con el principio OCP de SOLID. 🔥 Aprende más de patrones de Software con este curso! https://bit.ly/patrones-comportamiento ﹤▶️﹥ CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 👨🏻‍🌾 Twitter Dani: https://twitter.com/dsantaka ├ 💂‍♂️ Twitter Rafa: https://twitter.com/rafaoe ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Vamos a analizar los code smells y vamos a refactorizarlos para que quede un codigo sostenible, mantenible y escalable. Todo pasito a pasito viendo trucos de programación por el camino. Este directo es la segunda parte del de 5 reglas del Código Sostenible: https://www.youtube.com/watch?v=my17Y9z5gB0 ﹤🎙️﹥ Invitados ├ María Soria (desarrolladora en LeanMind): https://twitter.com/marietait3 ├ Carlos Blé (director de LeanMind): https://twitter.com/carlosble ├ LeanMind: https://twitter.com/leanfulness_es └ Libro Código Sostenible (descuento: "CODELY10"): https://savvily.company.site ﹤🔖﹥ Cursos relacionados ├ 🧱 Principios SOLID aplicados: https://pro.codely.com/library/principios-solid-aplicados-36875/about ├ 🧼 Refactoring de Code Smells a Clean Code: Bloaters: https://pro.codely.com/library/refactoring-de-code-smells-a-clean-code-bloaters-62290/about ├ 🧹 Refactoring de Code Smells a Clean Code: Change Preventers: https://pro.codely.com/library/refactoring-de-code-smells-a-clean-code-change-preventers-70287/210883/about/ ├ 🏭 Patrones de Diseño: Creacionales: https://pro.codely.com/library/patrones-de-diseno-creacionales-167860/359848/about/ └ ♻️ TDD: Test-Driven Development: https://pro.codely.com/library/tdd-test-driven-development-179143/402180/about/ ﹤🍍﹥ CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 💂🏾‍♂️ Twitter Rafa: https://twitter.com/rafaoe ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Analizamos 5 ejemplos de código donde la gente de LeanMind nos ayuda a identificar lo que han denominado como reglas de Código Sostenible. Al fin y al cabo, conceptos que orbitan alrededor de Clean Code y que nos ayudan a conseguir un código fácil de mantener 😊 Veremos código y hablaremos de cómo aplicar este tipo de buenas prácticas para seguir mejorando y desarrollemos aplicaciones y webs que sean fáciles de entender y modificar 🤟 ﹤🎙️﹥ Invitados ├ María Soria (desarrolladora en LeanMind): https://twitter.com/marietait3 ├ Adrián Ferrera (desarrollador en LeanMind): https://twitter.com/adrianferrera91 ├ Carlos Blé (director de LeanMind): https://twitter.com/carlosble ├ LeanMind: https://twitter.com/leanfulness_es └ Libro Código Sostenible (descuento: "CODELY10"): https://savvily.company.site ﹤🔖﹥ Cursos relacionados ├ 🧱 Principios SOLID aplicados: https://pro.codely.com/library/principios-solid-aplicados-36875/about ├ 🧼 Refactoring de Code Smells a Clean Code: Bloaters: https://pro.codely.com/library/refactoring-de-code-smells-a-clean-code-bloaters-62290/about ├ 🧹 Refactoring de Code Smells a Clean Code: Change Preventers: https://pro.codely.com/library/refactoring-de-code-smells-a-clean-code-change-preventers-70287/210883/about/ ├ 🏭 Patrones de Diseño: Creacionales: https://pro.codely.com/library/patrones-de-diseno-creacionales-167860/359848/about/ └ ♻️ TDD: Test-Driven Development: https://pro.codely.com/library/tdd-test-driven-development-179143/402180/about/ ﹤🍍﹥ CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 🧔🏻 Twitter Javi: https://twitter.com/JavierCane ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely #CleanCode #CódigoSostenible #CódigoLimpio
Analizamos el repositorio con el que puedes arrancar un proyecto de 0 en #TypeScript listo para aplicar todos los patrones de #DomainDrivenDesign. Cuidaremos desde la estructura de directorios para que el planteamiento escale a medida que añadimos Bounded Contexts y módulos, hasta las distintas herramientas de testing que usaremos para cada tipología de test, pasando por pequeñas joyas como Helmet 😊 Fer Vilas es desarrollador en Audiense, gente TOP que trabajan con volúmenes de datos brutales aplicando proyecciones de datos para los distintos bounded contexts, eventos de dominio, y demás patrones de DDD 🔷 Este video es parte del Curso de DDD en TypeScript 👉 https://bit.ly/ddd-curso 🐙 Esperamos que con la utilidad que presentamos, el template repository de DDD en TypeScript puedas levantar tu nueva app en menos de 5 minutos: 1️⃣ https://github.com/CodelyTV/typescript-ddd-skeleton 2️⃣ https://github.com/CodelyTV/typescript-ddd-example Otros cursos relacionados: 👉 De JavaScript a TypeScript bit.ly/js-curso 👉 Curso de Refactoring: Change Preventers https://pro.codely.tv/library/refactoring-de-code-smells-a-clean-code-change-preventers-70287/210878/about/ 👉 Curso de SOLID https://pro.codely.tv/library/principios-solid-aplicados-36875/77070/about/ {▶️} CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 💡 Twitter Fer: https://twitter.com/fer_vilas ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 🧔🏻 Twitter Javi: https://twitter.com/JavierCane ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Tras haber aplicado Golden Master, ya con nuestro código cubierto con tests de caracterización, en este video refactorizamos e introducimos una nueva funcionalidad con TDD. Usamos una estrategia en la que aislamos el código a modificar con técnicas de refactoring como Extract variable, Extract Method y Extract class. La hemos denominado estrategia Hit&Run, ya que nos olvidamos de refactorizar todo el código que hay alrededor. ♻️ Este video es parte del Curso de TDD 👉 https://bit.ly/ctv-tdd Otros cursos relacionados: 👉 Curso de Refactoring: Bloaters https://pro.codely.tv/library/refactoring-de-code-smells-a-clean-code-bloaters-62290/176553/about/ 👉 Curso de Refactoring: Change Preventers https://pro.codely.tv/library/refactoring-de-code-smells-a-clean-code-change-preventers-70287/210878/about/ 👉 Curso de SOLID https://pro.codely.tv/library/principios-solid-aplicados-36875/77070/about/ 👉 Curso de IntelliJ https://pro.codely.tv/library/exprimiendo-intellij-idea-49135/104101/about/ {▶️} CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 🧔🏻 Twitter Javi: https://twitter.com/JavierCane ├ 👨🏻‍🌾 Twitter Dani: https://twitter.com/dsantaka ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Este panel de discusión es sobre Java. Ponentes: Nacho Cougil - Senior Software Engineer | Java Champion - Dynatrace Anyul Rivas - Senior Software Engineer - Roche Alejandro Moleiro - Platform Engineering Manager - Adevinta Christian Ciceri - Software Architect - Apiumhub Cristina Verdi - Founder - Code Sherpas Temas cuebiertas: - Solid principles - Java Architecture - Docker - DDD - TDD - Legacy Code - Refactoring El público también ha participado, haciendo preguntas, discutiendo cosas.