Visual Studio Code

Nei giorni scorsi si è svolta a San Francisco la più importante conferenza Microsoft dell’anno: //build/. Tante sono state le novità, tra cui un nuovo editor di sviluppo della famiglia di Visual Studio, il cui nome è Visual Studio Code. Questo editor, che è stato rilasciato attualmente in preview, consente la creazione di progetti orientati al cloud e al web ed è cross-platform: supporta infatti Windows, Linux e OSX. Il motivo principale che ha portato la nascita di questo IDE è stata la volontà di mettere a disposizione degli sviluppatori un ambiente leggero e di semplice utilizzo che aiuti a creare applicazioni che coinvolgono diverse tecnologie tra cui: ASP.NET, Node.js, HTML, CSS, LESS, SASS e JSON. E’ interessante sapere che questo IDE nasce come customizzazione di un editor già esistente chiamato Electron, che è stato utilizzato dietro le quinte anche da Visual Studio “Monaco” (il famoso editor online di Visual Studio). Inoltre, la presenza come il debugger, l’intellisense o l’integrazione con git, lo rendono un ambiente davvero attraente per il front-end developer. Il primo passo da fare per usare Visual Studio Code è quello di scaricare il pacchetto appropriato per il proprio sistema operativo da https://code.visualstudio.com/Download e installarlo sulla propria macchina (figura 1):

Figura 1 – Le diverse piattaforme supportate da Visual Studio Code

Inoltre, possiamo scegliere di installare oltre al pacchetto base, a seconda del nostro sistema operativo o di ciò che abbiamo già installato sullo stesso, una serie di tool aggiuntivi che ci aiuteranno nella realizzazione delle nostre applicazioni:

  • NET 5;
  • NodeJS (incudes NPM);
  • git: (command line tools);
  • Yeoman: un tool per fare lo scaffolding di applicazioni, ovvero genera per noi la struttura di un progetto;
  • generator-aspnet: generatore di yeoman per ASP.NET 5;
  • hottowel: un generatore di yeoman per applicazioni che usano AngularJS;
  • Express: un application framework per Node;
  • gulp: un task runner system;
  • mocha: un JavaScript test framework per Node;
  • bower: un client side package manager;
  • TypeScript: un framework tipizzato per estendere Javascript;
  • TypeScript definition manager: un repository di definition file da usare con Typescript.

Al termine dell’installazione possiamo aprire l’editor per cominciare ad usarlo (figura 2):

Figura 2 – Visual Studio Code

L’IDE si presenta in questo modo: un menù principale (File, Edit…), un menù laterale con quattro pulsanti (Explore, Search, Git, Debug), al centro l’area di editing (in cui si possono affiancare fino a tre finestre) e in basso una barra di stato. Inoltre abbiamo una command palette che ci consente di eseguire comandi all’interno dell’ambiente in maniera rapida (figura 3).

Figura 3 – La command palette

Il primo aspetto interessante di Visual Studio Code riguarda il suo funzionamento: infatti si tratta di un editor file e folder based, che significa che basterà puntare ad una cartella o ad un file e non ad un file di progetto per iniziare a lavorare. Inoltre l’editor è in grado di riconoscere qualsiasi tecnologia supportata nel momento in cui viene aperta una cartella leggendo il suo contenuto. Per impostare invece una nuova cartella di lavoro, si può cliccare sul primo pulsante sul menù laterale (Explore), che apre una sezione che ci consente di visualizzare, aprire o aggiungere dei file presenti alla cartella selezionata (figura 4). In questa sezione, troviamo 2 sottosezioni, ovvero “Working Files”, dove troviamo i file aperti per la modifica, e “No Folder Loaded” (il cui nome cambierà a seconda della cartella in cui stiamo lavorando).

Figura 4 – Scelta della cartella di lavoro

Dopo aver cliccato su “Open folder”, siamo pronti per selezionare una cartella che rappresenterà il nostro workspace. Al suo interno possiamo aggiungere file usando i pulsanti accanto il nome della nostra cartella (figura 5):

Figura 5 – I pulsanti di gestione dell’attuale workspace

Supponendo di aver creato un file HTML, possiamo utilizzare il browser per visualizzarne il risultato (figura 6).

Figura 6 – Un esempio di applicazione in Visual Studio Code

Questa è per il momento solo una piccola introduzione su Visual Studio Code. Nei prossimi post entreremo in dettaglio sulle funzionalità di questo nuovo editor, come realizzazione di applicazioni ASP.NET e Node.js, supporto a Git, Debugging e configurazione.

0  

VS 2015–Novità sul debugging

Nel recente evento Connect() di Microsoft è stato rilasciato in preview Visual Studio 2015. Questa nuova versione di Visual Studio introduce tante novità per noi sviluppatori, tra cui quelle legate al debugging. Questo post ha l’intento di mostrarvi come sfruttare al meglio queste nuove feature.

Partiamo dalla prima novità: l’interfaccia grafica. Infatti, in Visual Studio 2015, quando creiamo un nuovo punto di interruzione (o passiamo sopra uno già esistente), compare un menù contestuale con 2 icone che ci consentono o di aprire il menù delle impostazioni del debugger o abilitare/disabilitare il punto di interruzione (figura 1).

 

1

Figura 1

Nel caso in cui selezioniamo il pulsante delle impostazioni, viene aperta una finestra nell’editor che ci mostra 2 cose: conditions e actions (figura 2).

Le conditions ci consentono di stabilire in base ad una o più condizioni quando l’esecuzione del codice si deve fermare in corrispondenza del punto di interruzione (figura 3). Le tipologie di condizioni che possiamo applicare ad un punto di interruzione sono 3:

  • Conditional Expression, che consente di verificare una condizione su una variabile, proprietà o oggetto nel codice;
  • Hit Count, che consente di indicare il numero di volte che il codice in corrispondenza del breakpoint deve essere eseguito prima che Visual Studio fermi l’esecuzione
  • Filter, che aiuta a debuggare codice che viene eseguito in parallelo (ad esempio è possibile specificare l’id o il nome del thread).

 

2

Figura 2

Le actions invece consentono (per il momento!) di stampare un messaggio nella finestra di Output con la possibilità di inserire sia il valore di variabili presenti nel contesto tramite le parentesi graffe, che di poter utilizzare delle variabili preimpostate precedute dal carattere $ (dollaro). In tale contesto, è anche possibile impostare se l’esecuzione del codice si deve fermare oppure no (Continue execution).

 

3

Figura 3

 

Alcune novità ci sono anche nel menù contestuale associato al punto di interruzione, infatti adesso contiene solo i collegamenti ad alcune opzioni essenziali come in figura 4 (visto che le altre sono state spostate nella piccola popup della figura 1):

 

4

Figura 4

Una delle grandi novità di Visual Studio 2015 è la possibilità di eseguire le lambda expression nell’Immediate window o nella Watch window. Questa è una feature che è stata richiesta tantissimo e che farà felice tanti sviluppatori. Nella seguente figura (5), si può vedere un esempio di utilizzo:

 

5

Figura 5

 

Ultima novità di questo post sono i performance tips: si tratta di informazioni visualizzate durante il debugging che mostrano il tempo di esecuzione e il tempo di CPU legato all’istruzione eseguita (figura 6). E’ inoltre possibile accedere alle opzioni per questi ultimi cliccando su di essi (figura 7).

 

6

Figura 6

7

Figura 7

 

Non vi resta che scaricare la preview di Visual Studio 2015 da qui e iniziarla ad usare!

0  

Sorgenti del .Net Framework in Visual Studio e oltre…

Avete mai avuto voglia di navigare facilmente nei sorgenti del .Net Framework senza usare diversi programmi o escamotage?

Per chi non lo sapesse, da qualche mese a questa parte è stato pubblicato il portale Reference Source che vi consente di navigare agevolmente all’interno dei sorgenti .Net Framework in maniera molto simile all’object browser di Visual Studio. La cosa interessante, è che è anche possibile scaricare i sorgenti in un pacchetto .zip e navigarlo all’interno di una soluzione.

Ma le novità non finiscono qui! Infatti tramite l’estensione Ref12 potete usare il tasto F12 per navigare direttamente da Visual Studio su Reference Source e visualizzare i sorgenti interessati. Bello, no?

E se volessi debuggare il mio codice e quello del .Net Framework? Beh, per quello potete seguire questo utile post che vi spiega come fare: Allow developers to step through .NET Framework sources

 

Vi lascio con un video riepilogativo delle funzionalità esposte dal portale:

 

 

 

Enjoy it!

0  

VS ‘14’ CTP disponibile su Azure

Volete provare VS ‘14’ CTP? Avete un account Azure associato ad una MSDN Subscription o Bizspark? Se si, allora potete andare sul vostro portale e creare una nuova VM con VS ‘14’ CTP già preinstallato per testarne le nuove funzionalità. In circa 10 minuti siete pronti per esplorare le nuove features di Visual Studio.

1

2

 

Non avete una MSDN Subscription o Bizspark? Beh, potete sempre crearvi una VM sul proprio pc e installare la CTP (in sostanza non avete scuse!)

Maggiori info sui benefits di Windows Azure e MSDN Subscription: http://azure.microsoft.com/en-us/pricing/member-offers/msdn-benefits-b/

 

Keep Calm and Use Visual Studio…14!

0  

Visual Studio ‘14’ CTP

Dopo tanta attesa è stata resa disponibile da qualche giorno la nuova versione Visual Studio ‘14’ in CTP.

Questa release è una community preview che ha l’obiettivo di essere testata dalla community e di ricevere i primi feedback sul suo funzionamento. E’ disponibile per il download qui: http://support.microsoft.com/kb/2967191

Parecchie le novità presenti in questa nuova versione. La principale è il nuovo il compiler per C# e VB.Net, il famoso Roslyn, compilatore open source disponibile da qualche anno su Codeplex (http://roslyn.codeplex.com/). Questo compilatore è ormai presente dietro le quinte in tante features di Visual Studio.

Una delle novità più importanti riguarda anche ASP.NET con la sua vNext. Abbiamo a disposizione alcuni template in Visual Studio specifici per vNext che ci consento di realizzare sia applicazioni destinate ad ambienti server “classici” che applicazioni per il cloud.

clip_image002[1]

Questi progetti hanno alcune differenze rispetto a quelli a cui siamo abituati dal punto di vista dei file contenuti. Includono infatti:

  • Un file di progetto con estensione .kproj (e non il solito .csproj)
  • La presenza di un file project.json che contiene informazioni riguardanti il progetto (tra cui le dipendenze ed ha anche supporto all’intellisense)

clip_image011[1]

  • Un file .sln.ide che è usato da Roslyn per i file temporanei e può essere esclusa dal source control di TFS o altri

E’ inoltre presente una nuova alberatura per le references in Visual Studio, dove si possono espandere per verificare le relative dipendenze:

clip_image007

Ecco invece altre feature interessanti:

  • Grazie a Roslyn, quando modifichiamo un file .cs non abbiamo bisogno di fare la rebuild del progetto
  • Tutti i file presenti nella cartella del progetto sono automaticamente inclusi nel progetto in VS (escludendo bin e obj)
  • Nuove feature per il refactoring
  • Restore automatico dei pacchetti Nuget quando modifichiamo il project.json
  • Publish integrato con Azure e file system

Potete conoscere e provare alcune novità relative ad ASP.NET vNext seguendo questa guida: http://www.asp.net/vnext/overview/aspnet-vnext/getting-started-with-aspnet-vnext-and-visual-studio

Non vi resta che scaricare e provare queste bellissime features e di inviare feedback se incontrate problemi. Sebbene sia possibile, è vivamente sconsigliato di installare VS ‘14’ in una macchina in cui siano presenti altre versioni di Visual Studio, conviene quindi usare una macchina virtuale.

Keep Calm and Use Visual Studio…14!

0  

Load-Balance Virtual Machine in Windows Azure (parte II)

Nel precedente articolo abbiamo visto come creare e configurare un Load Balancer associato a 2 macchine virtuali su Windows Azure. In questo articoli, affrontiamo il problema di come gestire i due nodi (le due VM).

Il primo passo che facciamo sulle due VM è abilitare il ruolo di IIS. Possiamo effettuare questa installazione connettendoci in remote desktop sulle macchine virtuali.

Connettersi in remote desktop sulla VM

All’interno della dashboard della prima VM, nel pannello di amministrazione di Windows Azure, è possibile scaricare un file con estensione .rdp già pronto per la connessione.

1

Sebbene questa feature sia utilissima, nel momento in cui si devono gestire una moltitudine di VM su Azure (o anche on-premise), può tornare sicuramente utile il Remote Desktop Connection Manager, di cui ho già parlato in un precedente TuriTip.

L’unica attenzione che occorre fare è verificare la porta associata ad ogni VM per la connessione RDP. Questa informazione può essere recuperata dalla sezione Endpoints all’interno della dashboard della VM su portale di gestione di Windows Azure.

Una volta entrati sulla macchina virtuale, dal server manager basterà selezionare “Manage” e poi “Add Roles and Features” e procedere come al solito con l’abilitazione di IIS con le sue opzioni.

2

Occorre poi effettuare la stessa operazione anche sulla seconda macchina virtuale.

Una volta terminate le installazioni siamo pronti per verificare il corretto funzionamento del Load Balancer.

Per tale motivo, apriamo la console di amministrazione di IIS e modifichiamo l’HTML della pagina iniziale del server (Default Web Site\iisstart.htm) in modo da mostrare il nodo che ci ha risposto aggiungendo subito dopo il tag di apertura del body:

   1: <p>Nome Nodo</p>

Infine, apriamo il browser sulla nostra macchina (non le VM!), digitiamo nella barra dell’indirizzo l’url legata al nostro cloud service (*.cloudapp.net) e refreshiamo la pagina con F5 fintanto che non abbiamo almeno una risposta da entrambi i nodi.

In questo modo ci siamo accertati del corretto funzionamento del Load Balancer.

 

Happy load balancing!

0  

Load-Balance Virtual Machine in Windows Azure (parte I)

In questa serie di articoli vedremo:

  • Come configurare un Load Balancer per due macchine virtuali su Windows Azure (prima parte);
  • Verificare il corretto funzionamento del Load Balancer.

I requisiti necessari per la realizzazione di queste procedure richiedono una sottoscrizione a Windows Azure attiva.

Creazione della prima macchina virtuale

Per creare una nuova macchina virtuale occorre entrare nel pannello di amministrazione di Windows Azure relativo al proprio account ed accedere alla sezione Virtual Machine. Da qui si può creare una nuova macchina virtuale seguendo il wizard in basso sulla sinistra: New –> Virtual Machine  -> From Gallery.

Dalla finestra che compare selezionare Windows Server 2012 R2 Datacenter.

Una volta avviata la procedura di creazione della VM, nella prima finestra di configurazione della macchina virtuale, occorre impostare un nome alla macchina virtuale (per identificarle successivamente ho usato un nome con il suffisso “nomevm01”) e le credenziali necessarie per l’accesso.

1

Nella seconda schermata occorre creare un Servizio Cloud assegnandogli un nome. Questo dovrà essere lo stesso per tutte le VM accessibili dallo stesso Load Balancer. Occorre inoltre impostare un set di disponibilità con un relativo nome e l’endpoint HTTP a quelli già presenti.

2

Le altre impostazioni possono essere lasciate con i valori di default (anche quelle dello step successivo). Una volta confermata la procedura comincia il provisioning della VM.

 

Creazione della seconda macchina virtuale

La creazione della seconda macchina virtuale è simile agli step effettuati per la prima. L’unica differenza è la necessità di selezionare il Cloud Service e il set di disponibilità già creato per la prima VM. Per il momento non è necessario aggiungere l’endpoint HTTP.

3

Anche in questo caso occorre terminare il wizard lasciando le impostazioni di default. Al termine della fase di provisioning, nella sezione della macchine virtuali del portale di Azure troviamo una situazione simile

4

Se si vuole verificare quali siano tutte le VM collegate ad un Cloud Service, possiamo andare nella relativa pagina del portale di Windows Azure e selezionare sulla voce “Instances”:

5

Creazione del Load Balancer

Una volta che le due VM sono state provisionate, occorre creare il Load Balancer. Questo può essere creato nella pagina di configurazione della prima macchina virtuale nella sezione “Endpoints”. Da qui selezionare HTTP e poi “Edit” in basso

6

Nella finestra che compare, mettere il segno di spunta alla voce “Create a load-balanced set”.

Nel secodo step di questo wizard scegliere il nome per il Load Balancer e lasciare le impostazioni di default per le altre opzioni:

7

Una volta confermate queste impostazioni, occorre configurare la seconda VM. Sempre nella sezione “Endpoints” bisogna aggiungere un endpoint per il protocollo HTTP e selezionare il Load Balancer appena creato

8

Nella seconda schermata scegliere “HTTP” come nome dell’Endpoint e salvare.

A questo punto abbiamo creato e configurato due macchine virtuali su Windows Azure che usano lo stesso Load Balancer. Nel prossimo articolo vediamo come verificarne il corretto funzionamento.

0  

Goodbay Java Popup in SQL Developer

Finally, Windows user could say goodbay to the frustating popup asking for Java bin folder.

You can read more here: http://www.thatjeffsmith.com/archive/2013/12/oracle-sql-developer-4-windows-and-the-jdk/

0  

SQL Developer 4

Today a new version of Oracle SQL Developer 4 is released.

You can download it here: http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html

A great overview about new features can be read here: http://www.thatjeffsmith.com/archive/2013/12/oracle-sql-developer-v4-is-live-top-10-reasons-to-upgrade-today/

0  

Oracle SQL Developer Data Modeler 4

By today, Oracle SQL Developer Data Modeler 4 is available.

You can download it here: http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html

About new features, you can read Jeff Smith’s post here: http://www.thatjeffsmith.com/archive/2013/12/oracle-sql-developer-data-modeler-v4-0-is-now-available/

0