Esercitazione 1 - La vostra prima applicazione

Siamo pronti a creare la nostra prima applicazione.

Installare gli strumenti BeeWare

Per prima cosa, è necessario installare Briefcase. Briefcase è uno strumento di BeeWare che può essere usato per confezionare l’applicazione da distribuire agli utenti finali, ma può anche essere usato per avviare un nuovo progetto. Assicuratevi di essere nella cartella beeware-tutorial creata in Tutorial 0, con l’ambiente virtuale beeware-venv attivato ed eseguite:

(beeware-venv) $ python -m pip install briefcase

Uno degli strumenti di BeeWare è Briefcase. Briefcase può essere utilizzato per confezionare l’applicazione da distribuire agli utenti finali, ma anche per avviare un nuovo progetto.

Bootstrap di un nuovo progetto

Avviamo il nostro primo progetto BeeWare! Useremo il comando new di Briefcase per creare un’applicazione chiamata Hello World. Eseguite il seguente comando dal prompt dei comandi:

(beeware-venv) $ briefcase new

Briefcase ci chiederà alcuni dettagli della nostra nuova applicazione. Ai fini di questa esercitazione, utilizzate quanto segue:

  • Nome formale - Accettare il valore predefinito: Hello World.

  • Nome applicazione - Accettare il valore predefinito: helloworld.

  • Bundle - Se si possiede un proprio dominio, inserirlo in ordine inverso. (Ad esempio, se si possiede il dominio «cupcakes.com», inserire com.cupcakes come bundle). Se non si possiede un dominio proprio, accettare il bundle predefinito (com.example).

  • Nome del progetto - Accettare il valore predefinito: Hello World.

  • Descrizione - Accettare il valore predefinito (o, se si vuole essere molto creativi, creare una descrizione personalizzata)

  • Autore - Inserire qui il proprio nome.

  • Email dell’autore - Inserire il proprio indirizzo e-mail. Verrà utilizzato nel file di configurazione, nel testo della guida e ovunque sia richiesto un indirizzo e-mail quando si invia l’applicazione a un app store.

  • URL - L’URL della pagina di destinazione dell’applicazione. Anche in questo caso, se si possiede un dominio proprio, inserire un URL di quel dominio (compreso https://). Altrimenti, accettare l’URL predefinito (https://example.com/helloworld). Questo URL non deve esistere (per ora); sarà usato solo se si pubblica l’applicazione su un app store.

  • Licenza - Accettare la licenza predefinita (BSD). Questo non influisce in alcun modo sul funzionamento del tutorial, quindi se si hanno sentimenti particolarmente forti riguardo alla scelta della licenza, si può scegliere liberamente un’altra licenza.

  • Quadro GUI - Accettare l’opzione predefinita, Toga (il toolkit GUI di BeeWare).

Briefcase genererà quindi uno scheletro di progetto da utilizzare. Se avete seguito questo tutorial fino a questo punto e avete accettato le impostazioni predefinite come descritto, il vostro file system dovrebbe avere un aspetto simile a:

beeware-tutorial/
├── beeware-venv/
│   └── ...
└── helloworld/
    ├── CHANGELOG
    ├── LICENSE
    ├── pyproject.toml
    ├── README.rst
    ├── src/
    │   └── helloworld/
    │       ├── app.py
    │       ├── __init__.py
    │       ├── __main__.py
    │       └── resources/
    │           └── README
    └── tests/
        ├── helloworld.py
        ├── __init__.py
        └── test_app.py

Questo scheletro è in realtà un’applicazione completamente funzionante, senza aggiungere altro. La cartella src contiene tutto il codice dell’applicazione, la cartella tests contiene una suite di test iniziale e il file pyproject.toml descrive come confezionare l’applicazione per la distribuzione. Se si apre pyproject.toml in un editor, si vedranno i dettagli di configurazione appena forniti a Briefcase.

Ora che abbiamo un’applicazione stub, possiamo usare Briefcase per eseguire l’applicazione.

Eseguire l’applicazione in modalità sviluppatore

Spostatevi nella cartella del progetto helloworld e dite a briefcase di avviare il progetto in modalità sviluppatore (o dev):

(beeware-venv) $ cd helloworld
(beeware-venv) $ briefcase dev

[hello-world] Installing requirements...
...

[helloworld] Starting in dev mode...
===========================================================================

Si dovrebbe aprire una finestra dell’interfaccia grafica:

Esercitazione Hello World 1 finestra, su macOS

Premete il pulsante di chiusura (o selezionate Quit dal menu dell’applicazione) e il gioco è fatto! Congratulazioni: avete appena scritto un’applicazione nativa standalone in Python!

Prossimi passi

Ora abbiamo un’applicazione funzionante, eseguita in modalità sviluppatore. Ora possiamo aggiungere un po” di logica per far fare alla nostra applicazione qualcosa di più interessante. In Tutorial 2, realizzeremo un’interfaccia utente più utile per la nostra applicazione.