Architecture des composants : couches, interfaces, injection, SOLID
Les trois couches d'un composant, l'injection par constructeur, SOLID sans jargon, et les deux sujets qu'on bâcle : exceptions et journalisation.
Le métier d'architecte logiciel dans l'ordre où on le pratique : lire le terrain, dresser les plans, conduire le chantier.
On avance comme sur un chantier : comprendre le terrain, dessiner les plans, puis tenir la construction. Choisissez un domaine pour ouvrir ses billets, ou commencez par la vue d'ensemble ci-dessus.
Les trois couches d'un composant, l'injection par constructeur, SOLID sans jargon, et les deux sujets qu'on bâcle : exceptions et journalisation.
Les cinq sections du document d'architecture, ce qu'on y met et pour qui, puis une étude de cas IoT complète, des chiffres du client aux routes de l'API.
Ce que les microservices, l'event sourcing et CQRS résolvent vraiment, ce qu'ils coûtent, et le cas Prime Video qui a fait le chemin inverse.
Relationnel ou NoSQL : le choix se décide sur la structure des données, la volumétrie et le besoin de cohérence, pas sur une préférence d'équipe.
L'architecte logiciel ne commande personne et répond de presque tout. Rôle, mindset, langage adapté à chaque interlocuteur, et parcours qui mènent au poste.
REST, notifications push, files de messages, fichiers : cinq critères pour trancher, et la journalisation centralisée qui rend un incident lisible.
Scalabilité, manageabilité, modularité, extensibilité, testabilité : cinq qualités qui transforment un chiffre d'exigence en décision d'architecture.
Back, front, mobile : les critères qui font un choix de stack défendable, et les contraintes de délai, d'équipe et d'exploitation qui tranchent avant toi.
Quatre patterns suffisent pour commencer : créer sans nommer la classe, isoler le magasin de données, masquer une séquence, encapsuler une action.
Les six étapes du processus d'architecture, et la marche la plus haute : chiffrer les exigences non-fonctionnelles avant de dessiner quoi que ce soit.
Six formes d'application (web, API, mobile, console, service, desktop), ce qui les distingue vraiment, et pourquoi un système réel en combine plusieurs.
Trois décisions déterminent si un système encaisse la charge : ne pas souder les services entre eux, ne rien garder en mémoire, cacher au bon endroit.