Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1906, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

febbraio 2015 Blog Posts

Video su VB 2015 aggiornato con NameOf e String interpolation

Tempo fa, pubblicai una serie di video dedicata alle novità di Visual Basic 2015 nell'area Video del nostro sito, basati su Visual Studio 2015 Preview. Con le due CTP 5 e 6, sono stati finalmente introdotti l'operatore NameOf e la String interpolation, due grandissime novità del linguaggio, pertanto ho anche appena caricato una versione aggiornata del video che ne parla in modo da poterne vedere l'utilizzo in un ambiente effettivamente funzionante. Alessandro

posted @ venerdì 27 febbraio 2015 15:29 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

String interpolation in Visual Basic 2015

Con il rilascio della CTP 6 di Visual Studio 2015, è finalmente disponibile una nuova funzionalità di Visual Basic nota come string interpolation. Con la string interpolation è possibile formattare stringhe utilizzando parametri direttamente all'interno della stringa e con l'aiuto dell'IntelliSense, consentendo di scrivere codice molto più pulito ed elegante rispetto a String.Format o metodi che supportano la stessa sintassi. Per capirne il funzionamento, una semplice classe Person: Class Person    Property FirstName As String    Property LastName As String    Property Height As DoubleEnd Class E un'istanza della stessa: Dim p As New Person With {.FirstName = "Alessandro", .LastName = "Del Sole", .Height = 175} Ora, con String.Format scriveremmo:         Dim firstFormat = String.Format("Today is {0}, you are {1} {2} and you are {3:0.00} tall",                                       Date.Today.ToShortDateString,                                       p.FirstName, p.LastName, p.Height) Oppure potremmo utilizzare la consueta forma di concatenazione mediante l'operatore & o il +. Con la string interpolation diventa:         Dim secondFormat = $"Today is {Date.Today.ToShortDateString}, you are {p.FirstName}                           {p.LastName} and you are {p.Height:0.00} tall" Il simbolo $ precedente la stringa indica che si...

posted @ mercoledì 25 febbraio 2015 20:17 | Feedback (0) | Filed Under [ Visual Basic ]

Visual Studio 2015 CTP 6 disponibile

Ieri è stata rilasciata una nuova preview di Visual Studio 2015, denominata CTP 6. Sono stati fatti molti passi avanti rispetto a una CTP 5 per molti aspetti poco utilizzabile, sono stati fixati molti bug, sono stati introdotti nuovi tool e, con mio grande piacere, una delle novità di Visual Basic 2015 è finalmente utilizzabile, ossia la string interpolation di cui vi parlerò in un post separato. Dal punto di vista di Roslyn, ossia la .NET Compiler Platform, c'è stata qualche variazione nelle API ma niente di trascendentale. Di buono c'è che ora i progetti per gli analyzer vengono generati già...

posted @ martedì 24 febbraio 2015 18:49 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Nuovo ebook gratuito su Windows AppStudio

Molti di voi conoscono Windows AppStudio, strumento online di Microsoft per la creazione di Universal Windows app basata su template e particolarmente adatto ai meno esperti. Al riguardo vi segnalo la pubblicazione di un eBook gratuito dedicato a questo strumento e realizzato da una cara amica, Sara Silva, MVP portoghese esperta in Store app. Ho avuto il piacere di poterle dare qualche piccola dritta "formale" e sono contento che sia riuscita a raggiungere questo obiettivo. Download qui. Alessandro

posted @ lunedì 9 febbraio 2015 14:31 | Feedback (0) | Filed Under [ Community and friends UWP e Windows Store Apps ]

Licenza Community per Syncfusion Essential Studio

La Syncfusion, leader nel mercato dei controlli di terze parti per ambiente .NET, offre una licenza "community" gratuita della sua popolare ed eccezionale suite di controlli Essential Studio, per Windows desktop, mobile (inclusi Xamarin, Win Phone, WinRT, iOS...), Web, LightSwitch e molto altro. La licenza community è essenzialmente gratuita per sviluppatori singoli e piccole aziende individuate secondo i termini della licenza stessa. Maggiori info e download qui. Alessandro

posted @ sabato 7 febbraio 2015 13:21 | Feedback (0) | Filed Under [ .NET Framework Windows Presentation Foundation Silverlight e Windows Phone Visual Studio LightSwitch UWP e Windows Store Apps Visual Studio 2013 ]

Visual Basic 2015: L'operatore NameOf

Visual Basic 2015 introduce un nuovo operatore chiamato NameOf. Il suo scopo è quello di generare al volo una costante che rappresenti stringhe, che a loro volta siano il nome di oggetti. Per capirci, considerate il seguente codice che solleva un'eccezione se il parametro è nullo:     Sub OpenFile(fileName As String)        'Vecchia sintassi        If String.IsNullOrWhiteSpace(fileName) Then            Throw New ArgumentNullException("fileName")        End If    End Sub In questo caso, il nome dell'argomento viene passato come una vera e propria stringa, anche col rischio di errori di digitazione. Con NameOf, tutto si può riscrivere in questo modo:     Sub OpenFile(fileName As String)        'Nuova sintassi        If String.IsNullOrWhiteSpace(fileName) Then            Throw New ArgumentNullException(NameOf(fileName))        End If    End Sub Il vantaggio? avere IntelliSense che consente di recuperare facilmente il nome dell'espressione da rappresentare. Un altro esempio, in cui una classe implementa INotifyPropertyChanged e deve passare...

posted @ sabato 7 febbraio 2015 12:43 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: Sub New nelle Structure

Gli oggetti Structure, in Visual Basic, rappresentano i tipi valore. Una novità in Visual Basic 2015 riguarda il supporto per il costruttore di istanza senza argomenti. In buona sostanza, è ora invocabile il costruttore senza parametri come quello definito di seguito: Structure MyStruct    Property X As Double    Property Y As Double    Property Z As Double    Public Sub New()        X = 1        Y = 1        Z = 1    End Sub    Public Sub New(x As Double, y As Double, z As Double)        Me.X = x        Me.Y = y        Me.Z = z    End SubEnd Structure A questo punto le possibilità di utilizzo sono le seguenti 3, con i relativi commenti:         'Modo classico: istanzia e valorizza la struttura        Dim struct As New MyStruct(1, 2, 3)        'Modo classico: dichiara una struttura nulla        'e non invoca costruttori        Dim struct1 As MyStruct = Nothing        'Modo nuovo: istanza con valori di default        Dim struct2 As New MyStruct Questa possibilità consente di valorizzare nel modo di default più appropriato l'istanza della struttura. Alessandro

posted @ sabato 7 febbraio 2015 12:30 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: TypeOf..IsNot

Visual Basic 2015 introduce il supporto al costrutto TypeOf..IsNot. In sostanza, la seguente forma è ora accettata:     Sub TestObject(param As Object)        If TypeOf param IsNot String Then            Throw New ArgumentException("value is not a String")        End If    End Sub In precedenza, invece, l'unica consentita era la seguente, con Not TypeOf..Is:     Sub TestObject(param As Object)        If Not TypeOf param Is String Then            Throw New ArgumentException("value is not a String")        End If    End Sub Alessandro

posted @ sabato 7 febbraio 2015 12:23 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: Commenti dopo implicit line continuation

Come sapete, da qualche anno non è più necessario utilizzare il carattere di underscore _ per andare a capo nel codice Visual Basic, quanto meno in una serie di specifici contesti, caratteristica nota come implicit line continuation. Spesso, però, si ha la necessità di scrivere commenti proprio in corrispondenza della implicit line continuation. Nelle precedenti versioni del linguaggio, ciò non era possibile. Ora è invece possibile e consente di commentare blocchi di codice come questo:         Dim query = From proc In Process.GetProcesses 'Ottiene l'elenco dei processi                    Where proc.PriorityClass = ProcessPriorityClass.AboveNormal 'Filtra quelli con priorità alta                    Select proc 'lo aggiunge al risultato In questo modo si può commentare anche ogni singola riga di una query LINQ, cosa impensabile in VB 2012. Molto molto utile. Alessandro

posted @ venerdì 6 febbraio 2015 22:54 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: Multi-line string literals

Visual Basic 2015 introduce una nuova caratteristica tipica dell'editor di codice, nota come multi-line string literals. Questa risolve un'annosa questione relativa alla possibilità di andare a capo scrivendo lunghe stringhe in variabili o oggetti di tipo stringa. Ecco un esempio:         Dim longString = "Questa è una stringamolto lunga, che ha lo scopo didimostrare la nuova funzionalità di VB 2015nota come multiline string literals" Nota bene: la stringa apparirà così come si vede, inclusi i terminatori. Inoltre, non c'è indentazione nell'editor e quindi ogni volta che si va a capo, la riga successiva è praticamente attaccata al bordo dell'editor. Provate a visualizzare la stringa con un banale Console.Writeline per vedere come viene interpretata e utilizzata da .NET. Alessandro

posted @ venerdì 6 febbraio 2015 22:49 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: Year-first date literals

Visual Basic 2015 introduce il supporto per la creazione di oggetti Date ponendo l'anno come primo elemento nei c.d. date literals. In sostanza, la seguente forma è ora accettata:         Dim myDate As Date = #2015/02/06 23:49:22# Alessandro

posted @ venerdì 6 febbraio 2015 22:43 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: Partial modules e Partial interfaces

Dopo aver avuto a disposizione per anni classi e metodi parziali, Visual Basic 2015 estende questa forma anche a moduli e interfacce. Utilizzare definizioni parziali permette di definire uno stesso oggetto su più file di codice, consentendo una migliore organizzazione. Per esempio, è ora possibile definire interfacce parziali in questo modo: Public Interface IPerson    Property FirstName As String    Property LastName As StringEnd InterfacePartial Interface IPerson    ReadOnly Property FullName As StringEnd Interface Implementare la sopra citata interfaccia produce, ovviamente, un risultato completo come il seguente: Class Person    Implements IPerson    Public Property FirstName As String Implements IPerson.FirstName        Get            Throw New NotImplementedException()        End Get        Set(value As String)            Throw New NotImplementedException()        End Set    End Property    Public ReadOnly Property FullName As String Implements IPerson.FullName        Get            Throw New NotImplementedException()        End Get    End Property    Public Property LastName As String Implements IPerson.LastName        Get            Throw New NotImplementedException()        End Get        Set(value As String)            Throw New NotImplementedException()        End Set    End PropertyEnd Class Analogamente, si possono dichiarare moduli parziali: Module Module1    Sub Main()    End SubEnd ModulePartial Module Module1    '...End Module Riconoscendo la keyword Partial, IntelliSense vi aiuterà nella scelta degli oggetti che è possibile estendere. Sicuramente una caratteristica non rivoluzionaria ma certamente utile. Alessandro

posted @ venerdì 6 febbraio 2015 22:39 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Visual Basic 2015: proprietà a sola lettura autoimplementate

Tra le novità nel linguaggio Visual Basic 2015, ci sono le proprietà a sola lettura autoimplementate. Già in VB 2012 avevamo visto le proprietà autoimplementate, che ci consentivano di evitare l'esplicitazione dei metodi Get e Set in questo modo: Class Person    Public Property FirstName As String    Public Property LastName As StringEnd Class Ora in VB 2015 è possibile fare lo stesso con le proprietà a sola lettura. Ecco un esempio: Class Person    Public Property FirstName As String    Public Property LastName As String    Public ReadOnly Property FullName As String    Public Sub New()        Me.FullName = Me.FirstName + " " + Me.LastName    End SubEnd Class L'unico modo per valorizzare una proprietà a sola lettura autoimplementata è assegnarla nel costruttore della classe, oppure inizializzandola in-line. Il compilatore in background predispone un "backing field" implicito, ossia il solito campo privato il cui nome ricalca quello della proprietà ma col carattere underscore _...

posted @ venerdì 6 febbraio 2015 22:33 | Feedback (0) | Filed Under [ Visual Basic Visual Studio 2015 ]

Nuovo evento gratuito su Visual Studio 2015 a Firenze

Visual Basic Tips & Tricks e DotNetToscana hanno organizzato un nuovo evento a partecipazione gratuita per il giorno 28 febbraio 2015 a Firenze. Il focus dell'evento è, ovviamente, Visual Studio 2015 e si parlerà di WPF, Roslyn, MVC 6, Universal App, Visual Studio Online e molto altro. Abbiamo predisposto una pagina con tutti i dettagli sull'agenda, più il link per registrarvi. Vi aspettiamo! Alessandro

posted @ lunedì 2 febbraio 2015 16:26 | Feedback (0) | Filed Under [ Community and friends Visual Studio 2015 ]

Powered by:
Powered By Subtext Powered By ASP.NET