Skip to content

Instantly share code, notes, and snippets.

View tanguybernard's full-sized avatar

Tanguy BERNARD tanguybernard

View GitHub Profile

Spotless

Qu’est-ce que Spotless ?

Spotless est un plugin de formatage automatique de code.

Fonctionnalités

✅ Formatage automatique du code Java (indentation, espaces, imports, etc.)

@tanguybernard
tanguybernard / effect_introduction.md
Last active February 7, 2025 09:57
Effect - Intoduction

La programmation fonctionnelle et la gestion des effets de bord avec Effect-ts

La gestion des effets de bord et la composition du code sont des défis majeurs en programmation, particulièrement dans le développement d'applications complexes. Effect-ts est une librairie qui apporte des solutions élégantes à ces problèmes en s'appuyant sur les principes de la programmation fonctionnelle.

Examinons comment Effect-ts peut améliorer notre code à travers l'exemple d'une fonction de récupération de post.

Le problème initial

Considérons d'abord une implémentation classique et trivial, d'un fonction getPostById sans Effect-ts :

@tanguybernard
tanguybernard / effectTS.md
Last active October 16, 2024 14:47
effectTS.md

Legacy (without effect)

const sendMail = async (client: SESv2Client, content: MailContent) => {
  try {
    const translatedContent = translateMailContent(content);
    const sendEmailCommand = createSendEmailCommand(translatedContent);
    const response = await sendMailWithClient(client)(sendEmailCommand);
    const mailSent = checkMailIsSended(response);
@tanguybernard
tanguybernard / one_page_test_plan_pbi.md
Last active June 24, 2024 14:51
One Page Test Plan - Portail PowerBI

One Page Test Plan - Projet Portail Power BI

Introduction

Le plan de test est conçu pour prescrire la portée, l'approche, les ressources et le calendrier de toutes les activités de test du projet Portail d'administration PowerBI.

Le plan identifie les éléments à tester, les fonctionnalités à tester, les types de tests à effectuer, le personnel responsable des tests, les ressources et le calendrier requis pour réaliser les tests, ainsi que les risques associés au plan.

Links

@tanguybernard
tanguybernard / design_evolution_composition.md
Last active April 29, 2024 10:05
Mon Design Evolue, sera t'il encore utile ?

Mon design évolue, sera t'il encore utile ?

Contexte

Secteur de l'enerige. L'appli sur laquelle je travaille vient récupérer des données de consommations de mes consommateurs. Aujourd'hui un consommateur c'est enfaite un site physique qui possède un numéro de compteur (un compteur linky pour simplifier) et quelques autres propriétés.

Une maison ou une boutique possède un numéro du compteur, on a donc un identifiant métier, c'est génial... pour le moment !

@tanguybernard
tanguybernard / orange_nodejs_formation.md
Last active September 27, 2023 14:40
Orange - nodejs - 2023-09-26

Programme

  • Rappel des bonnes pratiques JavaScript
  • Introduction à Node.js
  • Architecture de Node.js
  • Module et gestion de dependances
  • L’asynchrone en details
  • Fetch
  • (Outillage et usine logicielle)
  • Tests
@tanguybernard
tanguybernard / C4 model.md
Last active August 30, 2023 13:18
c4 model

C4 Model

C’est une méthodologie permettant de modéliser et documenter l’architecture logicielle d’un système logiciel.

By Simon Brown

Problème

Rattrapage PHP

Description du problème

Vous construisez un système de gestion des employés d'une épicerie locale. Le propriétaire du magasin souhaite ouvrir le magasin le dimanche et, en raison de restrictions légales, les employés de moins de 18 ans ne sont pas autorisés à travailler le dimanche. L'employée demande une fonction de rapport afin de pouvoir planifier les équipes de travail. Tous les employés sont déjà stockés quelque part et possèdent les propriétés suivantes :

@tanguybernard
tanguybernard / php_avance_eval_2_2022_2023.md
Last active February 9, 2023 08:24
PHP Avancé Eval 2 - 2022 - 2023

PHP Avancé - Evaluation 2

Introduction

Le pari sportif est un jeu d'argent sur la prédiction d'un évènement lors d'une rencontre sportive. Il existe de nombreux types de paris, dont les plus simples consistent à parier sur la victoire d'une équipe ou d'un sportif. Chaque pari a une cote et c'est elle qui permet de connaître à l'avance, en fonction de la somme misée, le montant gagné si l'événement se produit.

source: https://fr.wikipedia.org/wiki/Pari_sportif

Objectif

@tanguybernard
tanguybernard / php_avance_eval_1_2022_2023.md
Last active January 3, 2023 15:35
PHP Avancé Eval 1 - 2022 - 2023

PHP Avancé - Evaluation 1

Introduction

En tant qu'organisme de formations, je souhaiterai disposer d'une API me permettant d'enregistrer des formations et les participants.

Je souhaite créer une formation composé d'un nom, d'une date de début et de fin,  un nombre de participants maximum, un prix en euros et une liste de participants. 

Les participants ont comme propriété, un nom, un prénom ainsi que l'entreprise si il y en a une à laquelle ils sont rattachés.