<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Antonio "tdj"</title><link>http://community.visual-basic.it/tdj/</link><description>(C'è sempre un modo migliore)</description><managingEditor>Antonio "tdj" Catucci</managingEditor><dc:language>it-IT</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>Antonio "tdj" Catucci</dc:creator><title>Productivity Tools update for Visual tudio 2010</title><link>http://community.visual-basic.it/tdj/archive/2010/07/25/30462.aspx</link><pubDate>Sun, 25 Jul 2010 22:29:00 GMT</pubDate><guid>http://community.visual-basic.it/tdj/archive/2010/07/25/30462.aspx</guid><wfw:comment>http://community.visual-basic.it/tdj/comments/30462.aspx</wfw:comment><comments>http://community.visual-basic.it/tdj/archive/2010/07/25/30462.aspx#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://community.visual-basic.it/tdj/comments/commentRss/30462.aspx</wfw:commentRss><trackback:ping>http://community.visual-basic.it/tdj/services/trackbacks/30462.aspx</trackback:ping><description>&lt;p&gt;Qualche giorno fa &lt;a title="New version of the Productivity Power Tools is Available!" href="http://blogs.msdn.com/b/visualstudio/archive/2010/07/18/new-version-of-the-productivity-power-tools-is-available.aspx" target="_blank"&gt;è stato rilasciato un aggiornamento&lt;/a&gt; dei &lt;strong&gt;Productivity Power Tools&lt;/strong&gt;. Si tratta di un add-in per Visual Studio 2010 che estende e aggiunge funzionalità all’ambiente di sviluppo.&lt;/p&gt; &lt;p&gt;Le novità di questa ultima versione sono:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.ingresso-libero.it/blog/ProductivityToolsupdateforVisualtudio201_D475/pt_quick_access.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 17px 0px 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="pt_quick_access" border="0" alt="pt_quick_access" align="left" src="http://www.ingresso-libero.it/blog/ProductivityToolsupdateforVisualtudio201_D475/pt_quick_access_thumb.jpg" width="202" height="240"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Quick Access&lt;/strong&gt;: è una funzionalità molto simile alla ricerca che trovate nel menu Start di Win7, ma applicata all’IDE. In pratica potete cercare voci di menu, macro, comandi, ecc semplicemente digitando quello che che state cercando. Ad esempio, digitando &lt;em&gt;“debug&lt;/em&gt;” trovere tutto cio che ha a che fare con il debug come il debug delle applicazioni (F5) oppure la sezione di configurazione in Tools / Options…. I risultati sono dei link che vi portano direttamente al comando cercato.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Tools Option Support&lt;/strong&gt;: ora è possibile abilitare/Disabilitare una singola funzionalità direttamente dalla dialog Options.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.ingresso-libero.it/blog/ProductivityToolsupdateforVisualtudio201_D475/pt_options.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" class="wlDisabledImage" title="pt_options" border="0" alt="pt_options" src="http://www.ingresso-libero.it/blog/ProductivityToolsupdateforVisualtudio201_D475/pt_options_thumb.jpg" width="242" height="140"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a title="Announcing the Solution Navigator" href="http://blogs.msdn.com/b/visualstudio/archive/2010/07/20/solution-navigator-blog-post.aspx" target="_blank"&gt;&lt;strong&gt;Navigation Explorer&lt;/strong&gt;&lt;/a&gt;: è una nuova dialog che integra in sè diverse funzionalità già presenti in Visual Studio come la navigazione nei file della solution, possibilità di vedere la gerarchia delle classi, reference, cercare un file, ecc… In particolare la ricerca è davvero comodo perchè non si limita a cercare solo un file ma, ad esempio, nel momento in cui lo trovate potete impostarlo come “root” limitando le ricerche all’interno di esso (ad esempio cercando metodi, variabili, ecc..) Molto comodo!&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Auto Brace Completion&lt;/strong&gt;: chiusura automatica delle parentesi (), [], {} ma anche degli apici per le stringhe.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Oltre a queste novità ci sono anche una serie di bug fixing e miglioramenti delle funzionalità esistenti. Per un elenco completo delle funzionalità potete fare riferimento alla pagina ufficiale:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a title="Productivity Power Tools" href="http://visualstudiogallery.msdn.microsoft.com/en-us/d0d33361-18e2-46c0-8ff2-4adea1e34fef" target="_blank"&gt;&lt;strong&gt;Productivity Power Tools&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a title="Download Productivity Power Tools" href="http://visualstudiogallery.msdn.microsoft.com/en-us/d0d33361-18e2-46c0-8ff2-4adea1e34fef/file/29666/2/ProPowerTools.vsix" target="_blank"&gt;[download]&lt;/a&gt;&lt;/p&gt;&lt;img src ="http://community.visual-basic.it/tdj/aggbug/30462.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Antonio "tdj" Catucci</dc:creator><title>Entity Framework Feature CTP 4</title><link>http://community.visual-basic.it/tdj/archive/2010/07/14/30417.aspx</link><pubDate>Wed, 14 Jul 2010 23:36:00 GMT</pubDate><guid>http://community.visual-basic.it/tdj/archive/2010/07/14/30417.aspx</guid><wfw:comment>http://community.visual-basic.it/tdj/comments/30417.aspx</wfw:comment><comments>http://community.visual-basic.it/tdj/archive/2010/07/14/30417.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://community.visual-basic.it/tdj/comments/commentRss/30417.aspx</wfw:commentRss><trackback:ping>http://community.visual-basic.it/tdj/services/trackbacks/30417.aspx</trackback:ping><description>&lt;p&gt;Il &lt;a title="ADO.NET team blog" href="http://blogs.msdn.com/b/adonet/" target="_blank"&gt;team di EF&lt;/a&gt; ha pubblicato un aggiornamento della &lt;a title="Download EF Feature CTP 4" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=4e094902-aeff-4ee2-a12d-5881d4b0dd3e&amp;amp;displaylang=en" target="_blank"&gt;&lt;strong&gt;Feature CTP 4&lt;/strong&gt;&lt;/a&gt; contenente il supporto per il modello &lt;strong&gt;Code First&lt;/strong&gt; ovvero mappare un database interamente da codice senza l’uso dei file di mapping xml.&lt;/p&gt; &lt;p&gt;Nel &lt;a title="EF CTP4 Released!" href="http://blogs.msdn.com/b/adonet/archive/2010/07/14/ctp4announcement.aspx" target="_blank"&gt;post&lt;/a&gt; potete leggere l’intero elenco delle modifiche apportate ed inoltre trovate un esempio step-by-step per provare le nuove funzionalità:&lt;/p&gt; &lt;h5&gt;&lt;a title="EF CTP4 Walkthrough: Productivity Improvements" href="http://blogs.msdn.com/b/adonet/archive/2010/07/14/ctp4piwalkthrough.aspx" target="_blank"&gt;EF CTP4 Walkthrough: Productivity Improvements&lt;/a&gt;&lt;/h5&gt; &lt;h5&gt;&lt;br&gt;&lt;a title="EF CTP4 Walkthrough: Code First" href="http://blogs.msdn.com/b/adonet/archive/2010/07/14/ctp4codefirstwalkthrough.aspx" target="_blank"&gt;EF CTP4 Walkthrough: Code First&lt;/a&gt;&lt;/h5&gt;&lt;img src ="http://community.visual-basic.it/tdj/aggbug/30417.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Antonio "tdj" Catucci</dc:creator><title>MVP again</title><link>http://community.visual-basic.it/tdj/archive/2010/07/01/30333.aspx</link><pubDate>Thu, 01 Jul 2010 22:28:00 GMT</pubDate><guid>http://community.visual-basic.it/tdj/archive/2010/07/01/30333.aspx</guid><wfw:comment>http://community.visual-basic.it/tdj/comments/30333.aspx</wfw:comment><comments>http://community.visual-basic.it/tdj/archive/2010/07/01/30333.aspx#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://community.visual-basic.it/tdj/comments/commentRss/30333.aspx</wfw:commentRss><trackback:ping>http://community.visual-basic.it/tdj/services/trackbacks/30333.aspx</trackback:ping><description>&lt;p&gt;Quest’anno mi sta regalando un bel po’ di soddisfazioni &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://www.ingresso-libero.it/blog/MVPagain_13340/wlEmoticonsmile.png"&gt;&lt;br&gt;L’ultima è la rinomina a MVP per il secondo anno consecutivo. Che dire… per me è come la prima volta, emozionato e piacevolmente&amp;nbsp; “disorientato”.&amp;nbsp; Ma a parte questo, la cosa che più mi gratifica sono le attività di community che abbiamo sostenuto in questo ultimo anno culminato con il riconoscimento di “&lt;a href="http://community.visual-basic.it/alessandro/archive/2010/06/25/29798.aspx" target="_blank"&gt;Community of the Year 2010&lt;/a&gt;” avuto da &lt;a title="" href="http://www.microsoft.com" target="_blank"&gt;Microsoft&lt;/a&gt; Italia.&lt;/p&gt; &lt;p&gt;Personalmente, invece, c’è stato il debutto come speaker durante il Community Day di &lt;a title="Visual Basic Tips &amp;amp; Tricks" href="http://www.visual-basic.it/" target="_blank"&gt;VBT&amp;amp;T&lt;/a&gt; e il &lt;a href="http://www.visual-basic.it/evento20100514.asp" target="_blank"&gt;Community Tour&lt;/a&gt; in occasione del lancio di Visual Studio 2010 con ben 300 presenti! E conoscendomi, mai e poi mai avrei immaginato una cosa del genere &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://www.ingresso-libero.it/blog/MVPagain_13340/wlEmoticonsmile.png"&gt; Per non parlare, poi, della nascita di &lt;a href="http://www.wpfitalia.it" target="_blank"&gt;WPF Tips&amp;amp;Tricks&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Sarà ripetitivo, ma è doveroso ringraziare &lt;a href="http://www.microsoft.com" target="_blank"&gt;Microsoft&lt;/a&gt; per questa splendida opportunità che regala a migliaia di persone sparse nel mondo, ad &lt;a href="http://blogs.technet.com/b/alead_msft/" target="_blank"&gt;Alessandro Teglia&lt;/a&gt; quale MVP Lead che ci sostiene sempre, e alla community naturalmente, senza la quale l’MVP Award avrebbe poco senso.&lt;/p&gt;&lt;img src ="http://community.visual-basic.it/tdj/aggbug/30333.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Antonio "tdj" Catucci</dc:creator><title>LINQ, questo sconosciuto</title><link>http://community.visual-basic.it/tdj/archive/2010/06/20/29781.aspx</link><pubDate>Sun, 20 Jun 2010 22:41:00 GMT</pubDate><guid>http://community.visual-basic.it/tdj/archive/2010/06/20/29781.aspx</guid><wfw:comment>http://community.visual-basic.it/tdj/comments/29781.aspx</wfw:comment><comments>http://community.visual-basic.it/tdj/archive/2010/06/20/29781.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://community.visual-basic.it/tdj/comments/commentRss/29781.aspx</wfw:commentRss><trackback:ping>http://community.visual-basic.it/tdj/services/trackbacks/29781.aspx</trackback:ping><description>&lt;SPAN style="COLOR: #000000"&gt;&lt;/SPAN&gt;
&lt;DIV&gt;&lt;/DIV&gt;&lt;PRE&gt;&lt;/PRE&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;P&gt;Perch&amp;#232; questo titolo? Perch&amp;#232; in quest&amp;#8217;ultimo periodo, leggendo i messaggi nel forum di &lt;A title="Visual Basic Tips &amp;amp; Tricks" href="http://www.visual-basic.it/" target=_blank&gt;VBT&amp;amp;T&lt;/A&gt;, mi sono reso sempre pi&amp;#249; conto di&amp;nbsp;come le recenti tecnologie .NET non siano ancora entrate nella &amp;#8220;normalit&amp;#224;&amp;#8221; della programmazione. E non mi riferisco necessariamente a tecnologie come Entity Framework, MVC, e chi pi&amp;#249; ne ha pi&amp;#249; ne metta, ma molto pi&amp;#249; semplicemente a LINQ.&lt;/P&gt;
&lt;P&gt;LINQ &amp;#232; davvero una potenza, secondo me, perch&amp;#233; permette di manipolare un insieme di dati in maniera intuitiva e semplice e per questo, quando mi trovo di fronte ad un problema che ha a che fare con un insieme (Collection o array che sia) dovrebbe venire quantomeno spontanea la domanda &amp;#8220;&lt;EM&gt;Posso&amp;nbsp;risolverlo con LINQ?&lt;/EM&gt;&amp;#8221;. Invece noto che spesso l&amp;#8217;approccio &amp;#232; classico, ad esempio utilizzare il classico&amp;nbsp;For &amp;#8230; Next che con Array e Collection ci va a nozze.&lt;/P&gt;
&lt;P&gt;Ecco alcuni casi (presi dal forum) in cui LINQ ti d&amp;#224; una mano :)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Ordinamento casuale delle righe di un file di testo.&lt;BR&gt;&lt;/STRONG&gt;La necessit&amp;#224; era quella di ordinare casualmente un file di testo composto da &amp;#8220;n&amp;#8221; righe.&lt;BR&gt;&lt;/P&gt;
&lt;DIV style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: none; PADDING-TOP: 0px" id=scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:813885b7-b753-4138-b866-bfb82cabde33 class=wlWriterEditableSmartContent&gt;&lt;PRE class="brush: vb"&gt;Dim source = System.IO.File.ReadAllLines("C:\Source.txt")
Dim r = source.OrderBy(Function(s) Guid.NewGuid)
System.IO.File.WriteAllLines("C:\dest.txt", r.ToArray)&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;L&amp;#8217;ordinamento casuale &amp;#232; dato dalla generazione di GUID che sono, appunto, casuali.&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Generazione di una lista casuale di numeri&lt;/STRONG&gt;&lt;BR&gt;Qui immediatamente si pensa alla funzione Randomize() e compagnia bella ma si potrebbe fare anche cos&amp;#236;:&lt;BR&gt;&lt;/P&gt;
&lt;DIV style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: none; PADDING-TOP: 0px" id=scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:456a4991-837f-4e66-b28f-dbd8d8f93385 class=wlWriterEditableSmartContent&gt;&lt;PRE class="brush: vb"&gt;Dim sequenza = Enumerable.Range(1, 99).OrderBy(Function(n) Guid.NewGuid)&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;cio&amp;#232; ordinare casualmente una lista di numeri da 1 a 99.&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;Sottrazione di insiemi&lt;BR&gt;&lt;/STRONG&gt;Date due liste di stringhe, generare una terza lista con l&amp;#8217;elenco delle stringhe non presenti nella seconda:&lt;BR&gt;&lt;/P&gt;
&lt;DIV style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: none; PADDING-TOP: 0px" id=scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:efdd4e83-e430-49ba-b4fc-aa9b1c50021c class=wlWriterEditableSmartContent&gt;&lt;PRE class="brush: vb"&gt;Dim lista1 As String() = New String() {"a", "b", "c"}
Dim lista2 As String() = New String() {"a", "e", "f", "g"}
Dim lista3 = lista1.Except(lista2)&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;Questi sono esempi semplici ma rendono l'idea della potenza di LINQ. Senza di esso la soluzione richiederebbe sicuramente pi&amp;#249; righe di codice e molto probabilmente sarebbe meno leggibile.&lt;BR&gt;Pertanto, il mio consiglio &amp;#232; quello di sforzarsi sempre per&amp;nbsp;trovare una soluzione al proprio problema utilizzando LINQ anche laddove, ad una prima occhiata sembrerebbe non c'entrare nulla...&lt;/P&gt;&lt;img src ="http://community.visual-basic.it/tdj/aggbug/29781.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Antonio "tdj" Catucci</dc:creator><title>Disponibile Expression Studio 4</title><link>http://community.visual-basic.it/tdj/archive/2010/06/07/29519.aspx</link><pubDate>Mon, 07 Jun 2010 22:30:00 GMT</pubDate><guid>http://community.visual-basic.it/tdj/archive/2010/06/07/29519.aspx</guid><wfw:comment>http://community.visual-basic.it/tdj/comments/29519.aspx</wfw:comment><comments>http://community.visual-basic.it/tdj/archive/2010/06/07/29519.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://community.visual-basic.it/tdj/comments/commentRss/29519.aspx</wfw:commentRss><trackback:ping>http://community.visual-basic.it/tdj/services/trackbacks/29519.aspx</trackback:ping><description>Oggi c'è stato il lancio ufficiale della nuova suite Expression versione 4.0. Per gli abbonati &lt;a title="" href="http://msdn.microsoft.com" target="_blank"&gt;MSDN&lt;/a&gt; è già disponibile il download delle edizioni &lt;strong&gt;Ultimate&lt;/strong&gt; e &lt;strong&gt;Premium&lt;/strong&gt; in inglese:  &lt;p&gt;&lt;/p&gt;&lt;a href="http://msdn.microsoft.com/subscriptions"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="expression4_msdn" border="0" alt="expression4_msdn" src="http://www.ingresso-libero.it/blog/ArrivaExpressionStudio4_13C00/expression4_msdn.jpg" width="689" height="174"&gt;&lt;/a&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Potete leggere una overview delle features sul blog di &lt;a href="http://timheuer.com"&gt;Tim Heuer&lt;/a&gt;:&lt;/p&gt; &lt;h4&gt;&lt;a href="http://timheuer.com/blog/archive/2010/06/07/expression-studio-4-launch-expression-blend.aspx"&gt;&lt;strong&gt;Expression Studio 4 launch–Blend, Web, Encoder, Design&lt;/strong&gt;&lt;/a&gt;&lt;/h4&gt;&lt;img src ="http://community.visual-basic.it/tdj/aggbug/29519.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>