Gli ultimi post - pagina 4
PDC 2008: Oslo
Ieri non ho bloccato immediatamente quello che ho visto perché volevo confrontarmi con gli altri sul mio argomento del giorno: Oslo. Il fatto è che nessuno ha le idee ancora ben chiare di cosa sia e dove Microsoft vuole arrivare :-D Quello che ho capito è: è un nuovo modo di definire modelli e di utilizzo di DSL; - utilizza un linguaggio testuale ...
Seconda KeyNote a PDC 2008
La seconda giornata inizia con una KeyNote incentrata su Windows 7 e sulla visione che ha Microsoft di rendere client, web e mobile sempre più connessi tra di loro. Durante la sessione sono state mostrate alcune demo che mostrano le nuove caratteristiche di Windows 7 quali una nuova taskbar che raggruppa per programmi, mostrando facilmente le ...
Riflessioni su C# 4
Stefano ha già parlato delle novità introdotte, ma voglio rendervi partecipi di alcuni dubbi e riflessioni che mi girano in testa. Innanzitutto è possibile scaricare un po' di documentazione ed esempi da qua . Trovo utile il covariance e il contravariance. Attualmente infatti non è possibile fare questo: [code lang="c#"]IEnumerable<Strings>...
PDC: .NET Type System
Ho da poco assistito ad una sessione su alcune novità del CLR 4.0 per quanto riguarda l'interop. Molto l'utile l'idea, tramite l'opzione link del compilatore, di includere le strutture, i metodo, gli eventi e in generale, i metadati dei tipi utilizzati nell'amplicazione che invece che referenziare l'assembly di interop originale. Nella demo ha ...
KeyNote PDC 2008
Io, Stefano e Ughetto stiamo partecipando a Microsoft PDC 08. La keynote è stata all'insegna dei cloud services racchiusi sotto il nome di Windows Azure. Lo scopo è creare un framework per lo sviluppo di servizi dimenticandosi dei server fisici sulle quali essi si trovano. Microsoft intende ospitare i cloud service sviluppati sui loro data center...
Abusi della parola chiave var e poca leggibilità dei generics
Con C# 3.0 hanno introdotto la nuova parola chiave var per inferire il tipo dalla dichiarazione il cui scopo è principalmente supportare e rendere possibile LINQ. Un po' di codice ormai in giro si trova, ma trovo che a volte questa parola chiave venga abusata. Sono del parere che non debba essere strumento della nostra pigrizia, ma che venga usata ...
Lambda Expression in Windows Presentation Foundation
Preso da LINQ, Expression e compagnia bella, mi è venuto in mente di provare ad applicare LINQ anche in WPF, la mia primissima passione. Ho pensato al Binding, che è bellissimo, ma spesso mi trovo a dover usare converter che, anche se molto stupidi, richiedono di creare una classe che implementi IValueConverter, referenziarla e instanziarla nel ...
LINQ to reflection - Parte due
Qualche giorno fa ho parlato di come è possibile generare IL a runtime per velocizzare le operazioni che solitamente si effettuano via reflection. Oltre alla FastCreateInstance ho implementato una FastSetValue. In questo caso il metodo dinamico generato non fa altro che ricevere l'istanza e il valore impostandola sulla proprietà. Ecco il codice ...
Eccovi LINQ to reflection
Un bel titolo ingannevole per attirarvi a leggere alcuni extension method che ho sviluppato per risolvere in parte le problematiche di performance delle quali ho discusso qua . Come avevo accennato, un'opzione può essere quella di generare codice dinamico. Per farlo facilmente LINQ include un namespace System.Linq.Expressions dove possiamo ...
Reflection: migliorare le performance
La reflection è quello strumento che permette di interrogare a runtime i metadati di un assembly, analizzare i tipi, i membri ed invocare dinamicamente metodi, proprietà ed eventi. Il namespace System.Reflection c'è dal .NET Framework 1.0 e l'importanza di questo strumento si è fatta sempre più sentire, da una parte perché il framework è sempre più...