refactoring

Recursos de programación de refactoring
- Siempre que alguien se pone a refactorizar, no puede darlo por terminado hasta que ha refactorizado todas las capas a las que afecta. ¿Por qué nos resulta tan difícil hacer refactoring y poder pararlo cuando queramos sin afectar a otras capas? - Siempre que le vamos al jefe con que tenemos que hacer refactoring se pone a temblar, ¿por qué crees que es? - ¿YAGNI y mucho refactoring o un diseño más sesudo haciendo un SW más flexible adelantándose a futuros requisitos que quizá nunca llegen y menos refactoring? ------------- @ggalmazor y @artolamola ------------- Todos los vídeos de la Pamplona Software Crafters 2019 en: https://lk.autentia.com/SCPNA-YouTube ¡Conoce Autentia! Twitter: https://goo.gl/MU5pUQ Instagram: https://lk.autentia.com/instagram LinkedIn: https://goo.gl/2On7Fj/ Facebook: https://goo.gl/o8HrWX
Si quieres ver la charla de Fernando Cejas: https://youtu.be/yFLCg-0zxT8 - ¿Alguna recomendación sobre cuándo remangarse o no a hacer un refactoring? - ¿Cuál es tu técnica o procedimiento favorito para mantener el código lo mejor posible? ------------- @fernando_cejas ------------- Todos los vídeos de la Pamplona Software Crafters 2019 en: https://lk.autentia.com/SCPNA-YouTube ¡Conoce Autentia! Twitter: https://goo.gl/MU5pUQ Instagram: https://lk.autentia.com/instagram LinkedIn: https://goo.gl/2On7Fj/ Facebook: https://goo.gl/o8HrWX
January- Timeless Laws of Software Development, Jerry Fitzpatrick- Writing to Learn, William Zinsser- The End of the Affair, Graham Greene- Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software, David Scott BernsteinFebruary- Refactoring Workbook, William C. Wake- Binti, Nnedi OkoraforMarch- Home, Nnedi Okorafor- The Night Masquerade, Nnedi Okorafor - Developer Hegemony, Erik Dietrich- The Ministry of Utmost Happiness, Arundhati RoyApril- Cat on a Hot Tin Roof, Tenne...
Introduction. Recently in the B2B team at LIFULL Connect, we improved the validation of the clicks our API receive using a service that detects whether the clicks were made by a bot or a human being. So we used TDD to add this new validation to the previously existing validation that checked if the click contained all mandatory information. This was the resulting code: and these were its tests: The problem with these tests is that they know too much. They are coupled to many implementation de...
Recently, one of the teams I’m coaching at my current client, asked me to help them with a problem, they were experiencing while using TDD to add and validate new mandatory query string parameters[1]. This is a shortened version (validating fewer parameters than the original code) of the tests they were having problems with: and this is the implementation of the QueryStringBuilder used in this test: which is a builder with a fluid interface that follows to the letter a typical implementation o...
I created the Beverages Prices Refactoring kata for the Deliberate Practice Program I’m running at Lifull Connect offices in Barcelona (previously Trovit). Its goal is to practice refactoring away from a bad usage of inheritance. The code computes the price of the different beverages that are sold in a coffe house. There are some supplements that can be added to those beverages. Each supplement increases the price a bit. Not all combinations of drinks and supplements are possible. Just having a...
January- Timeless Laws of Software Development, Jerry Fitzpatrick- Writing to Learn, William Zinsser- The End of the Affair, Graham Greene- Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software, David Scott BernsteinFebruary- Refactoring Workbook, William C. Wake- Binti, Nnedi OkoraforMarch- Home, Nnedi Okorafor- The Night Masquerade, Nnedi Okorafor - Developer Hegemony, Erik Dietrich- The Ministry of Utmost Happiness, Arundhati Roy - por Garajeando
¿Y si lo escuchas mientras vas al trabajo o te pones en forma?: https://www.ivoox.com/33720161 ------------- Los proyectos suelen empezar con un ritmo de desarrollo muy rápido. A medida que maduran van perdiendo velocidad hasta que llega a un punto en que el coste y tiempo de añadir funcionalidad es extremadamente elevado. En esta charla veremos, desde un punto de vista técnico, cómo podemos diseñar y desarrollar el producto para aportar valor al final de cada sprint. Para ello mostraremos ejemplos de cómo hemos simplificado un producto y las prácticas que hemos utilizado para mantener la velocidad de desarrollo y la deuda técnica bajo control. También hablaremos del coste de cada una de ellas. Algunas de las técnicas son el vertical slicing, domain driven design, test driven development, refactoring y automatización de la infraestructura. ------------- Todos los vídeos de CAS 2018 en: https://www.youtube.com/playlist?list=PLKxa4AIfm4pU2H_iVJOKcjAI1JwMr-ddt ¡Conoce Autentia! Twitter: https://goo.gl/MU5pUQ Instagram: https://lk.autentia.com/instagram LinkedIn: https://goo.gl/2On7Fj/ Facebook: https://goo.gl/o8HrWX
I've just watched this interesting talk by Joshua Kerievsky The Art of Refactoring - por Garajeando
Introduction. Subscriptions in re-frame or re-om are query functions that extract data from the app-state and provide it to view functions in the right format. When we use subscriptions well, they provide a lot of value[1], because they avoid having to keep derived state the app-state and they dumb down the views, that end up being simple “data in, screen out” functions. However, things are not that easy. When you start working with subscriptions, it might happen that you end up using them as me...