Files
sae_r301_g12/JOURNAL.md
T

5.7 KiB
Raw Blame History

Journal de Bord - SAE S2.02

Séance 1

Objectif de la séance : Mettre en place le projet .

Travail réalisé :

  • Création du dépôt sur Grond et ajout des collaborateurs (Ulysse Jarnouen, Denis Monnerat).
  • Création du fichier "README.md".
  • Création du fichier "JOURNAL.md".

Difficultés rencontrées : Nous avons des tp de retard donc on ne vas pas commecer le projet dans cette séance mais la prochaine.

Décisions prises : Mise en place du workflow Git avec une branche dédiée par séance.

Travail de chacun : Pour cette séance on est ensemble et on configuration le Git et dépôt.

Points à reprendre à la séance suivante : Commencer réellement le projet

Usage de l'IA (Séance 1) : Prompts utilisés : Demandes d'aide sur la configuration initiale de Git, le fonctionnement des branches, et la syntaxe pour bien rédiger les fichiers .md (README et JOURNAL). Extraits de réponse jugés utiles : Les explications claires sur le workflow Git (pourquoi on ne travaille pas sur le main, l'utilité de git checkout -b`) et le rôle d'une Pull Request.

Les symboles '#' et '##' : Les Titres Le nombre de '#' détermine l'importance et la taille du titre. C’est l’équivalent des balises '

' et '

' en HTML. "#" Titre Principal : Crée un titre de niveau 1 (très grand, utilisé pour le nom du projet). "##" Sous-Titre : Crée un titre de niveau 2 (taille moyenne, parfait pour séparer tes sections comme "Membres du binôme" ou "Séance 1"). "###" Titre de niveau 3 : Pour des sous-sections encore plus petites. Règle d'or : Il faut toujours mettre un espace entre les '#' et le premier mot (écris '##' Séance 1 et non '##Séance 1'). 2. Le symbole '' : Les listes et le style L'astérisque change de rôle selon la façon dont tu l'utilises : Pour faire des listes à puces Si tu places un '' au tout début d'une ligne, suivi d'un espace, cela génère une liste propre. "" Ibrahim devient une puce avec "Ibrahim". "" Tajeddine devient une puce avec "Tajeddine". Pour modifier le style du texte Si tu colles les astérisques autour d'un mot ou d'une phrase (sans espace cette fois) : 'texte' (un seul de chaque côté) : Met le mot en italique. texte (deux de chaque côté) : Met le mot en gras (très pratique pour faire ressortir les mots-clés).

Séance 2

Objectif de la séance : Avancer sur le projet.

Travail réalisé :

  • Aucun, Tajeddine et moi étions absents.

Difficultés rencontrées : Absence du binôme.

Décisions prises : Rattraper le travail pendant la séance 3.

Travail de chacun : Rien pour cette séance.

Points à reprendre à la séance suivante : Rattraper le retard et commencer à coder.

Usage de l'IA (Séance 2) : Aucun.

Séance 3

Objectif de la séance : Rattraper la séance 2, définir la répartition des rôles, réparer les problèmes de Git et avancer sur la gestion des jeux.

Répartition des tâches décidée :

  • Tajeddine : S'occupe de l'interface utilisateur (Accueil, listes des jeux par catégories, fiche détaillée d'un jeu, et barre de recherche).
  • Ibrahim : S'occupe de l'administration des données (Formulaires d'ajout et de modification, suppression des jeux, et filtres de tri).

Travail réalisé :

  • Création de la vue formulaire_ajout.php ( pour l'ajout et la modification).
  • Création du contrôleur Jeux.php et mise à jour de Game_model.php pour gérer l'insertion, la mise à jour et la suppression.
  • Configuration de base_url dans config.php et ajout de url et form dans autoload.php.

Difficultés rencontrées : * Conflits sur Git en voulant fusionner les branches.

  • La base de données bloquait l'ajout en silence car on avait oublié le champ description qui est obligatoire (NOT NULL dans la table).

Travail de chacun : * Ibrahim : Réparation du dépôt Git, configuration du projet, et code complet des fonctionnalités "Créer", "Modifier" et "Supprimer" un jeu.

Points à reprendre à la séance suivante (Séance 4) : * Ibrahim : Faire la Mission 4 (Ajouter les filtres de tri par titre/année sur les listes).

  • Tajeddine : Avancer sur l'affichage visuel des listes de jeux pour qu'on puisse y intégrer les boutons de modification/suppression et les filtres.

Usage de l'IA (Séance 3) : Prompts utilisés : Demande de commandes pour nettoyer Git après un conflit, aide pour comprendre une erreur de "fonction non définie", et aide pour trouver l'erreur d'insertion MariaDB. Extraits de réponse jugés utiles :

  • L'armoire Jeux est parfaitement déclarée ! Il faut maintenant y ajouter notre tiroir, c'est-à-dire la méthode ajouter(). À l'intérieur de cette méthode, nous avons besoin de deux instructions que tu as déjà utilisées tout à l'heure : L'instruction pour charger l'outil natif des URL (le helper). L'instruction pour charger et afficher la vue qui s'appellera formulaire_ajout_vue. Comment vas-tu écrire cette fonction public function ajouter() avec ces deux lignes à l'intérieur de ta classe ?

  • Ton début de code pour la classe Jeux est parfait. Dans CodeIgniter, la commande $this->load fonctionne comme un couteau suisse. Pour l'utiliser, on lui ajoute une flèche -> suivie de l'action que l'on veut faire. Dans notre fonction ajouter(), nous avons besoin de faire deux actions : Charger un outil (helper) pour gérer les liens web. L'outil s'appelle 'url' et la commande à utiliser est helper(). Charger l'interface visuelle (vue) qui contiendra le formulaire. Nous allons l'appeler 'formulaire_ajout_vue' et la commande est view(). En utilisant la syntaxe $this->load->..., comment écrirais-tu ces deux lignes complètes à l'intérieur de ta fonction ajouter() ?