Best practice

Migliora l'esperienza complessiva dei tuoi utenti seguendo queste guide per il design dei componenti aggiuntivi.

Best practice generali

Ti invitiamo a utilizzare le seguenti best practice per tutti gli annunci 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 scrivere il codice di un plug-in, determina quale account deve essere proprietario del progetto e quale account funge da publisher. Determina inoltre quali account devono agire come collaboratori e assicurati che questi account abbiano accesso al progetto di script e al relativo 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 le 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 esplicitamente gli ambiti, scegli sempre l'insieme di ambiti meno permissivi possibile. Ad esempio, non fare in modo che il plug-in richieda l'accesso completo al calendario dell'utente con l'ambito https://www.googleapis.com/auth/calendar se ha bisogno solo di accesso in lettura. 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 rallentare il componente aggiuntivo rispetto a quanto accadrebbe se tutto il codice di Apps Script fosse contenuto in un singolo progetto di script. Sebbene le librerie di Apps Script funzionino nei plug-in, potresti riscontrare una riduzione delle prestazioni se le utilizzi. Evita di includere librerie non necessarie nel 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 le 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 Schede.

Utilizzare solo alcune 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 dell'interfaccia utente complessi, valuta la possibilità di inserire il codice in una propria funzione. Questa funzione di creazione deve solo creare l'oggetto e restituirlo. In questo modo puoi rigenerare rapidamente l'oggetto ogni volta che è necessario aggiornare l'interfaccia utente. Ricorda di chiamare build() dopo aver utilizzato le classi di generatore nel servizio Scheda.

Mantieni le schede semplici

Se una scheda contiene 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 plug-in e di fornire esattamente ciò di cui l'utente ha bisogno e non di più.

Utilizzare le schede di errore

Crea schede per le condizioni di errore. Se il componente aggiuntivo genera un errore, dovrebbe essere visualizzata 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 i dati dell'account in uso.

Scrivere test e messaggi di test

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

Quando utilizzi le funzioni di callback per le azioni, in genere devi creare un oggetto di risposta. Puoi utilizzare istruzioni come la seguente per verificare che le risposte vengano costruite 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 plug-in valido e funzionante, assicurati di installare la versione non pubblicata per poterlo testare.

Utilizza i dati di test appropriati per ogni applicazione host estesa dal componente aggiuntivo. Ad esempio, se il plug-in estende Gmail, è probabile che tu abbia bisogno di alcune email di prova e dei relativi ID messaggio per assicurarti che funzioni come previsto quando vengono forniti contenuti diversi dei messaggi. Puoi ottenere l'ID messaggio di un determinato messaggio elencando i messaggi utilizzando il metodo API Gmailusers.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 videoconferenze di terze parti nel calendario Google, segui queste best practice aggiuntive:

Conservare la lampadina 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 eseguano solo il minimo necessario per creare la conferenza. Se fai troppo in queste funzioni, l'esperienza utente del tuo componente aggiuntivo potrebbe risultare lenta.

Utilizza i campi ConferenceData appropriati per i dati della conferenza

Quando crei oggetti ConferenceData , puoi compilarli con i dettagli della conferenza (codici di accesso, numeri di telefono, codici PIN, URI e così via). Assicurati di utilizzare il corrispondente campo EntryPoint 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 lo fa automaticamente quando necessario.