Open Mike Code Organisation

Ordonnez-vous vos fonctions et vos variables en fonction de leur objectif ou d’un ensemble de règles immuable? Ceci est Open Mike, une série de messages de discussion pour jeter le chat parmi les pigeons. Ces messages parlent de vous - nous voulons connaître votre opinion, vos idées et vos réflexions. Celui-ci est aussi simple qu'ils viennent; une question, un sondage, mais une discussion potentiellement énorme. Écoutons ce que vous avez à dire à propos de organisation du code.

Il existe deux approches pour classer les propriétés et les méthodes dans vos classes:


L'approche méthodologique

Vous pourriez avoir un ensemble de règles strictes, comme:

  • Les importations sont classées par ordre alphabétique.
  • Les consts publics viennent immédiatement après le nom de la classe, puis les consts privés.
  • Après les constantes viennent les variables: public, protégé, privé, puis interne; tous classés par ordre alphabétique.
  • La fonction constructeur vient après les variables.
  • Les fonctions publiques viennent après le constructeur, puis sont protégées, privées et internes; encore une fois, tout cela dans l'ordre alphabétique.

Ces règles ne prennent en compte aucune des variables ou fonctions faire; ils vous fournissent simplement un moyen simple de vous assurer que tout est à sa place. Vous pouvez facilement trouver le code que vous recherchez, bien qu'un éditeur de code décent facilite tout de même cette tâche..


L'approche fonctionnelle

De l’autre côté du spectre, vous pouvez regrouper vos fonctions et variables par leur objectif. Peut-être que tout le code lié à l'initialisation d'une classe va en haut, alors que le code pour la déconstruire va en bas.

Cela facilite la lecture du code, mais il peut être plus difficile de trouver rapidement une fonction spécifique. Certains diront que cela est inutile, car une classe ne devrait contenir le code requis que dans un seul but.


Quelle est votre approche?

Alors, comment arrangez-vous votre code? Méthodiquement, fonctionnellement ou un mélange des deux? Participez à notre sondage sur Facebook et faites-le nous savoir :)