|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#261 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#262 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
|
|
#263 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Indubbiamente. Con quelle carrette (come le chiami tu
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
|
|
|
|
#264 |
|
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
|
|
|
|
|
|
#265 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
|
|
#266 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Quote:
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
|
#267 |
|
Member
Iscritto dal: Sep 2007
Messaggi: 207
|
sinceramente prima di entrare in questo forum manco sapevo cosa significasse agile XD se non era per il fatto di averlo letto una o due volte in una tesi riguardandte un certo peuck(
), non era una sviolinata come può sembrare eh' ma perchè a scuola non li insegnano gia dalle superiori questi metodi di sviluppo? alla fine non e' difficile in se, ma lo diventa se per molti anni ci si e' fossilizzati come me in modi completamente sbagliati T.T, io senza if non so come disegnarlo un programma e riguardando dei programmi fatti alle superiori mi sono reso conto perche a volte non li continuavo e mi fermavo Ultima modifica di m.distrutti : 11-04-2008 alle 15:10. |
|
|
|
|
|
#268 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Alle superiori? Manco all'università le insegnano!
P.S. STUPENDA quella maglietta!!!
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
|
|
|
|
#269 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
È più che altro questa la cosa strana.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#270 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Mica tanto. Molti docenti sono abbastanza reazionari: imparano alcune cose, e se le tengono strette.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
|
|
|
|
#271 |
|
Member
Iscritto dal: Sep 2007
Messaggi: 207
|
nel corso della mia uni lo stanno per iniziare lo unit testing , il refactoring dovrei aspettare la magistrale T.T
meglio cominciare ora Ultima modifica di m.distrutti : 11-04-2008 alle 16:26. |
|
|
|
|
|
#272 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Speravo che fornissero qualche esempio concreto di realizzazione "agile", invece ritorna sempre il solito esempio che si realizza bene tramite ereditarietà.
Ma come lo tolgo l'if in un caso simile? Codice:
if (tbUsername.Text.Length < 8 || tbUsername.Text.Length > 50)
{
lbError.Visible = true;
return;
}
Ultima modifica di tomminno : 11-04-2008 alle 16:56. |
|
|
|
|
|
#273 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Posta anche il resto del codice altrimenti non possiamo capire bene...
|
|
|
|
|
|
#274 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Codice:
lbError.Visible = IsVisible(); Codice:
bool IsVisible()
{
return tbUsername.Text.Length < 8 || tbUsername.Text.Length > 50;
}
Il return si implementa senza if conoscendo il contesto del metodo. Molto probabilmente e' la situazione ideale per uno State pattern. Qualcosa di simile a: Codice:
currentState[IsVisible()].DoSomething();
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA Ultima modifica di fek : 11-04-2008 alle 17:17. |
|
|
|
|
|
|
#275 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Codice:
private void Page_Load(object sender, System.EventArgs e)
{
|
|
|
|
|
|
|
#276 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Certo che sostituire ad ogni possibile if un qualcosa del genere il numero di classi aumenta esponenzialmente e tutte devono avere accesso alla classe base (in questo caso una pagina asp), il che comporta anche creare metodi/proprietà per impostare i controlli o renderli pubblici direttamente (che non è proprio l'ideale) quindi altro lavoro se una pagina ha una ventina di controlli significa scrivere altrettanti get e set con altre validazioni dei dati (visto che è la classe pagina a conoscere i criteri di validità, campi solo numerici o formattati in un certo modo)
|
|
|
|
|
|
#277 |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Ovvero uno State pattern grosso come una casa. L'oggetto Validator ritorna lo State object corrente che imposta i campi di Text come necessario.
Certo che se al contrario usi catene di if, poi ti servono commenti per capire che cosa succede in un pezzo di codice che non e' chiaro di suo Qui il problema e' proprio la scarsa qualita' del codice di partenza, ad esempio: Codice:
if (!IsPostBack)
{
// malloppo di if
Codice:
if (IsPostBack)
{
return;
}
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA Ultima modifica di fek : 11-04-2008 alle 18:01. |
|
|
|
|
|
#278 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Non serve avere accesso alla classe base per tutto se non si ragiona in ottica C, basta passare le informazioni strettamente necessarie agli oggetti che le devono usare. Ovvio, ci vuole un po' di dimestichezza, ma non serve scrivere un solo get/set Poi con anonymous class, delegate e ammenicoli vari queste cose si fanno in una manciata di righe codice. Basta togliersi dalla testa gli.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA Ultima modifica di fek : 11-04-2008 alle 18:04. |
|
|
|
|
|
|
#279 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
[quote=fek;21971668]Ovvero uno State pattern grosso come una casa. L'oggetto Validator ritorna lo State object corrente che imposta i campi di Text come necessario.
Certo che se al contrario usi catene di if, poi ti servono commenti per capire che cosa succede in un pezzo di codice che non e' chiaro di suo Qui il problema e' proprio la scarsa qualita' del codice di partenza, ad esempio: Codice:
if (!IsPostBack)
{
// malloppo di if
Quote:
In una pagina ASP cambia poco perchè spesso c'è qualcosa da fare anche nel caso IsPostBack. Sinceramente nelle pagine web mi riesce poco di evitare gli if, ci sono così tanti controlli da fare che mi torna decisamente più facile l'if (e da quanto vedo in giro non sono certo il solo). Ogni volta che peschi una variabile dalla sessione devi controllare che non sia nulla e affidarsi alle eccezioni significherebbe riempire il codice di decine try catch, idem per i controlli web in cui in base allo stato di uno decidi o meno se mostrare un altro controllo. |
|
|
|
|
|
|
#280 | ||
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Quote:
Il fatto che tu non veda come un if possa essere eliminato, non vuol dire che non sia possibile. E' sempre possibile, basta volerci provare Una lettura a Design Patterns ti farebbe un gran bene: quasi tutti gli esempi che fai sono gia' stati ampiamente risolti.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
||
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:34.












), non era una sviolinata come può sembrare eh'








