Projet

Général

Profil

DeveloppementBonnesPratiques » Historique » Version 5

Daniel Dehennin, 13/09/2016 11:59

1 1 Lionel Morin
h1. Bonnes Pratiques de Développement
2 2 Lionel Morin
3 4 Daniel Dehennin
h2. Style de code commun
4 4 Daniel Dehennin
5 4 Daniel Dehennin
* Éditor config (même configuration des éditeurs de code)
6 4 Daniel Dehennin
7 4 Daniel Dehennin
h2. Développement piloté par les tests
8 4 Daniel Dehennin
9 4 Daniel Dehennin
Le "Test driven development":https://fr.wikipedia.org/wiki/Test_Driven_Development préconise d’écrire les tests unitaires avant d’écrire le code source:
10 4 Daniel Dehennin
11 4 Daniel Dehennin
12 4 Daniel Dehennin
# Écrire un premier test ;
13 4 Daniel Dehennin
# Vérifier qu'il échoue (car le code qu'il teste n'existe pas), afin de vérifier que le test est valide ;
14 4 Daniel Dehennin
# Écrire juste le code suffisant pour passer le test ;
15 4 Daniel Dehennin
# Vérifier que le test passe ;
16 4 Daniel Dehennin
# Puis réusiner le code, c'est-à-dire l'améliorer tout en gardant les mêmes fonctionnalités.
17 4 Daniel Dehennin
18 4 Daniel Dehennin
19 4 Daniel Dehennin
h2. Documentation d’API automatique
20 4 Daniel Dehennin
21 1 Lionel Morin
* Génération de la documentation d'API depuis le code (docstring)
22 4 Daniel Dehennin
23 4 Daniel Dehennin
h2. Modèle de développement avec Git
24 1 Lionel Morin
25 5 Daniel Dehennin
Utiliser le modèle de développement "Gitflow":http://nvie.com/posts/a-successful-git-branching-model/.
26 1 Lionel Morin
27 5 Daniel Dehennin
La version "AVH":https://github.com/petervanderdoes/gitflow-avh du logiciel *@gitflow@* est celle fournie par défaut sur Debian et Ubuntu, elle est maintenue contrairement à la version originelle.
28 5 Daniel Dehennin
29 5 Daniel Dehennin
* intégration des fonctionnalités si
30 2 Lionel Morin
** les tests passent
31 1 Lionel Morin
** le code est relu (Gerrit)
32 4 Daniel Dehennin
33 4 Daniel Dehennin
h2. Qualité du code
34 4 Daniel Dehennin
35 2 Lionel Morin
* Qualité du code (PyLint / JSLint)
36 2 Lionel Morin
* Couverture des tests
37 1 Lionel Morin
* Couverture de la doc : vérifier que toute l'API est documentée
38 4 Daniel Dehennin
39 4 Daniel Dehennin
h2. Intégration continue
40 4 Daniel Dehennin
41 3 Daniel Dehennin
* Intégration continue : exécution automatique des tests (jenkins)
42 4 Daniel Dehennin
43 4 Daniel Dehennin
h2. Déploiement d'environnements de Dev (Vagrant?)