Una comodissima funzionalità presente nel Visual Studio è la possibilità di inserire degli Snippets di codice in maniera veloce e intuitiva. Gli snippets di codice sono dei blocchi di codice che possono essere ripetuti con uno schema fisso, e che è sempre noioso per un programmatore riscrivere. Supponiamo di voler scrivere una classe con diverse variabili private e rispettive property get e set: in pratica per ogni variabile dobbiamo scrivere la relativa property, oppure andare di copia incolla dopo aver scritto la prima variabile e cambiare i nomi alle variabili successive.

Scrivere una property utilizzando gli snippet è invece immediato, la procedura che descrivo qui di seguito è composta da sette immagini perchè sono uno sborone per natura :P, ma in realtà si esegue nel giro di un secondo e mezzo. :)
Per iniziare scriviamo prop nel punto del codice dove volete creare la vostra Property, che è la parola chiave che identifica questo Snippet di codice:

snippet property 1

A questo punto bisogna premere tab due volte di seguito (basta soltanto una tabbata se non avete fatto comparire l’Intellisense):

snippet property 2

Magicamente lo stub della nostra Property con relativo campo privato viene creata!! Ma la potenza degli snippets non finisce qui, perchè ci permette di cambiare al volo tutti i parametri che identificano il nostro pezzo di codice. Scriviamo il tipo di variabile a cui vogliamo che appartenga la nostra variabile, per es. bool

snippet property 3

Tabbiamo nuovamente per spostarci al prossimo campo.

snippet property 4

Notare come il tipo di variabile viene aggiornato al volo anche nella definizione della Property.

Scriviamo il nome della variabile privata

snippet property 5

Un altro colpo di Tab e scriviamo il nome della Property:

snippet property 6

E infine un colpo di invio per completare il tutto! :)
snippet property 7

Inutile dire che imparando a usare gli snippets inizierete a programmare ad una velocità ancora maggiore :)


Se sei interessato a questo post, potresti anche provare a leggere:

    No related posts