Présentation
Vue d'ensemble
L'OIP Starter repose sur le principe convention over configuration : le développeur décrit ce qu'il veut dans des fichiers de configuration, et l'outillage génère le code qui le réalise.
Ce principe n'est tenable qu'à une condition : que l'outillage sache où chercher les fichiers et comment les nommer. Les conventions décrites dans cette section ne sont donc pas des préférences de style, mais le contrat qui lie un projet à l'outillage de l'OIP.
Les respecter garantit :
- le bon fonctionnement des commandes de génération de code ;
- des migrations simplifiées entre les versions de l'OIP ;
- une lecture immédiate du projet par tout développeur de l'écosystème.
Portée
Page | Objet |
|---|---|
Emplacement attendu de chaque catégorie de fichier. | |
Nommage des entités, des vues, des transitions, des tâches et des fichiers. | |
Distinction entre code généré, fichiers squelettes et code de projet. |
Deux natures de conventions
Toutes les conventions n'ont pas le même statut. Certaines sont vérifiées par l'outillage et provoquent une erreur si elles ne sont pas respectées ; d'autres sont recommandées et n'engagent que la lisibilité du projet.
Convention | Statut | Conséquence si elle n'est pas respectée |
|---|---|---|
Emplacement de la configuration des entités dans config/entities/. | Imposée | La commande de génération des entités échoue. |
Emplacement de la configuration des vues dans config/views/. | Imposée | Les vues ne sont pas générées. |
Fichier de transition transitions/<viewId>.mjs. | Imposée | La génération des vues échoue. |
Fichier d'implémentation d'une tâche tasks/<taskType>.mjs. | Imposée | La tâche est programmée mais son code n'est jamais exécuté. |
Entité racine unique, de catégorie OIP_ENTITY_ROOT. | Imposée | La configuration des entités est rejetée. |
Nom de l'entité racine : Project. | Recommandée | Le projet s'écarte des modèles et des exemples de l'écosystème. |
Préfixe numérique des fichiers de configuration des vues. | Recommandée | L'ordre du parcours n'est plus lisible dans l'arborescence. |
Kebab-case pour les fichiers de configuration. | Recommandée | Hétérogénéité du projet. |
Résumé
- Les conventions de l'OIP sont le contrat qui permet à l'outillage de générer le code du projet ;
- elles couvrent l'arborescence des fichiers, le nommage et le traitement du code généré ;
- certaines sont vérifiées et bloquantes, d'autres relèvent de la lisibilité ;
- les respecter est la condition d'une migration simplifiée d'une version de l'OIP à la suivante.