concrete user stories and build a minimal yet flexible object model, Dafydd Rees, Responsibility Driven Design References http://www.dafydd.net/archive/2010/
in Scienze dell'Informazione 1998 Dottorato in Informatica 2003 Extreme Programming! 2007 Team Orione in Sourcesense → XPeppers 2009 Workshop su Design Emergente FC 2011 Object Thinking APPASSIONATO HOTSHOT FORMALISTA XPer Una storia Non tutti i progetti fatti con XP vanno bene. Alcuni hanno problemi di qualità del codice... Forse che ho trascurato il design?
file di accessi di Apache Si vuole scrivere un programma batch che legge in input un file di accessi di Apache e produce in output un report. Il nostro input è un file di questo tipo: 192.168.20.192 - - [29/Jul/2011:14:19:48 +0200] "GET / HTTP/1.1" 200 11870 192.168.20.192 - - [29/Jul/2011:14:19:49 +0200] "GET /tomcat.png HTTP/1.1" 304 - 192.168.20.192 - - [29/Jul/2011:14:20:39 +0200] "POST /phoenix-0.0/phoenixServlet HTTP/1.1" 200 264 192.168.20.192 - - [29/Jul/2011:14:21:23 +0200] "GET /phoenix-0.0/tranpipe-demo/demo.html HTTP/1.1" 192.168.20.191 - - [29/Jul/2011:15:48:04 +0200] "POST /phoenix-0.0/phoenixServlet HTTP/1.1" 200 263 192.168.100.184 - - [01/Aug/2011:13:20:49 +0200] "GET /manager/status?XML=true HTTP/1.1" 401 2486 Il nostro obiettivo è estrarre un report di questa forma data risultati-2xx risultati-3xx risultati-4xx risultati-5xx 29/Jul/2011 1223 23 456 12 01/Aug/2011 1212 24 11 123
for="lastName">Last Name</label> <input id="lastName" name="lastName" value="${lastName}" /> <label for="email">Email</label> <input id="email" name="email" value="${email}" /> <!-- and so on and so forth for 100 other fields --> </form>
(isEmpty(firstName)) { errors.add("First Name is required"); } if (isEmpty(lastName)) { errors.add("Last Name is required"); } // and so on and so forth .... return errors; } } class RegistrationRequest { private String firstName; private String lastName; private String email; // and so on and so forth ... public void setFirstName(String firstName) { this.firstName = firstName; } public String getFirstName() { return firstName; } // and so on and so forth ...
in Informatica 2003 Extreme Programming! 2007 Team Orione in Sourcesense → XPeppers 2009 Workshop su Design Emergente FC 2011 Object Thinking 2012 Success! APPASSIONATO HOTSHOT FORMALISTA XPer Una storia... L’ultimo progetto consegnato dal “mio” team XP: 1400 giornate su nove mesi, messo in produzione con pochissimi difetti e nei tempi previsti! ...che prosegue...