giovedì 19 gennaio 2012

How To: Use partial

Sapevo delle classi parziali .. ma dei metodi no .. !


public partial class Test
{
public Test()
{
Console.WriteLine("Costruttore");
}
}

public partial class Test
{
public void DoTest()
{
Console.WriteLine("Metodo DoTest");
Loop();
}

partial void Loop();

}

public partial class Test
{
public void DoUntil()
{
Console.ReadLine();
Console.WriteLine("Fine");
}

partial void Loop()
{
for (int i = 0; i < 5; i++)
{
Console.WriteLine("\t In loop");
}
}
}

class Program
{
static void Main(string[] args)
{
Test t = new Test();
t.DoTest();

t.DoUntil();

t = null;
}
}


Vi prego osservate questo esempio .. perchè ha dell'incredibile.
Praticamente la classe Test è smembrata e (anche se la cosa sembra essere decisamente orribile) consente in parte o in toto di estendere tremendamente la classe stessa.
Siamo sul filo dell'abominio per la programmazione a oggetti, ma non così tanto come sembra.

Rimango molto molto colpito. Ho il tragico sospetto che questa cosa possa portarmi ad una delirante iniziativa... !

Nessun commento: