SlideShare a Scribd company logo
VS11 - SVILUPPARE APPLICAZIONI WEB
(COMPLETAMENTE) ON-LINE CON VISUAL
STUDIO ONLINE "MONACO"

Marco Parenzan
Pordenone

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Grazie a
Sponsor

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Marco Parenzan
•

Formazione & Divulgazione con 1nn0va

•

Ricerca e Innovazione con Servizi Cgn









@marco_parenzan
it.linkedin.com/in/marcoparenzan
www.facebook.com/parenzan.marco
www.marcoparenzan.it
www.slideshare.net/marco.parenzan
github.com/marcoparenzan
www.innovazionefvg.net
marco [dot] parenzan [at] libero/live [dot] it

•

Developer e Architect in .NET e Web

•

(Tentative of) Cloud Developer

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

http://bit.ly/regazurebcit2014
Windows Azure
•

Piattaforma di Cloud Computing di Microsoft

•

È la controparte pubblica della visione «Cloud OS»

•

Tutti i servizi online di Microsoft sono (o saranno) su Windows Azure

•

Quindi anche Visual Studio Online

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Visual Studio Online
•

(aka Team Foundation Services)

•

Spostare parte della nostra quotidianità di sviluppatori online





Team Management
Source Code Management
Build Tasks
Bug Tracking

•

E riguardo la scrittura del codice?

•

Se Office 365 sta a Office Online (aka Office Web Apps) e Office (2013
on Premise), cosa sta tra Visual Studio Online e Visual Studio (2013 on
Premise)?

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Visual Studio Online «Monaco»
•

È il progetto (ancora agli inizi, ma molto promettenti) di un ambiente di sviluppo Web-Based

•

Come spesso succede, Microsoft non è la prima






Cloud9
Codeanywhere
Cloud IDE
Codenvy
…

•

Ciò che è esclusivo sono la pervasività ed uniformità , in stile Microsoft

•

In Microsoft ci lavora il team di Erich Gamma

•

Ci sono «pezzi di Monaco» in diverse applicazioni web:

 Uno dei personaggi storici della «Gang of Four»
 Entrato in Microsoft nel 2011






http://www.typescriptlang.org/Playground/
OneDrive (quando i files memorizzati hanno estensione .html, .js e soprattutto .css)
Mobile Services in Windows Azure
Source Code Management in VSO
App for Office by using "Napa" Office 365 Development Tools

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
TypeScript

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

http://www.typescriptlang.org/Playground/
OneDrive

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Mobile Services in Windows Azure

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Source Code Management in VSO

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
App for Office by using "Napa"
Office 365 Development Tools

http://blogs.msdn.com/b/officeapps/archive/2013/08/27/use-napa-office-365-development-toolsto-build-apps-for-office-and-sharepoint-on-the-browser.aspx
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Dal Windows Azure Training Kit

Attualmente unica esperienza IDE per «Monaco»
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Abilitare «Monaco» nei Web Sites

Entra
Abilita
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Agenda
•

L’IDE di «Monaco»

•

Rich Editing Experience

•

Controllo del Codice Sorgente

•

Controllare tutto dalla Console

•

Scrivere Codice

•

Conclusioni

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
L’IDE di «Monaco»
NavBar
ToolBar

Activity Bar

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
L’IDE di «Monaco» [2]

Web Site
Menu

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
L’IDE di «Monaco» [3]

Configurazione
IDE

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
VS11 - SVILUPPARE APPLICAZIONI
WEB (COMPLETAMENTE) ON-LINE
CON VISUAL STUDIO ONLINE
"MONACO"
Controllo del Codice Sorgente

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Git
•

Un progetto software non si
gestisce senza controllo di codice
sorgente

•

Git è lo standard nel mondo open

•

Attualmente è l’unico protocollo
supportato in «Monaco» (a
differenza dei W/S)

•

Git si sposa con gli standard
espressi da «Monaco» e gli Azure
W/S

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Comparazione dei files
•

Permette di comparare i files tra
versione in linea e branch in Git

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
VS11 - SVILUPPARE APPLICAZIONI
WEB (COMPLETAMENTE) ON-LINE
CON VISUAL STUDIO ONLINE
"MONACO"
Rich Editing Experience

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Tutti i comandi (F1)

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Apertura Rapida (CTRL+E)
•

Quick Open (CTRL+E)

CTRL+E

Apri recente (CTRL+Q)

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Vai alla riga (CTRL+G)

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Trova il simbolo (CTRL+SHIFT+O)
Quick Open + «@»

Raggruppato per tipologia
Quick Open + «@:»

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Cerca (CTRL+F) Sostituisci (CTRL+H)
CTRL+F/H

Find all references

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Cerca
Cerca

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Autocomplete (CTRL+spazio)

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Snippet di codice (decisors)
Snippet (Template)

Decisors

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Incrementa valori numerici (CTRL+↑)

CTRL+↑

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Markdown
Snippet (Template)

Decisors

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Open to the Side + markdown preview

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Altre caratteristiche dell’editor
•

AutoSave

•

Format Code

•

Upload from menu and Drag & Drop

•

iPad Keyboard

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
VS11 - SVILUPPARE APPLICAZIONI
WEB (COMPLETAMENTE) ON-LINE
CON VISUAL STUDIO ONLINE
"MONACO"
Controllare tutto dalla Console

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Console
•

Tutti i comandi di elaborazione (compilazione, generazione) vengono
dati da riga di comando

•

Alcuni comandi:










Md/mkdir, rd/rmdir, per la creazione delle cartelle
Dir, cd, per navigare tra le cartelle
Touch, open, per gestire i files
Nuget, per scaricare packages da nuget.org
Git, per interagire con il CVS
Npm, per installare comandi da eseguire in ambiente node.js
Unzip per decomprimere files zip
Ps, per eseguire script Poweshell
cUrl,per poter interagire via http con altri siti Web

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Navigare tra le cartelle
•

È possibile avere una visuale console del
progetto Web

•

Si vede il file system con i contenuti di
files e cartelle

•

È possibile crere una cartella
md Content

•

È possibile spostarsi in una cartella
cd Content

•

È possibile creare un file
touch main.less

•

È possibile aprire un file
open main.less

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Npm in Console
•

Node.js è pervasivo in Azure Web Sites e Monaco

•

È un pilastro del Javascript Full Stack
(http://coding.smashingmagazine.com/2013/11/21/introduction-to-fullstack-javascript/)

•

Molti dei comandi da usare sono packages di Node
 node-sass=npm install node-sass
 Editor & intellisense experience

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Se si usa un task runner come ad esempio «grunt», la console viene
«bloccata» ed impedirebbe l’esecuzione di altri comandi

•

È possibile creare più console, una per lanciare grunt e una per
lanciare i comandi ordinari

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

Nuova Console

•

Selettore Console

Console Multiple
nuget
•

Nuget è disponibile a riga di comando

•

È possibile scaricare i files da nuget.org (o

•

Problemi:
 La carella Content non si copia in radice del progetto (probabilmente perché
siamo in un Web Site….)
 Il file install.ps1 non si esegue…

•

Devo spostare i file a mano…

•

…ma spero in questi giorni di chiarirmi le idee qui in Microsoft….

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Less & Sass
•

LESS & SASS sono disponibili come
editor

•

SASS si scarica come package Node
 Web Sites non supportano Ruby
[supportabile solo con IaaS]

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
VS11 - SVILUPPARE APPLICAZIONI
WEB (COMPLETAMENTE) ON-LINE
CON VISUAL STUDIO ONLINE
"MONACO"
Scrivere Codice

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Supported Web Frameworks

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
One ASP.NET
•

È possibile sviluppare qualsiasi applicazione ASP.NET

•

L’ambiente non è maturo…manca l’intellisense e tutto l’aiuto cui siamo
abituati in Visual Studio

•

…ma è solo una questione di risorse e di tempo

•

Si impara a gestire un .csproj come xml…ed è la cosa più importante

•

msbuild
 La compilazione .NET parte da qui
 Si impara a scrivere file .csproj
 Integrato con il nuovo Build System di Visual Studio Online

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Node.js e TypeScript (e Javascript!)
•

TypeScript
 Una particolarità (ma nemmeno tanto): «Monaco» è scritto in Typescript
 Editor & intellisense (best!) experience
 Typescript è un package node (di nuovo: npm install typescript)

•

Node.js
 Il nuovo compagno per lo sviluppatore Web
 Un modello server side
 Tanti nuovi comandi per la console

•

Insieme permettono di avere implementare il Javascript Full-Stack

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
VS11 - SVILUPPARE APPLICAZIONI
WEB (COMPLETAMENTE) ON-LINE
CON VISUAL STUDIO ONLINE
"MONACO"
Conclusioni

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Conclusioni
•

Ambiente molto promettente

•

Non siamo in un ambiente .NET-centrico

•

Decisamente utile per





Prototyping
Interventi rapidi
Training
Javascript Fullstack

•

Da verificare per progetti di classe enterprise (ripeto: è una questione di
tempo)

•

Abbiamo capito che è già diventato pervasivo nelle soluzioni Microsoft

•

La community deve crescere

•

Mi aspetto (come per Napa) avere un IDE «Monaco» indipendente dal
Windows Azure (per quel che può avere senso)

#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Q&A
Tutto il materiale di questa sessione su

http://www.communitydays.it/
Lascia il feedback su questa sessione,
potrai essere estratto per i nostri premi!
Seguici su
Twitter @CommunityDaysIT
Facebook http://facebook.com/cdaysit
#CDays14

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

More Related Content

Similar to Sviluppare applicazioni web (completamente) on-line con Visual Studio Online "Monaco"

Vs04 - DevOps: Continuous Deployment con Windows Azure
Vs04 - DevOps: Continuous Deployment con Windows AzureVs04 - DevOps: Continuous Deployment con Windows Azure
Vs04 - DevOps: Continuous Deployment con Windows Azure
Antonio Liccardi
 
Code quality e test automatizzati con JavaScript
Code quality e test automatizzati con JavaScriptCode quality e test automatizzati con JavaScript
Code quality e test automatizzati con JavaScript
Roberto Messora
 
Single Page web Application
Single Page web ApplicationSingle Page web Application
Single Page web Application
Roberto Messora
 
Mobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con XamarinMobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con Xamarin
Nicolò Carandini
 
Community Days 2015 Introduzione a Xamarin
Community Days 2015  Introduzione a XamarinCommunity Days 2015  Introduzione a Xamarin
Community Days 2015 Introduzione a Xamarin
Dan Ardelean
 
CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo AzureCDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
Davide Benvegnù
 
Xamarin Robotics
Xamarin RoboticsXamarin Robotics
Xamarin Robotics
Fabio Cozzolino
 
Cmdays mxm ugc
Cmdays mxm ugcCmdays mxm ugc
Cmdays mxm ugc
Lorenzo Glielmi
 
Musixmatch Cloud: Microsoft Azure Media Services and UGC Content
Musixmatch Cloud: Microsoft Azure Media Services and UGC ContentMusixmatch Cloud: Microsoft Azure Media Services and UGC Content
Musixmatch Cloud: Microsoft Azure Media Services and UGC Content
Loreto Parisi
 
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Davide Benvegnù
 
Javascript Unit Testing
Javascript Unit TestingJavascript Unit Testing
Javascript Unit Testing
Roberto Messora
 
Sviluppare app per iOS e Android con Xamarin e Visual Studio
Sviluppare app per iOS e Android con Xamarin e Visual StudioSviluppare app per iOS e Android con Xamarin e Visual Studio
Sviluppare app per iOS e Android con Xamarin e Visual Studio
Nicolò Carandini
 
Azure Machine Learning (Italian)
Azure Machine Learning (Italian)Azure Machine Learning (Italian)
Azure Machine Learning (Italian)
Davide Mauri
 
CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...
CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...
CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...
Gianluca Carucci
 
Da JavaScript a TypeScript
Da JavaScript a TypeScriptDa JavaScript a TypeScript
Da JavaScript a TypeScript
Roberto Messora
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
Davide Benvegnù
 
TFS - Quale source control
TFS - Quale source controlTFS - Quale source control
TFS - Quale source control
Gian Maria Ricci
 
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
Alessandro Alpi
 
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
Andrea Dottor
 
VS13 - Approval Tests: cosa, come, quando, perché? @ CDays
VS13 - Approval Tests: cosa, come, quando, perché? @ CDaysVS13 - Approval Tests: cosa, come, quando, perché? @ CDays
VS13 - Approval Tests: cosa, come, quando, perché? @ CDays
Matteo Baglini
 

Similar to Sviluppare applicazioni web (completamente) on-line con Visual Studio Online "Monaco" (20)

Vs04 - DevOps: Continuous Deployment con Windows Azure
Vs04 - DevOps: Continuous Deployment con Windows AzureVs04 - DevOps: Continuous Deployment con Windows Azure
Vs04 - DevOps: Continuous Deployment con Windows Azure
 
Code quality e test automatizzati con JavaScript
Code quality e test automatizzati con JavaScriptCode quality e test automatizzati con JavaScript
Code quality e test automatizzati con JavaScript
 
Single Page web Application
Single Page web ApplicationSingle Page web Application
Single Page web Application
 
Mobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con XamarinMobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con Xamarin
 
Community Days 2015 Introduzione a Xamarin
Community Days 2015  Introduzione a XamarinCommunity Days 2015  Introduzione a Xamarin
Community Days 2015 Introduzione a Xamarin
 
CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo AzureCDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
CDays15 - AZ08 - DocumentDB: il NoSql secondo Azure
 
Xamarin Robotics
Xamarin RoboticsXamarin Robotics
Xamarin Robotics
 
Cmdays mxm ugc
Cmdays mxm ugcCmdays mxm ugc
Cmdays mxm ugc
 
Musixmatch Cloud: Microsoft Azure Media Services and UGC Content
Musixmatch Cloud: Microsoft Azure Media Services and UGC ContentMusixmatch Cloud: Microsoft Azure Media Services and UGC Content
Musixmatch Cloud: Microsoft Azure Media Services and UGC Content
 
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
Real Solutions Day - Progetto e gestione del lavoro: ALM in breve con Visual ...
 
Javascript Unit Testing
Javascript Unit TestingJavascript Unit Testing
Javascript Unit Testing
 
Sviluppare app per iOS e Android con Xamarin e Visual Studio
Sviluppare app per iOS e Android con Xamarin e Visual StudioSviluppare app per iOS e Android con Xamarin e Visual Studio
Sviluppare app per iOS e Android con Xamarin e Visual Studio
 
Azure Machine Learning (Italian)
Azure Machine Learning (Italian)Azure Machine Learning (Italian)
Azure Machine Learning (Italian)
 
CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...
CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...
CommunityDays 2015 - NPM, GRUNT E BOWER: IL NUOVO PACKAGE MANAGER DI VISUAL S...
 
Da JavaScript a TypeScript
Da JavaScript a TypeScriptDa JavaScript a TypeScript
Da JavaScript a TypeScript
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
 
TFS - Quale source control
TFS - Quale source controlTFS - Quale source control
TFS - Quale source control
 
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source control
 
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
 
VS13 - Approval Tests: cosa, come, quando, perché? @ CDays
VS13 - Approval Tests: cosa, come, quando, perché? @ CDaysVS13 - Approval Tests: cosa, come, quando, perché? @ CDays
VS13 - Approval Tests: cosa, come, quando, perché? @ CDays
 

More from Marco Parenzan

Azure IoT Central per lo SCADA engineer
Azure IoT Central per lo SCADA engineerAzure IoT Central per lo SCADA engineer
Azure IoT Central per lo SCADA engineer
Marco Parenzan
 
Azure Hybrid @ Home
Azure Hybrid @ HomeAzure Hybrid @ Home
Azure Hybrid @ Home
Marco Parenzan
 
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptxStatic abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
Marco Parenzan
 
Azure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT SolutionsAzure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT Solutions
Marco Parenzan
 
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
Marco Parenzan
 
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT CentralPower BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
Marco Parenzan
 
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT CentralPower BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
Marco Parenzan
 
Developing Actors in Azure with .net
Developing Actors in Azure with .netDeveloping Actors in Azure with .net
Developing Actors in Azure with .net
Marco Parenzan
 
Math with .NET for you and Azure
Math with .NET for you and AzureMath with .NET for you and Azure
Math with .NET for you and Azure
Marco Parenzan
 
Power BI data flow and Azure IoT Central
Power BI data flow and Azure IoT CentralPower BI data flow and Azure IoT Central
Power BI data flow and Azure IoT Central
Marco Parenzan
 
.net for fun: write a Christmas videogame
.net for fun: write a Christmas videogame.net for fun: write a Christmas videogame
.net for fun: write a Christmas videogame
Marco Parenzan
 
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...
Marco Parenzan
 
Anomaly Detection with Azure and .NET
Anomaly Detection with Azure and .NETAnomaly Detection with Azure and .NET
Anomaly Detection with Azure and .NET
Marco Parenzan
 
Deploy Microsoft Azure Data Solutions
Deploy Microsoft Azure Data SolutionsDeploy Microsoft Azure Data Solutions
Deploy Microsoft Azure Data Solutions
Marco Parenzan
 
Deep Dive Time Series Anomaly Detection in Azure with dotnet
Deep Dive Time Series Anomaly Detection in Azure with dotnetDeep Dive Time Series Anomaly Detection in Azure with dotnet
Deep Dive Time Series Anomaly Detection in Azure with dotnet
Marco Parenzan
 
Azure IoT Central
Azure IoT CentralAzure IoT Central
Azure IoT Central
Marco Parenzan
 
Anomaly Detection with Azure and .net
Anomaly Detection with Azure and .netAnomaly Detection with Azure and .net
Anomaly Detection with Azure and .net
Marco Parenzan
 
Code Generation for Azure with .net
Code Generation for Azure with .netCode Generation for Azure with .net
Code Generation for Azure with .net
Marco Parenzan
 
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magicRunning Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Marco Parenzan
 
Time Series Anomaly Detection with Azure and .NETT
Time Series Anomaly Detection with Azure and .NETTTime Series Anomaly Detection with Azure and .NETT
Time Series Anomaly Detection with Azure and .NETT
Marco Parenzan
 

More from Marco Parenzan (20)

Azure IoT Central per lo SCADA engineer
Azure IoT Central per lo SCADA engineerAzure IoT Central per lo SCADA engineer
Azure IoT Central per lo SCADA engineer
 
Azure Hybrid @ Home
Azure Hybrid @ HomeAzure Hybrid @ Home
Azure Hybrid @ Home
 
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptxStatic abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
 
Azure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT SolutionsAzure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT Solutions
 
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
 
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT CentralPower BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
 
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT CentralPower BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
 
Developing Actors in Azure with .net
Developing Actors in Azure with .netDeveloping Actors in Azure with .net
Developing Actors in Azure with .net
 
Math with .NET for you and Azure
Math with .NET for you and AzureMath with .NET for you and Azure
Math with .NET for you and Azure
 
Power BI data flow and Azure IoT Central
Power BI data flow and Azure IoT CentralPower BI data flow and Azure IoT Central
Power BI data flow and Azure IoT Central
 
.net for fun: write a Christmas videogame
.net for fun: write a Christmas videogame.net for fun: write a Christmas videogame
.net for fun: write a Christmas videogame
 
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...
 
Anomaly Detection with Azure and .NET
Anomaly Detection with Azure and .NETAnomaly Detection with Azure and .NET
Anomaly Detection with Azure and .NET
 
Deploy Microsoft Azure Data Solutions
Deploy Microsoft Azure Data SolutionsDeploy Microsoft Azure Data Solutions
Deploy Microsoft Azure Data Solutions
 
Deep Dive Time Series Anomaly Detection in Azure with dotnet
Deep Dive Time Series Anomaly Detection in Azure with dotnetDeep Dive Time Series Anomaly Detection in Azure with dotnet
Deep Dive Time Series Anomaly Detection in Azure with dotnet
 
Azure IoT Central
Azure IoT CentralAzure IoT Central
Azure IoT Central
 
Anomaly Detection with Azure and .net
Anomaly Detection with Azure and .netAnomaly Detection with Azure and .net
Anomaly Detection with Azure and .net
 
Code Generation for Azure with .net
Code Generation for Azure with .netCode Generation for Azure with .net
Code Generation for Azure with .net
 
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magicRunning Kafka and Spark on Raspberry PI with Azure and some .net magic
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
 
Time Series Anomaly Detection with Azure and .NETT
Time Series Anomaly Detection with Azure and .NETTTime Series Anomaly Detection with Azure and .NETT
Time Series Anomaly Detection with Azure and .NETT
 

Sviluppare applicazioni web (completamente) on-line con Visual Studio Online "Monaco"

  • 1. VS11 - SVILUPPARE APPLICAZIONI WEB (COMPLETAMENTE) ON-LINE CON VISUAL STUDIO ONLINE "MONACO" Marco Parenzan Pordenone #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 2. Grazie a Sponsor #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 3. Marco Parenzan • Formazione & Divulgazione con 1nn0va • Ricerca e Innovazione con Servizi Cgn         @marco_parenzan it.linkedin.com/in/marcoparenzan www.facebook.com/parenzan.marco www.marcoparenzan.it www.slideshare.net/marco.parenzan github.com/marcoparenzan www.innovazionefvg.net marco [dot] parenzan [at] libero/live [dot] it • Developer e Architect in .NET e Web • (Tentative of) Cloud Developer #CDays14 – Milano 25, 26 e 27 Febbraio 2014 http://bit.ly/regazurebcit2014
  • 4. Windows Azure • Piattaforma di Cloud Computing di Microsoft • È la controparte pubblica della visione «Cloud OS» • Tutti i servizi online di Microsoft sono (o saranno) su Windows Azure • Quindi anche Visual Studio Online #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 5. Visual Studio Online • (aka Team Foundation Services) • Spostare parte della nostra quotidianità di sviluppatori online     Team Management Source Code Management Build Tasks Bug Tracking • E riguardo la scrittura del codice? • Se Office 365 sta a Office Online (aka Office Web Apps) e Office (2013 on Premise), cosa sta tra Visual Studio Online e Visual Studio (2013 on Premise)? #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 6. Visual Studio Online «Monaco» • È il progetto (ancora agli inizi, ma molto promettenti) di un ambiente di sviluppo Web-Based • Come spesso succede, Microsoft non è la prima      Cloud9 Codeanywhere Cloud IDE Codenvy … • Ciò che è esclusivo sono la pervasività ed uniformità , in stile Microsoft • In Microsoft ci lavora il team di Erich Gamma • Ci sono «pezzi di Monaco» in diverse applicazioni web:  Uno dei personaggi storici della «Gang of Four»  Entrato in Microsoft nel 2011      http://www.typescriptlang.org/Playground/ OneDrive (quando i files memorizzati hanno estensione .html, .js e soprattutto .css) Mobile Services in Windows Azure Source Code Management in VSO App for Office by using "Napa" Office 365 Development Tools #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 7. TypeScript #CDays14 – Milano 25, 26 e 27 Febbraio 2014 http://www.typescriptlang.org/Playground/
  • 8. OneDrive #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 9. Mobile Services in Windows Azure #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 10. Source Code Management in VSO #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 11. App for Office by using "Napa" Office 365 Development Tools http://blogs.msdn.com/b/officeapps/archive/2013/08/27/use-napa-office-365-development-toolsto-build-apps-for-office-and-sharepoint-on-the-browser.aspx #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 12. Dal Windows Azure Training Kit Attualmente unica esperienza IDE per «Monaco» #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 13. Abilitare «Monaco» nei Web Sites Entra Abilita #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 14. Agenda • L’IDE di «Monaco» • Rich Editing Experience • Controllo del Codice Sorgente • Controllare tutto dalla Console • Scrivere Codice • Conclusioni #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 15. L’IDE di «Monaco» NavBar ToolBar Activity Bar #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 16. L’IDE di «Monaco» [2] Web Site Menu #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 17. L’IDE di «Monaco» [3] Configurazione IDE #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 18. VS11 - SVILUPPARE APPLICAZIONI WEB (COMPLETAMENTE) ON-LINE CON VISUAL STUDIO ONLINE "MONACO" Controllo del Codice Sorgente #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 19. Git • Un progetto software non si gestisce senza controllo di codice sorgente • Git è lo standard nel mondo open • Attualmente è l’unico protocollo supportato in «Monaco» (a differenza dei W/S) • Git si sposa con gli standard espressi da «Monaco» e gli Azure W/S #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 20. Comparazione dei files • Permette di comparare i files tra versione in linea e branch in Git #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 21. VS11 - SVILUPPARE APPLICAZIONI WEB (COMPLETAMENTE) ON-LINE CON VISUAL STUDIO ONLINE "MONACO" Rich Editing Experience #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 22. Tutti i comandi (F1) #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 23. Apertura Rapida (CTRL+E) • Quick Open (CTRL+E) CTRL+E Apri recente (CTRL+Q) #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 24. Vai alla riga (CTRL+G) #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 25. Trova il simbolo (CTRL+SHIFT+O) Quick Open + «@» Raggruppato per tipologia Quick Open + «@:» #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 26. Cerca (CTRL+F) Sostituisci (CTRL+H) CTRL+F/H Find all references #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 27. Cerca Cerca #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 28. Autocomplete (CTRL+spazio) #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 29. Snippet di codice (decisors) Snippet (Template) Decisors #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 30. Incrementa valori numerici (CTRL+↑) CTRL+↑ #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 31. Markdown Snippet (Template) Decisors #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 32. Open to the Side + markdown preview #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 33. Altre caratteristiche dell’editor • AutoSave • Format Code • Upload from menu and Drag & Drop • iPad Keyboard #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 34. VS11 - SVILUPPARE APPLICAZIONI WEB (COMPLETAMENTE) ON-LINE CON VISUAL STUDIO ONLINE "MONACO" Controllare tutto dalla Console #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 35. Console • Tutti i comandi di elaborazione (compilazione, generazione) vengono dati da riga di comando • Alcuni comandi:          Md/mkdir, rd/rmdir, per la creazione delle cartelle Dir, cd, per navigare tra le cartelle Touch, open, per gestire i files Nuget, per scaricare packages da nuget.org Git, per interagire con il CVS Npm, per installare comandi da eseguire in ambiente node.js Unzip per decomprimere files zip Ps, per eseguire script Poweshell cUrl,per poter interagire via http con altri siti Web #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 36. Navigare tra le cartelle • È possibile avere una visuale console del progetto Web • Si vede il file system con i contenuti di files e cartelle • È possibile crere una cartella md Content • È possibile spostarsi in una cartella cd Content • È possibile creare un file touch main.less • È possibile aprire un file open main.less #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 37. Npm in Console • Node.js è pervasivo in Azure Web Sites e Monaco • È un pilastro del Javascript Full Stack (http://coding.smashingmagazine.com/2013/11/21/introduction-to-fullstack-javascript/) • Molti dei comandi da usare sono packages di Node  node-sass=npm install node-sass  Editor & intellisense experience #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 38. Se si usa un task runner come ad esempio «grunt», la console viene «bloccata» ed impedirebbe l’esecuzione di altri comandi • È possibile creare più console, una per lanciare grunt e una per lanciare i comandi ordinari #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Nuova Console • Selettore Console Console Multiple
  • 39. nuget • Nuget è disponibile a riga di comando • È possibile scaricare i files da nuget.org (o • Problemi:  La carella Content non si copia in radice del progetto (probabilmente perché siamo in un Web Site….)  Il file install.ps1 non si esegue… • Devo spostare i file a mano… • …ma spero in questi giorni di chiarirmi le idee qui in Microsoft…. #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 40. Less & Sass • LESS & SASS sono disponibili come editor • SASS si scarica come package Node  Web Sites non supportano Ruby [supportabile solo con IaaS] #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 41. VS11 - SVILUPPARE APPLICAZIONI WEB (COMPLETAMENTE) ON-LINE CON VISUAL STUDIO ONLINE "MONACO" Scrivere Codice #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 42. Supported Web Frameworks #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 43. One ASP.NET • È possibile sviluppare qualsiasi applicazione ASP.NET • L’ambiente non è maturo…manca l’intellisense e tutto l’aiuto cui siamo abituati in Visual Studio • …ma è solo una questione di risorse e di tempo • Si impara a gestire un .csproj come xml…ed è la cosa più importante • msbuild  La compilazione .NET parte da qui  Si impara a scrivere file .csproj  Integrato con il nuovo Build System di Visual Studio Online #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 44. Node.js e TypeScript (e Javascript!) • TypeScript  Una particolarità (ma nemmeno tanto): «Monaco» è scritto in Typescript  Editor & intellisense (best!) experience  Typescript è un package node (di nuovo: npm install typescript) • Node.js  Il nuovo compagno per lo sviluppatore Web  Un modello server side  Tanti nuovi comandi per la console • Insieme permettono di avere implementare il Javascript Full-Stack #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 45. VS11 - SVILUPPARE APPLICAZIONI WEB (COMPLETAMENTE) ON-LINE CON VISUAL STUDIO ONLINE "MONACO" Conclusioni #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 46. Conclusioni • Ambiente molto promettente • Non siamo in un ambiente .NET-centrico • Decisamente utile per     Prototyping Interventi rapidi Training Javascript Fullstack • Da verificare per progetti di classe enterprise (ripeto: è una questione di tempo) • Abbiamo capito che è già diventato pervasivo nelle soluzioni Microsoft • La community deve crescere • Mi aspetto (come per Napa) avere un IDE «Monaco» indipendente dal Windows Azure (per quel che può avere senso) #CDays14 – Milano 25, 26 e 27 Febbraio 2014
  • 47. Q&A Tutto il materiale di questa sessione su http://www.communitydays.it/ Lascia il feedback su questa sessione, potrai essere estratto per i nostri premi! Seguici su Twitter @CommunityDaysIT Facebook http://facebook.com/cdaysit #CDays14 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Editor's Notes

  1. Slide da mostrare prima di iniziare la sessione – non rimuovere!
  2. Slide Objectives:Explain how Windows Azure websites are simple, easy, and open.Notes:
  3. Slide Objectives:Explain that Windows Azure Web Sites supports Classic ASP, ASP.NET, PHP, and Node.js out of the box and that you can also host any custom FastCGI handler.Notes:
  4. Ultima slide, obbligatoria