Un Ami, du Vin et du Code : Lancement de Du Projet de "Gestion de Cave" ! 🍷

Rédigé par manuel Aucun commentaire
Classé dans : Fil Rouge Mots clés : Développement, Fil Rouge

Salut les passionnés de tech et de bon vin !

Aujourd'hui, je suis super enthousiaste de vous parler d'une nouvelle aventure qui va être mon fil rouge pour le reste de l'année : la création d'une application de gestion de cave à vin pour un ami. C'est le genre de défi que j'adore, car il me permet de plonger dans des domaines que j'affectionne (la programmation, les bases de données) tout en créant quelque chose de vraiment utile.

Pour le moment, tout est encore sur le papier, au stade de l'idée et de la planification. Je n'ai pas encore écrit une seule ligne de code, ni même dessiné la première table de ma base de données. Mais l'objectif est clair : transformer cette idée en réalité avant la fin de l'année !

Je vais partager avec vous le processus dès le départ, en expliquant les étapes préliminaires et les choix techniques que je m'apprête à faire.


 

Étape 1 : L'Étincelle de l'Idée et le Cahier des Charges Initial

Toute bonne création commence par une idée, souvent insufflée par un besoin concret. Dans mon cas, c'est mon ami, passionné de vin, qui m'a lancé le défi : "J'aimerais une application simple pour gérer ma cave."

Cette demande est devenue l'étincelle. Avant de sauter sur le clavier, la première étape cruciale est de comprendre précisément ses besoins. C'est ce que j'appelle le cahier des charges initial. Ce n'est pas juste une liste de souhaits, c'est la feuille de route qui garantira que l'application finale répondra aux attentes, sans s'éparpiller.

Pour cette gestion de cave à vin, les fonctionnalités clés que nous avons identifiées sont :

  • Gestion des bouteilles : pouvoir ajouter, modifier, supprimer des informations dĂ©taillĂ©es pour chaque vin (nom du vin, appellation, annĂ©e, producteur, cĂ©page, type de vin, quantitĂ©, emplacement prĂ©cis, dates d'entrĂ©e et de consommation conseillĂ©e, commentaires personnels, et mĂŞme la possibilitĂ© d'ajouter une photo de l'Ă©tiquette).

  • Organisation visuelle : visualiser la cave virtuellement, avec des "zones" ou "Ă©tagères" pour simuler son agencement physique.

  • Recherche et filtres : trouver rapidement des vins par n'importe quel critère et filtrer par quantitĂ© restante ou par date de consommation conseillĂ©e.

  • Inventaire simple : obtenir des statistiques basiques comme le nombre total de bouteilles ou la rĂ©partition par type.

  • Historique des consommations : garder une trace des bouteilles bues, avec la date et des notes de dĂ©gustation.

Ce cahier des charges, c'est notre boussole pour l'aventure. Il va me permettre de rester concentré et d'éviter de me disperser, un vrai atout quand on gère de multiples projets !


 

Étape 2 : Le Choix de la Stack Technique (Les Outils Que Je Vais Utiliser)

C'est là que l'on décide avec quels langages et technologies on va construire l'application. Mon objectif est clair : utiliser mes compétences existantes (HTML, CSS, JavaScript, PHP) tout en ayant l'occasion de consolider mes bases en PHP et de construire une solution à la fois simple, robuste et entièrement maîtrisée.

  • Front-end (Ce que l'utilisateur verra) : HTML, CSS et JavaScript (Vanilla JS)

    • Pourquoi ce choix ? Je maĂ®trise dĂ©jĂ  très bien ce trio. Pas besoin d'apprendre un nouveau framework JavaScript pour l'instant. HTML pour la structure, CSS pour le style (avec l'aide de Bootstrap pour les bases du design), et du JavaScript "pur" (Vanilla JS) pour l'interactivitĂ© cĂ´tĂ© client. C'est efficace et je garde un contrĂ´le total sur chaque ligne.

  • Back-end (La logique et la gestion des donnĂ©es) : PHP "pur" (sans framework)

    • Pourquoi ce choix ? PlutĂ´t que de me lancer dans un framework PHP plus complexe comme Laravel ou Symfony, j'ai optĂ© pour du PHP natif. L'idĂ©e est de comprendre chaque rouage : comment PHP reçoit les requĂŞtes, interagit avec la base de donnĂ©es, et gĂ©nère les pages HTML. C'est un excellent moyen d'apprendre les fondamentaux en profondeur et d'avoir une vision globale du fonctionnement d'une application web de A Ă  Z.

  • Base de donnĂ©es : SQLite

    • Pourquoi ce choix ? SQLite est parfaite pour ce type de projet. C'est une base de donnĂ©es lĂ©gère, sans serveur, qui stocke toutes les donnĂ©es dans un simple fichier. Elle est très facile Ă  utiliser avec PHP (via l'extension PDO) et ne demande aucune configuration complexe. IdĂ©ale pour un projet local, elle est aussi simple Ă  dĂ©placer.

  • Environnement de dĂ©veloppement : Pour dĂ©marrer cette aventure, je vais utiliser mon MacBook Pro M1 et/ou mon Mac mini M1. Ces machines Apple sont performantes et me permettront de mettre en place rapidement un environnement de dĂ©veloppement stable. Ă€ terme, mon objectif est de basculer l'ensemble de mon matĂ©riel de dĂ©veloppement sur Linux Debian, une distribution que j'apprĂ©cie pour sa stabilitĂ© et sa flexibilitĂ©. Ce sera une excellente opportunitĂ© d'approfondir mes connaissances sur ce système.

Cette stack me permettra de construire une application fonctionnelle tout en restant sur des technologies que je connais bien ou que je souhaite maîtriser en profondeur.


 

Étape 3 : Les Prochaines Étapes (Passer de l'Idée à la Réalité)

Maintenant que le cap est fixé et les outils choisis, le plan d'action est clair :

  1. Mise en place de l'environnement de développement : Configurer un serveur local (comme MAMP ou via Docker) sur mes machines Apple pour avoir PHP, Apache/Nginx et SQLite fonctionnels.

  2. Conception de la base de données : Définir la structure des tables (principalement une table bouteilles) et les relations si nécessaire.

  3. Développement du backend PHP : Écrire les fonctions PHP pour interagir avec la base de données (ajouter, lire, modifier, supprimer des bouteilles). Ce sera le cœur logique de l'application.

  4. Création du front-end HTML/CSS/JavaScript : Construire l'interface utilisateur, les formulaires, et la visualisation de la cave.

Je suis vraiment excité par ce projet. C'est un excellent moyen de mettre en pratique mes compétences et d'apprendre en réalisant quelque chose de concret pour un ami.

Je partagerai régulièrement l'avancement de ce projet ici sur https://mdsv41.fr/, avec des articles dédiés aux défis rencontrés, aux solutions trouvées, et aux fonctionnalités ajoutées.

N'hésitez pas à me poser vos questions sur ce processus ou sur mes choix techniques en commentaire !

À très vite pour la suite de l'aventure !

Écrire un commentaire

Quelle est le quatrième caractère du mot lneuj ?