refactoring

Recursos de programación de refactoring
En este vídeo explicaremos cómo te puedes ayudar de las cláusulas de guarda para hacer tu código más legible. Más información y material relacionado: http://codely.tv/screencasts/clausulas-guarda-refactoring/
I continue empting the talks queue... Here is another small batch of interesting talks:Microservices: Software that Fits in Your Head Dan North. IMHO this is the more interesting talk I show this year. No spoilers :)   I agree one hundred per cent with the talk. Just show it.Functional_Data_-_Greg_Young-131636650 Greg Young. A practical example of the Event Sourcing implemented using a functional approach. With this approach the flow seems more easy than the OOP approach.se-r...
¿Es malo usar sentencias switch-case? ¿Cómo determinamos que el diseño de nuestra aplicación "tiene problemas"? ¿Cómo modificamos nuestro sistema para mejorar su diseño? ¿Qué son los Code Smells? ¿Y las técnicas de Refactoring? En este vídeo trataremos de dar respuesta a estas preguntas. Más info: http://codely.tv/screencasts/code-smells-refactoring/
Last weekend I attended the Software Craftsmanship Barcelona 2015. This was the first time I participate as an attendee (I had worked in the organization of the first two editions). It was a great event. I attended very interesting talks and had amazing conversations with many people. Some of them I already knew from the Barcelona, Zaragoza, Bilbao, Canarias and Valencia community or from abroad but many of them I just met there. If I had to highlight my favorite talk, I'd choose Accesibilidad...
I just did the Cellular Automata kata in Clojure. These are the tests using Midje: and this is the resulting code: where I added a function print-evolution to visualize the evolution on the REPL As usual I used a mix of TDD and REPL-driven development committing after each green and each refactoring. I also committed the REPL history. See all the commits here if you want to follow the process. You can find all the code on GitHub. - por Garajeando
I just did the Integer Ranges kata in Clojure. These are the tests using Midje: and this is the resulting code: As usual I used a mix of TDD and REPL-driven development committing after each green and each refactoring. I also committed the REPL history. See all the commits here if you want to follow the process. You can find all the code on GitHub. - por Garajeando
Last night I did the Word Wrap kata in Clojure. It was proposed in the last Barcelona Software Craftsmanship coding dojo but I couldn't attend, so I did it at home. These are the tests using Midje: and this is the resulting code: As usual I used a mix of TDD and REPL-driven development committing after each green and each refactoring. I also committed the REPL history. See all the commits here to follow the process. Once I got to a tail recursive solution, I tried to make it more readable by...
Last night I did the Yatzy refactoring kata in Ruby. I mainly used it to practice with Enumerable functions. This is the original code: and this is the refactored one: I committed after every small refactoring (the commits step by step). You can find the code in this repository in GitHub. - por Garajeando
Material del vídeo: http://codely.tv/screencasts/solid-principio-inversion-dependencias Qué es y qué beneficios aporta el Principio de Inversión de Dependencias. Índice: 1:03 - Explicación código base (contexto) 2:50 - Escenario 1: Código altamente acoplado y creando las instancias de los colaboradores en el punto en el que se necesitan 3:55 - ¿Por qué es malo el acoplamiento de código? 6:10 - Diagrama de clases del escenario 1 7:10 - Escenario 2: Refactoring para introducir el concepto de inyección de dependencias. Código altamente acoplado pero creando las instancias de los colaboradores fuera de la clase cliente 9:00 - ¿Qué beneficios tiene la inyección de dependencias? 10:39 - Escenario 3: Refactoring para aplicar el Principio de Inversión de Dependencias (Dependency Inversion Principle, DIP). Código desacoplado y cambiable. 11:38 - Explicación de la interface introducida. Diseño por contratos 13:35 - ¿Qué beneficios tiene la inversión de dependencias? 15:30 - Diagrama de clases aplicando el principio de inversión de dependencias 16:05 - Inversión de dependencias como nunca te lo han explicado :D
Yesterday we practiced doing the Sieve of Eratosthenes kata at a Barcelona Software Craftsmanship event. My partner Fernando Mora and I used TDD in Scala to write the code. Today I did it once again in Clojure. I'd like to explain here how I did it step by step in order to share it with the Barcelona Software Craftsmanship members. I started by writing this test: which I quickly got to green by just hard-coding the response: In this first test I used wishful thinking to get the function and s...