November 2003 Blog Posts

Errata Corrige: Creare una pagina per il download di file

Nel mio ultimo articolo Creare una pagina per il download di file, ripreso nel blog qui, indicavo il seguente codice per determinare il Content-Type data l'estensione del file.Response.ContentType = Registry.ClassesRoot.OpenSubKey(TheFile.Extension). GetValue("Content Type", @"application\octet-stream") as string;Qualche giorno fa Raffaele mi faceva notare che sarebbe buona cosa chiudere le chiavi del registro una volta aperte... non mi sono infatti accorto che Microsoft.Win32.RegistryKey è una classe IDisposable. Ecco quindi il codice rivisto:using(RegistryKey rKey = Registry.ClassesRoot.OpenSubKey(TheFile.Extension)){ Response.ContentType = rKey.GetValue("Content Type", @"application\octet-stream") as string; //rKey.Close(); }La chiusura esplicita della chiave (chiamata...

Bruce Eckel, poche illuminanti parole

Bruce Eckel nel suo Thinking in C++ introducendo OOP elenca le cinque caratteristiche base che Alan Kay aveva dato parlando di Smalltalk, uno dei primi linguaggi OOP. La prima di tale caratteristiche è quella che secondo me riassume il concetto di classe e l’approccio che occorre avere quando si è in fase di progettazione.   Everything is an object. Think of an object as a fancy variable; it stores data, but you can “make requests” to that object, asking it to perform operations on itself.   Poi parlando di interfacce dice:   And each object can satisfy only...

"OOP in VB .NET", il tutorial proseguirà...

A gennaio di quest'anno è stato pubblicato l'ultimo articolo della serie "OOP in VB .NET"... ultimo non perchè il mio "tutorial" è finito, ma per mancanza di tempo e forse di ispirazione.Nella parte 1 ho fatto una breve premessa al tutorial e alla programmazione OOP; la parte 2 è un intero articolo che parla di costruttutori; parte la 3 accennava al fantastico meccanismo dell'ereditarietà e livelli di protezione.Cosa manca? Manca di accennare a tutti i costrutti Override, Overloads, Abstract , Static... e manca di parlare del concetto di interfaccia (Io adoro il concetto di interfaccia).Cosa mi ha fatto venire l'ispirazione?...

Rivalutando lo statico...

Sabato sera mentre ero in macchina percorrevo la A4 e me la stavo pensando... poi ho dedotto che la classe TestStaticProcedureClass la preferisco a TestNoStaticProcedureClass (vedi esempi sotto)... certo non è solo una questione di mi piace la nutella - molto - e non mi piace la banana - mi fa davvero skifo -.... dietro la pensata c'è un ragionamento, ma abbiate pazienza lo spiegherò un'altra sera. Periodo piuttosto incasinato questo... spero passi in fretta, mi manca il poter seguire e postare con regolarità sul forum. using System; namespace Test{ class TestNoStaticProcedureClass{ ...

Storie dalla Sala Macchine.

Se avete 5 minuti tra una procedura e l'altra leggetevi una di queste storie http://www.soft-land.org/storie/index.html ... mitiche!  

Non che dobbiamo sempre partire da 0 a fare tutto....

Interessanti gli ASP.NET Starter Kits ma anche molto interssante Rainbow Portal, sia da usare sia da studiare :D

Sembrava fosse un bug invece...

Vi ricordate dove parlavo di un preseunto bug nel Databind di classi personalizzate? oggi parlando con AndreaS - anche lui tempo prima aveva avuto a che fare con lo stesso problema - mi ha fatto notare che non è un bug... ma il tutto è documentato. Dove dico io? MSDN - System.Windows.Forms.DataGrid"You can also bind the DataGrid to an ArrayList. A feature of the ArrayList is that it can contain objects of multiple types, but the DataGrid can only bind to such a list when all items in the list are of the same type as the first item. This...

«November»
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456