solid

Recursos de programación de solid
En programación, hay decenas de Patrones de Diseño de Software. Y entre todos ellos hay un gran desconocido: El Patrón Criteria. Gracias a este patrón podemos respetar la O de SOLID en nuestro código y evitar una explosión de métodos. Curso del Patrón Criteria → https://bit.ly/curso-criteria ﹤🍍﹥ Codely ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🔖 Cursos: https://bit.ly/cursos-codely └ 👋 Redes sociales: ├ https://twitter.com/CodelyTVhttps://twitter.com/JavierCanehttps://twitter.com/rafaoehttps://instagram.com/CodelyTVhttps://linkedin.com/company/codelytv
Muchas veces intentamos aplicar SOLID en nuestro código, pero se nos complica. Con los Eventos de Dominio podemos solventarlo. En este vídeo exploramos cómo este patrón nos puede ayudar a tener un código más mantenible, escalable y testeable. 🔗 Aprende a Modelar Eventos de Dominio: https://pro.codely.com/library/modelado-del-dominio-eventos-de-dominio-209046/544057/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 Rafa: https://twitter.com/rafaoe ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🥋 Academy: https://codely.com/academy └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Muchas veces intentamos aplicar SOLID en nuestro código, pero se nos complica. Con los Eventos de Dominio podemos solventarlo. En este vídeo exploramos cómo este patrón nos puede ayudar a tener un código más mantenible, escalable y testeable. 🔗 Aprende a Modelar Eventos de Dominio: https://pro.codely.com/library/modelado-del-dominio-eventos-de-dominio-209046/544057/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 Rafa: https://twitter.com/rafaoe ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🥋 Academy: https://codely.com/academy └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Uno de los mejores libros que recuerdo es Introducción a la Programación Orientada a Objetos, reeditado en 2011, de Timothy Budd, profesor asociado y desarrollador de sistemas como LittleSmaltalk o Leda, curioso lenguaje multiparadigmático de verdad! Desde entonces me interesó mucho el perfil de un profesional con experiencia en la empresa y en la universidad y, para mi, tienen una visión muy interesante sobre lo que se enseña, lo que se aplica, lo que se consigue, … “han viajado, son cultos”. Pues ahora tengo la oportunidad de charlar con dos personas muy cultas, profesores y desarrolladores de proyectos reales, @JavierVélez y @MicaelGallego. El contenido será Sobre los principios de diseño del software más allá de SOLID. Tenemos puntos en común pero también diferencias. Por lo que considero que de ahí puede salir una conversación enriquecedora, con luces y sombras, que por lo menos nos haga pensar y salgamos de donde estamos … estancados!?!? Será el próximo martes 31 de octubre, en el marco del curso de Experto en software mantenible: diseño, pruebas y procesos de desarrollo pero por si te apetece asistir será en abierto y estáis todos invitados. Luis Fernández Muñoz https://www.linkedin.com/in/luisfernandezmunyoz
Cuando se trata de desarrollo de software de alta calidad, términos como SOLID, YAGNI, DRY, Code Smells, Cohesión y Acoplamiento suelen ser de los primeros en salir a la luz. Pero, ¿alguna vez has oído hablar de Connascence? Este término, aunque menos conocido, ofrece un enfoque poderoso y efectivo para mejorar la calidad del diseño del software, y su mantenibilidad y escalabilidad. El destacado desarrollador Jim Weirich incluso definió Connascence como 'La Gran Teoría Unificada del Diseño de Software'. En esta charla veremos qué es Connascence, exploraremos sus diferentes tipos y clasificaciones y veremos ejemplos prácticos de cómo este concepto puede utilizarse para aumentar la calidad del software que desarrollamos. ------------- ¡Conoce Autentia! -Twitter: https://goo.gl/MU5pUQ -Instagram: https://lk.autentia.com/instagram -LinkedIn: https://goo.gl/2On7Fj/ -Facebook: https://goo.gl/o8HrWX
One might naively think that to deploy a production app on Kubernetes, all one needs is a Kubernetes cluster. Indeed, before going to production, we'll need a Kubernetes cluster, and therefore, we'll need to make a few decisions: on-premises or on cloud? Managed or self-hosted? But there is way more to it because our new cluster will almost always require a few additions before being truly production-ready. Even if we choose a state-of-the-art managed cluster from a leading cloud provider, we still need to add something to handle logging and metrics. Supporting Ingress resources or Network Policies can also require extra work; as does managing persistent volumes or inbound traffic when running on-premises. Finally, while most of us used commands like "kubectl run" or "kubectl apply" to run our first Kubernetes containers and workloads, going to production requires a few extra tools to tailor our YAML manifests to various environments (e.g. kustomize, Helm, or Carvel), and automate its deployment (e.g. ArgoCD, Flux). The goal of this talk is to give us a production-readiness checklist. Without being exhaustive, this checklist will bring awareness to the gap that exists between Kubernetes "cluster" and "a production cluster", and give solid leads about how to bridge that gap. ------------- ¡Conoce Autentia! -Twitter: https://goo.gl/MU5pUQ -Instagram: https://lk.autentia.com/instagram -LinkedIn: https://goo.gl/2On7Fj/ -Facebook: https://goo.gl/o8HrWX
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.