View Single Post
Old 17-04-2008, 21:04   #4
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
Quote:
Originariamente inviato da shinya Guarda i messaggi
Leggendo un pò il work in progress sui DSL di Fowler, e cercando di impadronirmi delle tecniche che descrive, ho buttato giù un piccolo DSL per cominciare a gestire le collections standard Java attraverso un'interfaccia cosidetta 'fluent'.

Questo è un esempio di come si potrebbero utilizzare le liste in java:
Codice:
import static it.fluent.builders.ListBuilderHelper.list;
import static java.lang.System.out;

public class FluentTest {

  public static void main(String[] args) {
    list("I", "can", "has", "cheezburger", "plz", "?")
      .shuffle()
      .sort()
      .reverse()
      .println(out);
  }
}
Sembra quasi un linguaggio dinamico, e invece è puro Java 100%, con type check a compile time, il framework e tutto quanto.
E' uno stile che mi piace moltissimo, perche' comunica molto bene. Quando riesco a modellare qualcosa cosi', lo faccio anche in C++. Il rischio e' farsi prendere un po' la mano e complicarsi la vita.

E' uno strumento, e in certe situazioni funziona molto ma molto bene.
fek è offline   Rispondi citando il messaggio o parte di esso