Best practice

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

Best practice generali

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

Determinare la proprietà dei componenti aggiuntivi prima di iniziare

I componenti aggiuntivi sono definiti dai progetti Apps Script, che devono essere di proprietà di un account specifico oppure devono essere inseriti in un Drive condiviso. Prima di codificare un componente aggiuntivo, determina quale account dovrebbe essere proprietario del progetto e quale account agisce in qualità di publisher. Determina inoltre quali account devono agire come collaboratori e assicurati che questi account abbiano accesso al progetto di script e al progetto della piattaforma Cloud associato.

Estendi Google Workspace, non replicarlo

i componenti aggiuntivi sono concepiti per fornire nuove funzionalità alle applicazioni Google Workspace che estendono o per automatizzare attività complesse. I componenti aggiuntivi che si limitano a replicare le funzionalità già all'interno dell'applicazione o quelli che non apportano miglioramenti significativi a un flusso di lavoro hanno poche probabilità di superare la revisione dei componenti aggiuntivi per la pubblicazione.

Mantieni gli ambiti ristretti

Quando definisci i tuoi ambiti in modo esplicito, scegli sempre l'insieme di ambiti meno permissivo possibile. Ad esempio, la richiesta del componente aggiuntivo non può avere l'accesso completo al calendario dell'utente con l'ambito https://www.googleapis.com/auth/calendar se necessita solo dell'accesso in lettura. Per l'accesso di sola lettura, utilizza l'ambito https://www.googleapis.com/auth/calendar.readonly.

Evitare di fare troppo affidamento sulle librerie

L'utilizzo delle librerie di Apps Script può causare l'esecuzione più lenta del componente aggiuntivo rispetto a quanto accadrebbe se tutto il codice di Apps Script fosse contenuto in un singolo progetto di script. Anche se le librerie di Apps Script funzionano all'interno dei componenti aggiuntivi, se li utilizzi potresti riscontrare riduzioni delle prestazioni. Evita di includere nel progetto librerie non necessarie e pensa a modi per fare in modo che i componenti aggiuntivi non vi facciano affidamento.

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 di carte.

Utilizza solo alcune schede

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

Evita la voglia di creare più schede del necessario.

Utilizzare le funzioni di creazione dei widget

Quando scrivi codice che crea Card o altri oggetti UI complessi, valuta la possibilità di inserire questo 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 la UI deve essere aggiornata. Ricordati di chiamare build() dopo aver utilizzato le classi per la creazione in Card service.

Utilizza schede semplici

Se una determinata scheda ha troppi widget, potrebbe occupare troppo schermo e diventare meno utile. Le sezioni di schede di grandi dimensioni vengono visualizzate come elementi dell'interfaccia utente comprimibili, ma le informazioni vengono nascoste all'utente. Cerca di semplificare il tuo componente aggiuntivo e di fornire esattamente ciò di cui l'utente ha bisogno e niente di più.

Utilizzare le schede di errore

Crea schede per le condizioni di errore. Se il componente aggiuntivo genera un errore, dovrebbe mostrare una scheda con le informazioni sull'errore e le istruzioni per correggerlo, se possibile. Ad esempio, se il componente aggiuntivo non è riuscito a connettersi a un servizio non Google perché l'autorizzazione non è andata a buon fine, mostra una scheda con questa dichiarazione e chiedi all'utente di verificare i dati dell'account in uso.

Scrivere test e messaggi di test

Devi testare accuratamente tutti i componenti aggiuntivi che crei. Sviluppa funzioni di test che creano schede e widget utilizzando i dati di test, quindi verifica che gli oggetti siano creati come previsto.

Quando utilizzi le funzioni di callback delle azioni, di solito 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 disponi di un componente aggiuntivo funzionante, assicurati di installare la versione non pubblicata in modo da poterla testare.

Utilizza i dati di test appropriati per ogni applicazione host estesa dal componente aggiuntivo. Ad esempio, se il componente aggiuntivo estende Gmail, è probabile che ti serviranno alcune email di prova e i relativi ID messaggio, in modo da assicurarti che il componente aggiuntivo funzioni come previsto quando vengono forniti contenuti diversi del messaggio. Puoi ottenere l'ID messaggio di un determinato messaggio elencando i messaggi con il metodo Users.messages.list dell'API Gmail o utilizzando il servizio Gmail di Apps Script.

Best practice per le conferenze di Calendar

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

Mantieni la luce onCreateFunction

Ogni elemento onCreateFunction definito nel file 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. L'utilizzo eccessivo di queste funzioni può causare un'esperienza utente lenta per il componente aggiuntivo.

Utilizza i campi ConferenceData appropriati per i dati relativi alle conferenze

Quando crei oggetti di ConferenceData, puoi inserirvi 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 dettagli delle conferenze all'evento di Google Calendar

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