Auteur : Vincent

Conception basée sur le métier

Conception basée sur le métier

La conception basée sur le métier ou le domain-driven design (DDD) est une façon de développer une application en lien avec le métier. Elle regroupe plusieurs concepts, notamment l'ubiquitous language, un terme définissant la construction d'un langage commun entre les développeurs et le métier (les utilisateurs), ainsi que le modèle de domaine (équivalent à un … Continuer à lire Conception basée sur le métier

Les tests d’intégrations

Les tests d’intégrations

Une application est souvent composée de plusieurs composants (modules, couches, services externes). Tandis que les tests unitaires se concentrent sur les exigences propres à un composant, les tests d'intégrations vérifient un composant avec ses autres composants. Ils ont pour objectif de tester le code d'une application dans son ensemble. Par exemple, une API créant un … Continuer à lire Les tests d’intégrations

La programmation réactive

La programmation réactive

La base de la programmation réactive est de déclencher des actions en observant des données. C'est aussi un paradigme déclaratif : on enchaîne un appel de fonctions ou d'expressions logiques déjà conçues, puis à la fin tout se calcule. La programmation réactive s'utilise par-dessus les langages de programmation, ou en créant un langage dédié à … Continuer à lire La programmation réactive

En-têtes de sécurité

En-têtes de sécurité

Les navigateurs internet sont des logiciels programmés pour charger et afficher des pages internet. Bien que la sécurité soit très importante, ils acceptent que certains sites internet ne soient pas protégés. Cette responsabilité a été déplacée au niveau des applications web. Les serveurs doivent donc envoyer des informations supplémentaires, les en-têtes de sécurité, pour contraindre … Continuer à lire En-têtes de sécurité

Architecture basée sur les évènements

Architecture basée sur les évènements

Un programme émetteur ou consommateur de notifications d'évènements est un paradigme d'architecture logicielle, nommé une architecture basée sur les évènements (event-driven architecture, EDA). Le terme "notifications d'évènements" est plus approprié que "évènement", car il y a un système de transfert de données (les évènements). L'EDA donne essentiellement un couplage lâche entre les composants (quasiment pas … Continuer à lire Architecture basée sur les évènements

Le versionnage d’application

Le versionnage d’application

Dans le temps, le code source d'une application change constamment pour évoluer ou corriger des bugs. Le versionnage d'application ou la gestion des versions sont des procédés qui nomment un état unique de l'application par un numéro ou un nom pour retrouver celui-ci plus tard. Les différentes versions des fichiers sont conservées dans une pratique … Continuer à lire Le versionnage d’application

Les sessions

Les sessions

Une session est une période pendant laquelle un client (logiciel ou système d'exploitation) est en communication avec un hôte (application backend ou appareil). Avant de commencer, elle demande généralement à un utilisateur de s'authentifier. On parle alors d'ouverture de session explicite. Enfin, la session se termine souvent lorsque l'utilisateur n'utilise plus le système. Son rôle … Continuer à lire Les sessions

Transaction Script

Transaction Script

Le Transaction Script est un patron de conception (résous des problèmes récurrents de conception). Il organise la logique métier d'une application backend grâce à des procédures uniques, et chaque procédure répond entièrement à une demande. Par exemple, dans un système bancaire, il y a la consultation d'un compte, le virement d'argent, ou la souscription à … Continuer à lire Transaction Script

Les tests unitaires

Les tests unitaires

Pour tester le comportement d'une pièce d'un programme (composant ou module), les tests unitaires sont indispensables. Ils visent à tester plusieurs unités de code, souvent associées à des exigences. Par exemple, un test sur la partie du code qui valide la longueur d'un mot de passe. Ces tests sont écrits dans le même langage de … Continuer à lire Les tests unitaires

Communication inter-processus

Communication inter-processus

À certains moments, les applications échangent parfois des données entre elles. La communication inter-processus (ou IPC) est le partage de données entre des programmes en cours d'exécution, appelée processus. Elle peut être établie sur la même machine ou des hôtes différents. Il y a plusieurs approches. La communication par socket entre deux applications est un … Continuer à lire Communication inter-processus