Tag Archives: design
Posted on 20. Jun, 2011 by Guilherme Silveira.
A few years ago, with the wave of new (and old) languages growing its acceptance rate in the market, some people appeared defending code with the intention of being “concise”. Being concise means express a lot, with a few words; being clare and sucint; brief, but with all the required information; having characteristics of brevity [...]
Posted on 09. Mar, 2011 by Guilherme Silveira.
One object, more than 300 public methods, 560 instance and 300 class or static methods. It is easy to see that those objects tipically present low cohesion, more than one responsibility, tight coupling and a huge interface. A pattern known as “God Class”. You can create them in Java using class inheritance, or in Ruby [...]
Posted on 21. Jan, 2011 by Guilherme Silveira.
In this second screencast from the Driving Design series, the amazingly simple form gem is shown along with a simple DSL implementation. Its current API uses a fluent interface through Ruby hashes that allows easy output customization. This is the current version of simple_form that allows one to configure the building process of a form: [...]
Posted on 10. Jan, 2011 by mauricioaniche.
The process of delivering a new feature is consisted in implementing or fixing something that the current state is not capable of. Given the set of all problems that your software solves at this moment, there are many different ways to solve them. All of those possible solutions are valid and would end up in [...]
Posted on 03. Jan, 2011 by Guilherme Silveira.
Together with coworkers, we have been talking about the influence of Test First in our design: it is not only about testing, or testing all the time. The discussion is on how developers should learn from understanding feedback from every type of tests (unit, integration and so on) and act accordingly. We have begun a [...]
Posted on 01. Oct, 2010 by Guilherme Silveira.
Developers always desire to break their system into components, which typically comes with a tendency to identify those components by names. Well known unique identification is vital, one thinks With the Internet growing fast in the 21th century, distributed systems started to use URIs to identify components on the network instead of simple IDs. That [...]