.Net 2.0
Una raccolda di post sul nuovo framework di casa Microsoft
Premessa: ciò che scriverò è una banalità, ma secondo me in tanti non ne sono al corrente o non ci pensano. Di cosa parlo? Di cose del genere: public const int MyConst = 10;
Il danno potenziale che le costanti pubbliche possono creare alla stabilità delle nostre applicazioni è enorme.
Why? Perché le costanti non sono altro che placeholder risolti in fase di compilazione. Questo vuol dire che, finché non si ricompila, il valore non viene aggiornato.
Implicazioni?
Assembly A che definisce una costante MyConst = 10
Assembly B che referenzia Assembly A e ne utilizza MyConst
Assembly A cambia MyConst a 15
Finché non ricompilo...
Dopo il mio precedente lavoro su NHibernate, oggi Aspitalia.com ha pubblicato un mio nuovo articolo sul multithreading. Grazie mille a Daniele per lo spazio che mi ha concesso e a Ricky per la pazienza nel correggerlo! Technorati tags: Articoli, Multithreading, ASP.NET
Chi l'avrebbe mai detto che un programmino fatto in un weekend per utilizzo personale riscuotesse tutto questo successo... L'hanno provato Simone e addirittura Phil Haack, e entrambi ne hanno parlato benone nei loro blog, convincendomi a farlo diventare un progetto open source a cui si sono aggiunti come committer!! Detto, fatto, lo trovate su Google Code, rinominato per l'occasione come Blog Commander (BlogManager era già utilizzato e faceva anche un filo schifo!!). Chi vuole apportare migliorie, mi droppi una mail! Ciao! Technorati tags: Blog Commander, Tools
Bene, allora la nuova versione di Blog Manager (il nome è uno schifo, lo so) fa per voi! Qualche post fa, se ricordate, vi ho raccontato di un piccolo tool realizzato dal sottoscritto che, grazie ad un'interfaccia simil-Explorer, consente di riorganizzare velocemente tutte le categorie del blog facendo uso dei MetaWeblog API. Mi è sembrato così comodo che, dopo essere stato lì a compiacermi come un fesso (e senza cambiare le categorie), mi son detto: "ma perchè non fare lo stesso anche per i Technorati Tags, che son così pallosi da inserire nei post vecchi che ne sono sprovvisti? In...
La scorsa domenica ho dedicato un paio d'ore di tempo alla realizzazione di un piccolo tool per la gestione delle categorie sul blog, di cui parlerò più approfonditamente tra un paio di giorni (appena riesco ad ultimarlo). Come sa chiunque utilizzi abitualmente Windows Live Writer, SubText, il vecchio .Text e altri blog engine espongono una serie di servizi remoti chiamati MetaWeblog API (qui un piccolo white paper), raggiungibili all'URL http://[blogurl]/services/metablogapi.aspx Il protocollo utilizzato è XML-RPC (qui maggiori informazioni) ed è basato su uno standard di comunicazione estremamente più semplice dei Web Service tradizionali. Non trattandosi di SOAP, però, essi non sono direttamente...
E' sicuramente una best practice quella di chiudere un datareader quando questo è stato utilizzato. Consideriamo però il seguente snippet di codice: DBConnection connection;
using (connection = factory.CreateConnection())
{
DBCommand cmd = connection.CreateCommand();
// some code
DBDataReader dr = cmd.ExecuteReader();
// some code
}
Console.WriteLine(connection.State);
Il cursore non viene esplicitamente chiuso, questo è vero, ma viene comunque invocata la dispose della connection verso il DB.
Con SqlClient questo snippet funziona come previsto, stesso dicasi per OleDbClient e per Oracle.DataAccess: lo snippet stampa "Closed" sulla console e, se si disabilita il connection pool, si...
Vediamo se riesco... dato che comunque mi sembra piuttosto simile al vecchio 70-316 che ho superato circa un annetto fa, ho pensato di dare un'accelerata drastica ai miei studi e sostenerlo entro il mese di gennaio. Chissà se ce la farò! In ogni modo, ho appena acquistato i test su MeasureUp; cavoli, certo che 55€ per la versione online di 30gg non è proprio a buon mercato!!
Prendo spunto dai post di Lorenzo e di Raffo per segnalarvi un bell'articolo di MSDN Magazine di Gennaio di James Kovacs a proposito dei memory leak che possono verificarsi nelle nostre applicazioni .NET se scritte "male", anche nel caso di solo codice managed. Credo che ogni sviluppatore di buon livello debba annoverare, nel suo bagaglio culturale, la conoscenza di come funzionano le cose a basso livello, perché in alcuni casi bisogna implementare IDisposable (tempo fa ho scritto qualcosa in proposito qui), cosa sono boxing e unboxing, cosa succede quando scriviamo myButton.Click += new EventHandler(myButtonClickHandler);
o qual è l'overhead di lavoro a...
Preparato in poco tempo (un paio di weekend), passato
oggi con 896.
Per essere contento son contento, anche se ho seri dubbi sulla reale utilità
di un esame del genere: che senso ha valutare il candidato su quesiti che, 9
volte su 10, si risolvono consultando la library... mah! Nozionismo puro
e programma estremamente vasto... A me è sembrato inutilmente
complicato, fortuna che me lo son buttato alle spalle, va'...
Speriamo che quelli per win e web siano più interessanti. Sciaoooo!
powered by IMHO 1.3
Scrivo solo oggi perché ho avuto un weekend piuttosto
intenso! Che dire... contentissimo! Intanto mi sento di ringraziare Gian Maria, Diego, Stefano e tutti gli altri ragazzi per la splendida organizzazione,
per il caffé nel termos che mi ha salvato dal crollo, per i pasticcini che
invece hanno salvato Igor e soprattutto l'albero di natale aziendale, senza il
quale io e Janky non avremmo potuto sistemare le ultime robine sulle slide
durante la sessione di Simone (già... perché da che mondo è mondo, le slide
e le demo devono essere completate 30 secondi prima di parlare, altrimenti porta
sfiga).
Mi spiace di...
Full .Net 2.0 Archive