Web Log di Adrian Florea

"You know you've achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away." Antoine de Saint-Exupery
posts - 440, comments - 2715, trackbacks - 3944

My Links

Archives

Post Categories

Image Galleries

.RO Blogs

.RO People

.RO Sites

Blogs

Furls

Links

vinCitori

novembre 2005 Blog Posts

Test Sharp (IsEqualsEquivalence)

Equals definisce una relazione di equivalenza su un tipo Foo se e solo se, per ogni istanze non nulle x, y e z di Foo abbiamo: x.Equals(x) è true; se x.Equals(y) è true, anche y.Equals(x) è true; se x.Equals(y) && y.Equals(z) è true, anche x.Equals(z) è true Scrivete un'implementazione migliore (cioè che ritorni correttamente Fuzzy.True per più tipi; per questo il tipo di ritorno è Fuzzy e non bool) per il metodo IsEqualsEquivalence,  rispetto a questa banale: public static Fuzzy IsEqualsEquivalence(Type t){      return Fuzzy.Maybe;} dove Fuzzy è: public enum Fuzzy{      False = -1,      Maybe,      True} Tempo: tutta la settimana.

posted @ domenica 27 novembre 2005 17:10 | Feedback (16) | Filed Under [ Test Sharp ]

[OT] Foto della settimana @ Milanouel!W

Questa mia foto, "i fantasmi del luogo", è stata votata come Foto della settimana sul gruppo Milanouel!W e ne sono onorato vista la qualità delle foto dei membri del gruppo. Per me è stata una bella sorpresa.

posted @ lunedì 21 novembre 2005 15:49 | Feedback (33) | Filed Under [ Adrian Varie ]

Classi nel Framework che portano lo stesso nome

Lo sapevate che esistono classi nel Framework .NET che portano lo stesso nome (ovviamente in namespace differenti)? [mscorlib]System.Runtime.Remoting.Contexts.SynchronizationAttribute - [System.EnterpriseServices]System.EnterpriseServices.SynchronizationAttribute Altri esempi? (l'esempio di sopra l'ho trovato nel recente libro di Nagel, p. 34) (Aggiornamento 20/11/2005): Nei commenti trovate l'elenco completo dei 60 esempi di classi pubbliche nella 2.0 (Beta 2) che portano lo stesso nome e che hanno come root namespace, System (altrimenti sarebbero stati molti di più).

posted @ domenica 20 novembre 2005 15:56 | Feedback (30) | Filed Under [ Carillon .NET ]

Dove metto il type parameter? [post con Massimo Prota]

Facendo oggi con Massimo il refactoring con generics della classe DotNetNuke.Common.Utilities.Null, sono nate alcune considerazioni sui tipi generici. Di seguito il post a 4 mani - si nota anche dall'italiano :-) Avendo una classe static Foo che espone funzionalità generiche e più conveniente definire il type parameter per un metodo (Dummy) piuttosto che per la classe. Questo perché a runtime verrà generata un'unica classe Foo con più metodi Dummy anziché più classi Foo con un metodo Dummy ciascuna. Per esempio, il seguente snippet:using System; class Foo<T>{      static Foo()      {            Console.WriteLine("Foo<{0}>", typeof(T));      }      public static void Dummy() { }} class Foo{      static Foo()      {           ...

posted @ lunedì 7 novembre 2005 19:36 | Feedback (25) | Filed Under [ Carillon .NET Pattern Dappertutto ]

Powered by:
Powered By Subtext Powered By ASP.NET