BT

InfoQ Homepage Refactoring Content on InfoQ

Articles

RSS Feed
  • Q&A on the Book Refactoring - Second Edition

    The book Refactoring - Second Edition by Martin Fowler explores how you can improve the design and quality of your code in small steps, without changing external behavior. It consists of around seventy detailed descriptions of refactorings, including a motivation for doing them, the mechanics, and an example.

  • The DDD Do-Over

    Jimmy Bogard had a rare opportunity to do what many developers want after finishing a tough project -- a do-over. His team worked on two very similar projects, both using DDD. He discusses the lessons learned from the first project and how the team avoided common pitfalls and was more successful on their later project.

  • Refactoring to a Deeper Model

    Paul Rayner uses a case study to demonstrate how refactoring your code can lead to a deeper understanding of your domain model. Through common code refactorings, combined with the implementation of patterns, the codebase became more cohesive and easier to reason about, reducing the time to perform some common tasks from weeks or months to just hours.

  • Coaching Technical Practices

    In the past 4-5 years I have been working as a software development coach, helping organizations around London improve their technical practices. I focus on XP practices, specifically TDD, Pair Programming, Refactoring and Simple Design. In this article I share my experiences organizing coaching sessions, including subject selection and sequencing, exercises for each subject and session formats.

  • Managing Data in Microservices

    This article provides practical examples of how to manage data in microservices, with an emphasis on migrating from a monolithic database. It is recommended to build a monolith first, and only migrate to microservices after you actually require the scaling and other benefits they provide.

  • How to Sell Refactoring? The Case of Nordea Bank AB

    Refactoring is often not a technical challenge. Teams can accurately diagnose inefficient code design. If they have sufficient time and budget at their disposal, they would probably get things done. In this article, we focus on the strategic code refactoring. This distinction was introduced by the BNS IT consultants as part of the method called Natural Course of Refactoring.

  • Refactoring to Reactive - Anatomy of a JDBC migration

    Reactive programming offers built-in solutions for some of the most difficult challenges in programming, including concurrency management and flow control. So you might ask - how do I get there; can I introduce it in phases? In this article we transform a legacy application to a reactive model using RxJava.

  • Q&A with Johanna Rothman and Jutta Eckstein on Cost of Delay

    The book Diving For Hidden Treasures - Uncovering the Cost of Delay in Your Project Portfolio by Johanna Rothman and Jutta Eckstein explores how projects become delayed and provides tools and methods to analyze and limit the costs of delay in projects.

  • Refactoring for Software Design Smells Review and Q&A with the Authors

    Refactoring for Software Design Smells by Girish Suryanarayana, Ganesh Samarthyam, and Tushar Sharma presents a catalogue of typical software design smells and how they can be fixed.

  • Architectural Refactoring: A Task-Centric View on Software Evolution

    In this article, author discusses Architectural Refactoring (AR) techniques to improve the quality attributes without changing the system's scope and functionality. He also provides a TaskCentric Template and Architectural Refactoring Catalog.

  • Q&A on Test Driven Development and Code Smells with James Grenning

    InfoQ interviewed James Grenning about why people are not doing technical practices sufficiently or well enough, why he thinks that TDD can be fun, the importance of unit tests, why programmers need to have a good nose for code smells and how they can become better in discovering "bad code”.

  • Natural Course of Refactoring – a Refactoring Workflow

    This article provides ideas about how to approach refactoring based on the complexity and stability of the codebase (Feather's Quadrant) and proposes a refactoring workflow based on a four step process and some practical suggestions on how to apply it.

BT

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.