Skip to content

My Journey

📅 SAISON C Semaine 1 Épisode 4 - TypeScript et Architecture

📚 Notions du jour

Aujourd’hui, nous avons exploré TypeScript, un sur-ensemble typé de JavaScript, et revu les concepts clés de l’architecture d’API REST. Ce fût une journée d'introduction à TypeScript, sa configuration, et son intégration dans une API Express.js, le tout en utilisant Prisma comme ORM pour la gestion des données.

Nous avons abordé :

  • TypeScript
    • IntĂ©rĂŞt et exĂ©cution
    • Types de base
  • Architecture API
    • Configuration TypeScript
    • API Express.js
    • Prisma : ORM

📅 SAISON C Semaine 1 Épisode 3 - Modélisation de bases de données

Aujourd’hui, nous avons plongé dans le monde de la modélisation de bases de données et de la conception d’API.

La journée a été rythmée par des notions clés comme MERISE, les diagrammes entité-relation, et les spécifications d’API. Nous avons déjà abordé les bases de la modélisation de bases de données avec la méthode MERISE en saison B.

📚 Notions du jour

  • ModĂ©lisation de base de donnĂ©es :
  • MERISE :
    • MCD
    • MLD
    • MPD
  • Dictionnaire de donnĂ©es :
    • Diagramme entitĂ©-relation
  • Conception d’API :
  • SpĂ©cifications

📅 SAISON C Semaine 1 Épisode 2 - Web Design

Aujourd’hui, nous continuons notre exploration de la Saison Expert JavaScript avec un focus sur le Web Design et la Gestion de Projet. Ces notions sont essentielles pour concevoir des interfaces utilisateur efficaces et organiser le travail de manière optimale.

La journée a été riche en apprentissages et découvertes de nouveaux outils, avec des concepts clés pour la conception d'interfaces et la gestion de projets.

📚 Notions du jour

  • Web Design :
    • Zoning
    • Wireframes
    • Mockups
    • Prototype
  • Gestion de projet :
    • Agile ou Waterfall
    • Outils agiles (Kanban)
    • Diagramme de sĂ©quence

📅 SAISON C Semaine 1 Épisode 1 - Conception et Gestion de Projet

📚 Notions du jour

Aujourd’hui, nous attaquons la dernière saison de la formation : Expert JavaScript ! 🎉 Cette saison promet d’être intense et passionnante, car nous allons plonger encore plus profondément dans les notions avancées de la programmation, la gestion de projet, l’architecture logicielle, les tests, et la sécurité.

La première semaine est dédiée à l’analyse et la conception de projet, une étape cruciale pour tout développeur. Aujourd’hui, nous avons abordé deux thèmes principaux : la gestion de projet et la modélisation UML.

  • Gestion de projet :
    • Recueil du besoin
    • Clarifications et Ă©changes
    • RĂ©cits utilisateurs (user stories)
  • ModĂ©lisation UML :
    • PlantUML et extension VSCode
    • DiffĂ©rents types de diagramme
    • RĂ©alisation : diagramme « cas d’utilisation »

📅 SAISON B Semaine 5 Épisode 4 - Maîtrise de Sequelize

📚 Notions du jour

Aujourd’hui, nous avons approfondi notre utilisation de Sequelize, l’ORM (Object-Relational Mapping) pour Node.js, en explorant des concepts clés pour construire une application robuste. Après avoir configuré Sequelize et testé la connexion à la base de données, nous passons maintenant à la définition des modèles, la gestion des associations, et l’implémentation complète du CRUD (Create, Read, Update, Delete).

Dans cet article, nous allons couvrir :

  • La dĂ©finition des modèles avec sequelize.define() et les DataTypes.
  • La synchronisation du schĂ©ma avec sequelize.sync().
  • Les associations entre modèles (belongsTo, hasMany, belongsToMany).
  • Le chargement des donnĂ©es associĂ©es avec l’option include.
  • Le peuplement de la base de donnĂ©es (seeding).
  • Le remplacement de notre couche d’accès manuelle par les mĂ©thodes de Sequelize.

📅 SAISON B Semaine 5 Épisode 3 - Introduction aux ORM

📚 Notions du jour

Aujourd’hui, nous avons exploré un concept clé pour les applications modernes : les ORM (Object-Relational Mapping). Jusqu’à présent, nous utilisions un datamapper "manuel" pour interagir avec notre base de données. Cependant, cette approche présente des limites :

  • Code rĂ©pĂ©titif : Écrire manuellement chaque requĂŞte SQL devient fastidieux.
  • Risque d’erreurs : Les requĂŞtes SQL mal Ă©crites peuvent causer des bugs ou des failles de sĂ©curitĂ©.
  • Couplage fort : Le code est fortement liĂ© Ă  la structure de la base de donnĂ©es.
  • Maintenance difficile : Les changements dans la base de donnĂ©es nĂ©cessitent des modifications dans tout le code.

Voici les notions aborbées durant cette journée :

  • Les limites d’un Data Mapper manuel dans un projet complexe.
  • Le concept d’ORM (Object-Relational Mapping) : un traducteur Objet <=> SQL.
  • PrĂ©sentation de Sequelize comme solution ORM pour Node.js.
  • L’installation des paquets sequelize et pg.
  • La crĂ©ation et la configuration d’une instance de Sequelize.
  • Le test de la connexion Ă  la base de donnĂ©es avec sequelize.authenticate().

📅 SAISON B Semaine 5 Épisode 2 -L’Héritage et l’Architecture Objet – Factoriser le Code avec extends et super

📚 Notions du jour

Aujourd'hui nous continuons à voir les fondamentaux de la programmation orientée objet. Ce deuxième épisode est dédié à l'Héritage et Architecture Objet.

voici les notions abordées aujourd’hui :

  • L’hĂ©ritage pour factoriser le code entre les classes.
  • Le mot-clĂ© extends pour dĂ©finir une classe enfant.
  • L’opĂ©rateur super() pour appeler le constructeur parent.
  • Les membres static (mĂ©thodes et propriĂ©tĂ©s) qui appartiennent Ă  la classe elle-mĂŞme.
  • L’application de l’hĂ©ritage Ă  l’architecture des contrĂ´leurs.

📅 SAISON B Semaine 5 Épisode 1 - Découverte de la Programmation Orientée Objet (POO) en JavaScript – Classes, Encapsulation et Contrôle d’Accès

📚 Notions du jour

Aujourd'hui nous avons aborbé un paradigme important en programmation : la Programmation Orientée Objet (ou POO pour les intimes). C'est un concept que je connaissais déjà avec le langage de programmation Python que je pratiquais avant de commencer ma formation. Cette fois-ci j'ai pu voir comment cela était organisé en JavaScript en commençant par les fondamentaux.

Voici les notions aborbées durant cette journée :

  • Les limites du code procĂ©dural et l’intĂ©rĂŞt de la POO.
  • La syntaxe class pour dĂ©finir un « moule » Ă  objets.
  • Le constructor pour initialiser une nouvelle instance.
  • L’encapsulation pour protĂ©ger les donnĂ©es.
  • Les attributs privĂ©s avec le prĂ©fixe #.
  • Les getters et setters pour contrĂ´ler l’accès aux donnĂ©es.

📅 SAISON B Semaine 4 Épisode 5 - Projet en autonomie Jour 3 - Base de Données, Gestion des Erreurs et Style

📚 Introduction

Troisième jour de travail sur le projet oCoffee ! Aujourd’hui, j’ai franchi une étape majeure en créant et connectant la base de données PostgreSQL, en dynamisant entièrement les pages avec les données de la base, et en améliorant l’expérience utilisateur avec une page 404 personnalisée et un design responsive. Voici le détail de cette journée bien remplie.

Note

Le dépôt Github du projet est disponible ici.

📅 SAISON B Semaine 4 Épisode 4 - Projet en autonomie Jour 2 - Structuration MVC et Dynamisation des Pages

📚 Introduction

Deuxième jour de travail sur le projet oCoffee ! Aujourd’hui, j’ai avancé sur la structuration de l’architecture MVC et la dynamisation des pages. Mon objectif était de rendre les pages du site fonctionnelles de manière statique, puis de commencer à les dynamiser avec des données JSON. Voici le bilan de la journée.

Note

Le dépôt Github du projet est disponible ici.