Samples II, sempre sicuri?

Che il concatenamento stringhe eseguito nel modo meno opportuno sia presente in più esempi contenuti nella guida di VS2005 è ormai accertato, ma guardando il codice d'esempio relativo a SymmetricAlgorithm ho notato che, oltre alla citata modalità di concatenamento, non viene neanche eseguita la Dispose() dei due FileStream.

Ok, lo stream viene chiuso, e nella chiusura viene invocata la Dispose(), ma essendo codice "didattico" a mio avviso è sicuramente errato dare per scontato che lo sviluppatore (che tendenzialmente consulta la guida per "imparare") conosca il meccanismo interno della classe FileStream.

Mi aspetterei piuttosto che ogni "sample", in merito alla Dispose, comunichi il concetto: "se implementa IDisposable, alla fine chiama 'sta Dispose".

Anche perchè in una versione futura del framework (e relativo aggiornamento del codice) nulla vieta che qualcosa possa cambiare nell'implementazione interna di FileStream rendendo la Dispose() non trascurabile; e il problema rimarrebbe sparso per tutto il codice.

Boh, magari sbaglio io...

Print | posted @ giovedì 4 maggio 2006 10.07

Comments on this entry:

Gravatar # re: Samples II, sempre sicuri?
by Mauro Servienti at 04/05/2006 10.26

Ciao,

sono perfettamente d'accordo con te, gli esempi di MSDN sono particolarmente lacunosi e spesso non compilano neppure.

Credo che la cosa sia abbastanza sentita anche in MS e comunque di non facile soluzione, il mantenimento di MSDN deve essere un bel groviglio.
Sul sito MS ci sono molte posizioni aperte come "MSDN Code Sample Reviewer" con posto di lavoro direttamente a Redmond... certo è che non è un lavoro allettante
Comments have been closed on this topic.