Best practice

Migliora l'esperienza complessiva dei tuoi utenti seguendo queste guide per la progettazione dei componenti aggiuntivi.

Best practice generali

Ti invitiamo a utilizzare le seguenti best practice per tutti i componenti aggiuntivi che sviluppi.

Determinare la proprietà del componente aggiuntivo prima di iniziare

I componenti aggiuntivi sono definiti dai progetti Apps Script, che devono essere di proprietà di un account specifico o essere inseriti in un Drive condiviso. Prima di codificare un componente aggiuntivo, determina quale account deve essere proprietario del progetto e quale account funge da publisher. Determina anche quali account devono fungere da collaboratori e assicurati che abbiano accesso al progetto di script e al progetto Google Cloud associato.

Estendi Google Workspace, non replicarlo

I componenti aggiuntivi hanno lo scopo di fornire nuove funzionalità alle applicazioni Google Workspace che estendono o di automatizzare attività complesse. I componenti aggiuntivi che si limitano a replicare funzionalità già presenti nell'applicazione o che non apportano miglioramenti significativi a un flusso di lavoro non supereranno probabilmente la revisione dei componenti aggiuntivi per la pubblicazione.

Mantieni gli ambiti ristretti

Quando definisci gli ambiti in modo esplicito, scegli sempre il set di ambiti meno permissivo possibile. Ad esempio, non richiedere l'accesso completo al calendario dell'utente con l'ambito https://www.googleapis.com/auth/calendar se l'accesso in lettura è sufficiente. Per l'accesso di sola lettura, utilizza l'ambito https://www.googleapis.com/auth/calendar.readonly.

Evita di fare troppo affidamento sulle librerie

L'utilizzo delle librerie di Apps Script può far funzionare più lentamente il componente aggiuntivo rispetto a quando tutto il codice Apps Script è contenuto in un unico progetto di script. Sebbene le librerie Apps Script funzionino nei componenti aggiuntivi, potresti riscontrare riduzioni delle prestazioni se le utilizzi. Evita di includere librerie non necessarie nel tuo progetto e valuta i modi per ridurre la dipendenza del tuo componente aggiuntivo da queste librerie.

La latenza descritta sopra si applica solo ai progetti Apps Script utilizzati come librerie lato server. Puoi utilizzare liberamente librerie JavaScript lato client come jQuery senza riscontrare questa latenza.

Best practice per i componenti aggiuntivi di Google Workspace

Le seguenti best practice si applicano solo ai componenti aggiuntivi di Google Workspace e all'utilizzo del servizio Card.

Utilizzare solo poche carte

Se il componente aggiuntivo utilizza troppe schede, la configurazione della navigazione diventa complessa e difficile da gestire.

Evita l'impulso di creare più schede del necessario.

Utilizzare le funzioni di creazione dei widget

Quando scrivi codice che crea un Card o altri oggetti UI complessi, valuta la possibilità di inserire il codice in una funzione separata. Questa funzione di creazione deve solo creare l'oggetto e restituirlo. In questo modo puoi rigenerare rapidamente l'oggetto ogni volta che l'interfaccia utente deve essere aggiornata. Ricordati di chiamare build() dopo aver utilizzato le classi builder nel servizio di schede.

Semplifica le schede

Se una determinata scheda ha troppi widget, può occupare troppo spazio sullo schermo e diventare meno utile. Sebbene le sezioni delle schede di grandi dimensioni vengano visualizzate come elementi dell'interfaccia utente comprimibili, questo nasconde le informazioni all'utente. Cerca di semplificare il tuo componente aggiuntivo e fornisci esattamente ciò di cui l'utente ha bisogno e non altro.

Utilizzare le schede di errore

Crea schede per le condizioni di errore. Se il componente aggiuntivo genera un errore, dovrebbe visualizzare una scheda con le informazioni sull'errore e le istruzioni su come correggerlo, se possibile. Ad esempio, se il tuo componente aggiuntivo non è riuscito a connettersi a un servizio non Google perché l'autorizzazione non è andata a buon fine, mostra una scheda che lo indica e chiedi all'utente di verificare le informazioni dell'account utilizzate.

Scrivere test e messaggi di test

Ti consigliamo di testare a fondo tutti i componenti aggiuntivi che crei. Crea funzioni di test che creano schede e widget utilizzando i dati di test, quindi verifica che gli oggetti vengano creati come previsto.

Quando utilizzi le funzioni di callback dell'azione, in genere devi creare un oggetto risposta. Puoi utilizzare istruzioni come le seguenti per verificare che le risposte vengano create correttamente:

    Logger.log(response.printJson());

Esegui le funzioni di test che crei direttamente dall'editor di Apps Script utilizzando il menu Esegui. Quando hai un componente aggiuntivo funzionante, assicurati di installare la versione non pubblicata per poterlo testare.

Utilizza dati di test appropriati per ogni applicazione host a cui si estende il componente aggiuntivo. Ad esempio, se il componente aggiuntivo estende Gmail, probabilmente avrai bisogno di alcune email di test e dei relativi ID messaggio per assicurarti che il componente aggiuntivo funzioni come previsto quando viene fornito un contenuto del messaggio diverso. Puoi ottenere l'ID messaggio per un determinato messaggio elencando i messaggi utilizzando il metodo API Gmail users.messages.list o utilizzando il servizio Gmail di Apps Script.

Best practice per le conferenze di Calendar

Se il tuo componente aggiuntivo integra opzioni di conferenza con calendari di terze parti in Google Calendar, segui queste best practice aggiuntive:

Mantenere la luce onCreateFunction

Ogni onCreateFunction che definisci nel manifest viene chiamato in modo sincrono quando un utente tenta di creare una soluzione per conferenze di quel tipo. Assicurati che queste funzioni svolgano solo il lavoro minimo necessario per creare la conferenza. Se queste funzioni sono troppo complesse, l'esperienza utente del tuo componente aggiuntivo potrebbe essere lenta.

Utilizza i campi ConferenceData appropriati per i dati della conferenza

Quando crei ConferenceData oggetti, puoi popolarli con i dettagli della conferenza (codici di accesso, numeri di telefono, PIN, URI e così via). Assicurati di utilizzare il campo EntryPoint corrispondente per queste informazioni. Non inserire questi dettagli nel campo delle note ConferenceData.

Non aggiungere i dettagli della conferenza all'evento di Calendar

Il componente aggiuntivo non deve aggiungere informazioni sulle conferenze di terze parti create alla descrizione dell'evento di Calendar. Calendar esegue questa operazione automaticamente quando necessario.