Main

February 7, 2007

Transformation: Ruby Smells

I keep hearing people say they couldn’t possibly use Ruby because it lacks automatic refactoring tools.


Marting Fowler tells us that Refactoring is the art and science of turning smelly code into good code, in small, incremental steps. Provably correct, by construction. Algorithms for giving your code a makeover without breaking it in the process.


Continue reading "Transformation: Ruby Smells" »

February 1, 2007

Patterns Of Enterprise Applicaton Architecture (by Martin Fowler) Chaper 1 and 2

Chapter 1: Layering
Most common technique to break apart a complicated software system. Layers is the cake analogy for software. Each layer rests on a lower layer. Higher layers use services of the lower layers. Lower layers are unaware of the higher. Layers hide layers beneath them.

Chapter 2: Organizing Domain Logic
Simple logic doesn't require decomposition and can be done in a "Transaction Script". But complex logic is where objects come in, and handle this problem with a "Domain Model", primarily around the nouns of the domain. Logic for handling calculations and validations are placed in the model.

Continue reading "Patterns Of Enterprise Applicaton Architecture (by Martin Fowler) Chaper 1 and 2" »