Esercizio - Scrivere codice per implementare un'applicazione Web

Completato

In questa unità si apprenderà come usare gli strumenti per sviluppatori per creare il codice per un'applicazione Web di base.

Creare un nuovo progetto Web

Il fulcro degli strumenti dell'interfaccia della riga di comando .NET è rappresentato dallo strumento da riga di comando dotnet. Con questo comando si crea un nuovo progetto Web ASP.NET Core.

Eseguire questo comando per creare una nuova applicazione ASP.NET Core MVC (Model-View Cotroller) denominata "BestBikeApp":

dotnet new mvc --name BestBikeApp

Il comando crea una nuova cartella denominata "BestBikeApp" per contenere il progetto. Per testare l'app in locale, è necessario che .NET SDK sia installato nel sistema.

Per creare un'applicazione Web di base si usa Maven, uno strumento di uso comune per la gestione e la compilazione di progetti per app Java. Viene usato il modello maven-archetype-webapp per generare il codice per l'applicazione Web.

  1. Eseguire ora questi comandi in Azure Cloud Shell per creare una nuova app Web:

    cd ~
    mvn archetype:generate -DgroupId=example.demo -DartifactId=helloworld -DinteractiveMode=false -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=1.5
    
  2. Eseguire ora questi comandi per passare alla directory della nuova applicazione"helloworld" e creare il pacchetto dell'applicazione per la distribuzione:

    cd helloworld
    mvn package
    
  3. Al termine dell'esecuzione del comando, usare i comandi seguenti per aprire la directory target e visualizzarne il contenuto:

    cd target
    ls
    

A questo punto è disponibile un file denominato helloworld.war che è il pacchetto dell'applicazione Web che verrà distribuito nel servizio app.

Per creare un'applicazione Web Node.js di base si usa npm (Node Package Manager) insieme a codice JavaScript per eseguire l'elaborazione della pagina Web effettiva.

  1. Eseguire i comandi seguenti nel terminale per creare un nuovo file package.json che descrive l'applicazione Node.js:

    cd ~
    mkdir helloworld
    cd helloworld
    cat >package.json <<EOL
    {
      "name": "helloworld",
      "version": "1.0.0",
      "scripts": {
        "start": "node index.js"
      }
    }
    EOL
    

Viene creato un nuovo file package.json nella cartella corrente. Se si immette ls nella finestra del terminale, il file dovrebbe trovarsi all'interno della cartella corrente. Per eseguire la logica del sito Web, è necessario un file JavaScript. Per questo esempio di base è necessario un solo file: index.js.

  1. Creare il file eseguendo questo comando nel terminale:

    cat >index.js <<EOL
    const http = require('http');
    
    const server = http.createServer(function(request, response) { 
        response.writeHead(200, { "Content-Type": "text/html" });
        response.end("<html><body><h1>Hello World!</h1></body></html>");
    });
    
    const port = process.env.PORT || 1337;
    server.listen(port);
    
    console.log(\`Server running at http://localhost:\${port}\`);
    EOL
    

Per testare l'app in locale, è necessario Node.js e npm installati nel sistema.

Per creare un'applicazione Web di base si usa il framework per le applicazioni Web di Flask.

  1. Eseguire i comandi seguenti in Azure Cloud Shell per configurare un ambiente virtuale e installare Flask nel profilo:

    python3 -m venv venv
    source venv/bin/activate
    pip install flask
    
  2. Eseguire questi comandi per creare e passare alla nuova directory dell'app Web:

    mkdir ~/BestBikeApp
    cd ~/BestBikeApp
    
  3. Creare un nuovo file denominato application.py con una risposta HTML di base:

    cat >application.py <<EOL
    from flask import Flask
    app = Flask(__name__)
    
    @app.route("/")
    def hello():
        return "<html><body><h1>Hello Best Bike App!</h1></body></html>\n"
    EOL
    
  4. Per distribuire l'applicazione in Azure, è necessario salvare l'elenco dei requisiti dell'applicazione in un file requirements.txt. A tale scopo, eseguire il comando seguente:

    pip freeze > requirements.txt
    

Per testare l'app in locale, sono necessari Python 3 e Flask installati nel sistema.