L'équipe R&D dans laquelle je suis a décidé d'adopter une norme de codage. Nous venons de nous former et avons trop peu de code et de temps de codage commun pour fonder notre document de normes / conventions sur ce qui s'est développé organiquement dans notre équipe et sur de bons exemples de notre propre code, etc.
Maintenant, chacun de nous a une certaine expérience des lieux de travail passés - bien qu'aucun de nous ne soit en train de dire "adoptons ce document complet ici que j'ai trouvé adapté au type de travail que nous faisons ici" (*). De plus, certains d'entre nous (y compris moi-même) n'ont d'expérience que dans des endroits sans norme de codage officielle, ou écrivent dans différentes langues dans un cadre différent (environnement de production à haute pression hebdomadaire par opposition à un travail de développement davantage axé sur la recherche)
Donc, l'une des options auxquelles j'ai pensé consiste à prendre un document relativement bien connu et bien considéré, à couper ce dont nous ne nous soucions pas / à prendre soin, et à apporter des modifications en fonction de nos préférences.
Est-ce une pratique courante? Croyez-vous que c'est une bonne idée? Dans l'affirmative, quelle serait une norme de codage «de base» raisonnable (ne me dites pas laquelle est la meilleure, je ne veux pas déclencher un conflit religieux ici; montrez simplement ce qui serait suffisamment complet ou «neutre» pour s'appuyer sur .)
Remarques:
- Nous nous attendons à travailler avec C, C ++, OpenCL, CUDA, Python.
- Nous sommes une équipe de 4 personnes + manager, qui devrait atteindre environ 5-6 en un an environ.
- Dans notre entreprise, les équipes sont presque entièrement autonomes et n'interagissent généralement pas du tout (même pas en utilisant le code de l'autre - le travail porte sur des projets entièrement différents); donc - pas de considérations à l'échelle de l'entreprise à faire.
- En ce qui concerne les outils, ce que nous savons pour le moment, c'est que nous allons utiliser Eclipse , donc son formateur de code sera au moins un outil. Ctrl + Shift + F est depuis longtemps mon ami
- Lorsque j'écris Java, j'ai adopté la pratique d'adhérer le plus strictement possible au Java efficace de Bloch . Maintenant, ce n'est pas tout à fait une norme de codage, mais vous pouvez appeler des briques, du ciment et du mortier pour une norme de codage. Je pensais éventuellement inclure quelque chose comme ça dans le «mix» (sachant que nous ne faisons pas Java).
- Je veux dire des normes de codage dans le sens large du mot, par exemple l' adoption de suggestions faites dans les réponses à cette question P.SE .
- J'ai trouvé une grande liste de documents sur les normes de codage C ++ ; peut-être que je devrais exploiter notre base de référence.
- (*) Ce n'est pas tout à fait vrai, mais je ne veux pas compliquer cette question avec trop de détails.