agile

  • submit to reddit

Practical PHP Refactoring: Collapse Hierarchy

In the scenario of today, a subclass and superclass are not very different: the evolution of the code has brought them to this situation. Behavior has been...

0 replies - 2998 views - 01/23/12 by Giorgio Sironi in Articles

Don’t Feature Branch

I recently attended the Devoxx conference. One of the speakers was talking on a topic close to my heart, Continuous Delivery. His presentation was...

0 replies - 3977 views - 01/22/12 by Dave Farley in Articles

Practical PHP Refactoring: Extract Interface

A concrete class still defines an implicit interface by itself, as the set of its public methods. When the called interface is a subset of this, or it is...

1 replies - 3131 views - 01/18/12 by Giorgio Sironi in Articles

Practical PHP Refactoring: Extract Superclass

In the scenario of today, there are two or more unrelated classes with similar members, like common methods or fields. While these classes may be already...

0 replies - 3092 views - 01/16/12 by Giorgio Sironi in Articles

Kanban is the New Scrum

Maybe it’s all the time I spend with startups, but while I strongly value Scrum’s ideas behind self-organizing teams & continual feedback – I...

2 replies - 10908 views - 01/11/12 by Abby Fichtner in Articles

Practical PHP Refactoring: Extract Subclass

So far, we have only treated the movement of object members (fields and methods, and constructor as special methods); the assumption we made was that these...

0 replies - 2981 views - 01/11/12 by Giorgio Sironi in Articles

Practical PHP Refactoring: Push Down Field

As happens often for a method, a field may be present in the base class of a hierarchy even if it is actually used only in some of the subclasses. This...

0 replies - 2655 views - 01/09/12 by Giorgio Sironi in Articles

Practical PHP Refactoring: Push Down Method

In the scenario of today, some logic is in a superclass of a hierarchy, modelled as a method. However, this method is only useful for one of the subclasses in...

0 replies - 2586 views - 01/04/12 by Giorgio Sironi in Articles

TDD for multithreaded applications

This article describes some practices for test-driving multithreaded and distributed applications written in Java. The example I worked on and we will use is a...

4 replies - 7584 views - 01/03/12 by Giorgio Sironi in Articles

Practical PHP Refactoring: Pull Up Constructor Body

After Pull Up Field and Pull Up Method, we explore today the last of this category of refactorings: Pull Up Constructor Body.The scenario consists of a series...

0 replies - 2961 views - 01/02/12 by Giorgio Sironi in Articles

Practical PHP Refactoring: Pull Up Method

We are in the part of the series where refactorings target mostly the elimination of duplicated code. For now, most solutions will achieve this goal via...

0 replies - 2971 views - 12/28/11 by Giorgio Sironi in Articles

Practical PHP Refactoring: Pull Up Field

We now enter in the territory of generalizations. It's a natural process, as we add more and more tests, for our code to become more general; but after we have...

0 replies - 4112 views - 12/26/11 by Giorgio Sironi in Articles

Practical PHP Refactoring: Replace Exception with Test

Sometimes catching an exception can be transformed in a preliminary check that avoid raising the exception in the first place. The code is then called only in...

0 replies - 2824 views - 12/21/11 by Giorgio Sironi in Articles

Practical PHP Refactoring: Replace Error Code with Exception

Error codes are mostly a relic of procedural programming: the object-oriented paradigm has introduced exceptions as a first-class mechanism to separate error...

2 replies - 3803 views - 12/19/11 by Giorgio Sironi in Articles

jQuery plugins with jsTestDriver

In this article we're going to develop an example of jQuery plugin with the aid of jsTestDriver, a little framework for writing automated tests.jQuery...

1 replies - 4811 views - 12/15/11 by Giorgio Sironi in Articles