refactoring

Recursos de programación de refactoring
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.
Everyone claims that they are doing products in an agile, user oriented way. And yet, the majority of the products are still not welcomed by customers after being released. There is a huge gap between what we think it means to be user oriented and actually been user oriented. In this talk I will present my personal methodology that I have developed during the last 9 years that helped me to build multiple highly successful products and services. The framework contains of the following pillars: Identify the problem, problem should be: * Real customer problem *Problem that is top priority for the customer Identify the solution: * Is this the simplest solution for the problem? * Is it easily integratable with the current customer infrastructure? * Solves a problem that will exist (and will remain primary problem) by the time it is delivered * Easily pluggable in the existing customer’s infrastructure * Cost of adopting the product should be smaller (ideally: drastically lower) than the benefits that customer will get Execute: * Do not aim to deliver the solution, aim to onboard the customer * It is much simpler to deliver solution for one customer and generalize later than to deliver generic solution that can be used by at least one customer * The only criteria of success is onboarded customer We will show in detail how to build a team that executes in accordance with these principles, just some examples of key fundamental things: * Success of the product is everyone’s jobs * Engineers who are working on the product directly responsible to onboard the customer onto what they are building * Done-done-done is not when code is deployed to the production, it is when customer is using it While these are very common things that all of the managers/PM claiming to be doing there are many hidden traps when leaders are trying to do this, just some of them: * This process is about incremental changes, my product is revolutionary. * We have this amazing tool/technology/solution, let’s find the problem that it can solve for our customers. * I have validated the problem, therefore my solution is also validated. * I put the word “user” in my goal and therefore now it is a user oriented goal. * Different user audience for validating the problem and building the product for. It is very simple to pitch a free product to the students and ask if they will be using it for free, it is a completely different thing to sell the same product for money to a CTO. * Ignoring the last mile of integration. *Sticking to the original plan/scope while user’s problems clearly have changed We will also discuss how to start transitioning an organization into this mode, how to start refactoring the engineering team and whole organization, what should be the concrete first steps, like: * Do a revision of the roadmap: * put a concrete problem next to the feature * Re-evaluate problems * Stack ranked problems (instead of feature) * Refactor incentives for eng team to start onboarding customers (solving problems for the customers) instead of just delivering features. Introduce processes of building deep connections with the customers and collecting/evaluating their problems.
Many times we are told that refactoring is a tool to deal with legacy code. This is usually followed by a “practical” example of refactorings with hideous code that seldom would pass the laziest of code reviews. In this session, we’ll take a deep dive into what a refactor actually is. What tools and methodologies we can leverage to lower technical debt and increase legibility. To tackle unknown code bases; all whilst being productive. Session by Joaquin Azcarate, Backend Developer at Apiumhub
It is time to step your front-end game with using type definitions and stopping from wasting time on manually debugging bugs in the console. Typescript is the way to go. In this talk I will talk about how Typescript gives us advantages in the development process, easy to understand code, refactoring, ease of maintenance, reduce number of unit test cases, casting and much more!
La S de los principios SOLID es el principio más conocido, pero uno de los más complicados de entender. ¡Hoy os contamos cómo sacarle todo el jugo! 🚥 ¡Haz nuestro curso de refactoring! 👉 http://bit.ly/curso-refactor 🔗 Enlaces mencionados ├ Vídeo de la S de SOLID de Codely del 2015 https://www.youtube.com/watch?v=c97P1UmF1cs ├ Post Uncle Bob sobre SRP https://blog.cleancoder.com/uncle-bob/2014/05/08/SingleReponsibilityPrinciple.html ├ Paper de Uncle Bob sobre SRP https://www.cs.utexas.edu/users/downing/papers/SRP-1996.pdf ) └ Paper de Dijkstra sobre Separation of Concerns https://www.cs.utexas.edu/users/EWD/ewd04xx/EWD447.PDF {▸} Codely ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter Codely: https://twitter.com/CodelyTV ├ 💂🏼 Twitter Rafa: https://twitter.com/rafaoe ├ 🧔🏻 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
Refactoring, Code Smells, SOLID, Clean Code, Clean Architecture… Todo está muy relacionado y hoy vamos a ver una estructura con Smells para refactorizarla y lograr un código más mantenible y escalable. ✌️ Sin duda, la Arquitectura del Software es uno de los temas de los que más nos gusta hablar. 😊 🚥 ¡Haz nuestro curso de refactoring! 👉 http://bit.ly/curso-refactor Para ello vamos a ver un Code Smell del tipo Change Preventer y cómo aplicar Split Phase Refactoring paso a paso. El refactoring (o refactorización) es la forma para reestructurar nuestro código, modificando su estructura interna sin modificar su comportamiento. Para ello siempre necesitamos una buena base de testing. {▸} Codely ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter Codely: https://twitter.com/CodelyTV ├ 💂🏼 Twitter Rafa: https://twitter.com/rafaoe ├ 🧔🏻 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
¿Has vivido el refactoring de una app legacy? Vamos a analizar dos grandes refactors de JavaScript que realizaron GitHub, quitando jQuery de su frontend, y Chrome, pasando las devtools a ES modules. 👀 Los artículos que comentamos en el vídeo: Removing jQuery from GitHub frontend: https://github.blog/2018-09-06-removing-jquery-from-github-frontend/ Migrating to JS modules: https://developer.chrome.com/blog/migrating-to-js-modules/ Aprende a refactorizar apps legacy aplicando buenas prácticas de JavaScript moderno con nuestro curso 👉 https://pro.codely.tv/library/js-moderno/ {▶️} CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 🌶 Twitter Núria: https://twitter.com/nuria_codes ├ 🧔🏻 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