Bonnes pratiques

Améliorez les performances expérience globale en suivant ces guides pour les modules complémentaires conception.

Bonnes pratiques générales

Nous vous encourageons à suivre les bonnes pratiques suivantes pour tous les modules complémentaires que vous développer.

Déterminer la propriété des modules complémentaires avant de commencer

les modules complémentaires sont définis par des projets Apps Script, qui doivent appartenir à un ou être placés dans un Drive partagé. Avant de coder un module complémentaire, déterminez quel compte doit être le propriétaire du projet, et le compte qui sert d'éditeur. Déterminez aussi les comptes sur lesquels agir en tant que collaborateurs, et vous assurer que ces comptes ont accès au script du projet et ses Projet Cloud Platform :

Étendre Google Workspace (ne pas le reproduire)

sont destinés à offrir de nouvelles fonctionnalités les applications Google Workspace qu'ils étendent, pour automatiser des tâches complexes. qui se contentent de reproduire une fonctionnalité déjà présente dans ou qui n'apportent pas d'améliorations significatives ne réussiront probablement pas l'examen complémentaire pour publication.

Limiter les champs d'application

Lorsque vous définissez explicitement vos champs d'application, choisissez toujours l'ensemble de portée le moins permissif possible. Par exemple, ne demandez à votre module complémentaire un accès complet à l'agenda de l'utilisateur https://www.googleapis.com/auth/calendar champ d'application s'il n'a besoin que d'un accès en lecture y accéder. Pour l'accès en lecture seule, utilisez la https://www.googleapis.com/auth/calendar.readonly.

Éviter de trop dépendre des bibliothèques

L'utilisation de bibliothèques Apps Script peut s'exécuter plus lentement si tout le code Apps Script était contenu dans un seul projet de script. Bien que les bibliothèques Apps Script fonctionnent dans les modules complémentaires, vous risquez de rencontrer des problèmes de performances des réductions si vous les utilisez. Évitez d'inclure des bibliothèques inutiles dans votre projet, et réfléchissez aux moyens de réduire la dépendance de votre module complémentaire à ceux-ci.

La latence décrite ci-dessus ne s'applique qu'aux projets Apps Script utilisés. en tant que bibliothèques côté serveur. Vous pouvez utiliser des bibliothèques JavaScript côté client telles que jQuery librement sans rencontrer cette latence.

Bonnes pratiques concernant les modules complémentaires Google Workspace

Les bonnes pratiques suivantes s'appliquent uniquement les modules complémentaires Google Workspace et leur utilisation du service de cartes.

Utiliser seulement quelques fiches

Si le module complémentaire utilise trop de cartes, devient complexe et difficile à gérer.

Évitez de créer trop de cartes que nécessaire.

Utiliser les fonctions de création de widgets

Lorsque vous écrivez du code qui crée Card ou d'autres objets d'interface utilisateur complexes, envisagez de placer ce code dans sa propre fonction. Cette fonction de création doit simplement créer l'objet et le renvoyer. Cela permet vous pouvez rapidement regénérer cet objet chaque fois que l'UI doit être actualisée. À noter pour appeler build() après avoir utilisé les classes de compilateur dans la Service de cartes.

Simplifiez les fiches

Si une carte donnée contient trop de widgets, elle peut occuper une trop grande partie de l'écran et deviennent moins utiles. Alors que les grandes sections de fiche s'affichent sous forme d'éléments d'interface utilisateur réductibles, cela masque les informations à l'utilisateur. Cherchez à simplifier votre module complémentaire exactement ce dont l’utilisateur a besoin et rien plus.

Utiliser des fiches d'erreur

Créez des fiches pour les conditions d'erreur. Si votre module complémentaire génère une erreur, il doit Afficher une carte indiquant l'erreur et des instructions pour la corriger si possible. Par exemple, si votre module complémentaire ne peut pas se connecter à un car l'autorisation a échoué, affichez une carte indiquant ceci et demandez l'utilisateur pour vérifier les informations de compte utilisées.

Écrire des tests et des messages de test

Vous devez tester minutieusement tous les modules complémentaires que vous créez. Créez des fonctions de test créer des fiches et des widgets à l'aide de données de test, puis vérifier que les objets créés comme prévu.

Lorsque vous utilisez des fonctions de rappel d'action, vous devez généralement construire un objet de réponse. Vous pouvez utiliser des déclarations telles que les éléments suivants pour vérifier que les réponses sont correctement construites:

    Logger.log(response.printJson());

Exécuter des fonctions de test créées directement depuis Apps Script via le menu Exécuter. Lorsque vous disposez d'un module complémentaire viable, veillez à installer la version non publiée afin que vous puissiez le tester.

Utilisez les données de test appropriées pour chaque application hôte fournie par le module complémentaire. Pour Par exemple, si le module complémentaire étend Gmail, vous aurez probablement besoin de quelques e-mails de test et leurs ID de message. Vous pouvez ainsi vous assurer que le module complémentaire fonctionne comme est attendu lorsque le contenu du message est différent. Vous pouvez obtenir l'ID d'un message message donné en répertoriant les messages à l'aide de la méthode API Gmail Users.messages.list ou à l'aide du script Apps Script Service Gmail :

Bonnes pratiques pour les conférences Agenda

Si votre module complémentaire intègre des applications conférences agenda dans Google Agenda, suivez ces bonnes pratiques supplémentaires:

Conserver la lumière de votre onCreateFunction

Chaque onCreateFunction que vous définissez dans votre fichier manifeste est appelée de manière synchrone lorsqu'un utilisateur tente pour créer une solution de conférence de ce type. Assurez-vous que ces fonctions n'effectuent que la le minimum de travail nécessaire pour créer la conférence. En faire trop dans ces peuvent ralentir l'expérience utilisateur de votre module complémentaire.

Utilisez les champs ConferenceData appropriés pour les données de la conférence

Lorsque vous créez ConferenceData vous pouvez les renseigner avec des informations sur la conférence (accès codes, numéros de téléphone, codes, URI, etc.). Veillez à utiliser la Champ EntryPoint pour obtenir ces informations. Ne placez pas ces informations dans le ConferenceData Remarques.

Ne pas ajouter les détails de la conférence à l'événement Google Agenda

Votre module complémentaire n'a pas besoin d'ajouter d'informations sur le tiers créé à la description de l'événement Google Agenda. Google Agenda automatiquement si nécessaire.