Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correction chapitre 2 #2

Closed
DrOwlFR opened this issue Dec 20, 2021 · 0 comments
Closed

Correction chapitre 2 #2

DrOwlFR opened this issue Dec 20, 2021 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed
Milestone

Comments

@DrOwlFR
Copy link
Collaborator

DrOwlFR commented Dec 20, 2021

  1. Structure du projet

Nous allons commencer par créer un dossier qui contiendra l'ensemble du code de notre bot. Une fois le dossier créé nous pouvons ouvrir notre IDE a à l'intérieur de ce dossier. Si vous utilisez Visual Studio Code vous pouvez ouvrir le dossier avec le raccourci clavier Ctrl K Ctrl O ou bien en faisant Fichier => Ouvrir un dossier.

 a. Initialisation de npm

Une fois dans notre projet nous allons commencer par initialiser npm. Npm signifie Node Package Manager "Node Package Manager" (ajouter les guillemets et l'italique, ça fait plus propre pour expliquer un acronyme). Cette Cet outil en ligne de commande va nous permettre de télécharger des modules et de les installer. Pour initialiser npm il suffit de faire npm init npm init dans un terminal (Terminal => Nouveau terminal ou Ctrl + Shift + ù ). Ensuite on réponds répond aux différentes questions posées. Le résultat devrait etre être la création d'un fichié fichier package.json package.json qui contient les informations nécessaires à l'installation de notre projet.

Pour ma part le fichier ressemble a à ceci :

 b. Création des dossiers

Bien qu'il soit possible de faire un bot dans un seul fichier**,** ce n'est pas vraiment recommandé. En effet cela peut être très lourd à gérer et difficile à maintenir. Ainci Ainsi nous allons découper le code source de notre bot en plusieurs dossiers et fichiers. Nous allons créer un dossier src src qui contiendra tout le code du bot. Une fois dans ce dossier nous allons créer les sous dossiers suivants :

[...]

Si vous n'avez pas tous tout compris**,** la vue suivante devrait vous éclairer :

[...]

 c. Création des fichiers
  • index.js dans le dossier src. Le Il s'agit du fichier principal du bot, nous lancerons notre bot depuis ce fichier.

[...]

 d. Fichier de configuration

Vous vous souvenez nous avions parlé du token dans le chapitre précédent ? C'est ici que nous allons stocker ce token le stocker (pour éviter trop de répétitions).

  1. Installation des modules

Pour notre bot nous allons utiliser des modules pour nous simplifier la tâche, en effet la création d'un bot sans module est très compliquée, il faut gérer un websocket, des requetes requêtes http, le cache, le rate-limite etc. Heureusement il existe des librairies très bien faites qui nous simplifieront la tâche. Nous allons donc installer discord.js et Sheweny. Discord.js permettra de faire toutes les intéractions interactions avec l'api de discord. Et Sheweny vous simplifira simplifiera l'utilisation de discord.js, Sheweny va en fait s'occuper de charger vos différents fichier fichiers et de gérer les évènements important importants : les commandes, événements etc. Pour installer discord.js et Sheweny il suffit de faire npm install discord.js sheweny **ou npm i discord.js sheweny** dans un terminal.

  1. Conclusion

Si vous avez des questions n'hésitez pas a à me contacter sur le serveur de GCA ou via des issues sur le repo.

@Smaug6739 Smaug6739 self-assigned this Dec 20, 2021
@Smaug6739 Smaug6739 added the documentation Improvements or additions to documentation label Dec 20, 2021
@Smaug6739 Smaug6739 added this to the Partie 1 milestone Dec 21, 2021
@Smaug6739 Smaug6739 added good first issue Good for newcomers help wanted Extra attention is needed labels Dec 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants