Esercizio - Personalizzare le impostazioni del progetto e dell'editor

Completato

Il file devcontainer.json consente di configurare una serie di impostazioni nella configurazione di Visual Studio Code in un contenitore. Fino a questo punto è stato configurato un contenitore di sviluppo per un progetto Python. Tuttavia, esistono ancora alcuni aspetti e attività di configurazione che è possibile automatizzare ulteriormente.

In questo esercizio si userà il file devcontainer.json per queste messe a punto e per fare in modo che il progetto funzioni senza ulteriori interventi di configurazione da parte dello sviluppatore.

Installare le estensioni di Visual Studio Code

Il contenitore include l'estensione Microsoft Python (come si può vedere nell'immagine di base). L'estensione per Python abilita i frammenti di codice, il linting e IntelliSense nei file Python. Tuttavia, il file index.html nella cartella templates è un modello Jinja ed è necessario installare un'estensione diversa per ottenere l'evidenziazione della sintassi in tale file.

  1. Premere F1 per aprire il riquadro comandi.
  2. Digitare estensione e selezionare Estensioni: Installa estensioni.
  3. Nel riquadro di esplorazione delle estensioni a destra cercare jinja.
  4. Selezionare Installa.
  5. Fare clic con il pulsante destro del mouse sull'estensione Jinja da wholroyd e scegliere Aggiungi a devcontainer.json.
  6. Tornare al file devcontainer.json e notare che l'estensione Jinja è stata aggiunta alla sezione extensions.
  7. Salvare il file devcontainer.json.

Automatizzare l'installazione delle dipendenze

Al momento, uno sviluppatore che configura il progetto per la prima volta deve sapere che occorre eseguire pip3 install --user -r requirements.txt per installare le dipendenze. Senza queste dipendenze, il progetto non verrà eseguito e altri sviluppatori potrebbero non capirne il motivo.

  1. Rimuovere il commento dall'opzione postCreateCommand.

    "postCreateCommand": "pip3 install --user -r requirements.txt"
    
  2. Salvare il file devcontainer.json.

Il contenitore installerà automaticamente le dipendenze ogni volta che viene creato un contenitore.

Ricompilare il nuovo contenitore

  1. Premere F1 per aprire il riquadro comandi.
  2. Digitare Ricompila e selezionare Contenitori di sviluppo: ricompila contenitore.

Il contenitore verrà ricompilato con le modifiche specificate nel file devcontainer.json.

Nota

Ogni volta che viene ricompilato un contenitore, il contenitore viene rimosso e completamente ricreato. La cronologia del terminale non viene mantenuta quando viene ricompilato un contenitore.

Esaminare l'evidenziazione della sintassi fornita dall'estensione Jinja

  1. Apri il file templates/index.html.

  2. Scorrere verso il basso fino alla riga 33 e notare che è presente l'evidenziazione della sintassi nel ciclo for. Questa sintassi evidenziata è abilitata dall'estensione Jinja.

    Screenshot di un modello Jinja, che evidenzia un ciclo for con evidenziazione della sintassi.

Eseguire l'app

  1. Premere CTRL + ` per aprire il terminale integrato di Visual Studio Code.

  2. Eseguire l'app usando il comando seguente:

    python app.py
    
  3. Si noti che non è necessario installare alcuna dipendenza. L'applicazione viene semplicemente eseguita.

Il contenitore è ora personalizzato e automatizzato per l'agenzia. Qualsiasi sviluppatore che apre il progetto con Contenitori di sviluppo può eseguirlo immediatamente e iniziare a scrivere codice.

Nella prossima unità si apprenderà come installare software aggiuntivo nel contenitore di sviluppo.