Je suppose que par "meilleures pratiques", vous entendez une liste de règles que quelqu'un a écrites dans un livre. Car bien sûr, si vous entendez l'expression littéralement, alors bien sûr, vous devez toujours écrire le meilleur code possible.
Dois-je souligner qu’il n’existe pas un ensemble unique de «meilleures pratiques» universellement acceptées? Pour toute règle promue par un expert, vous pouvez presque toujours trouver un autre expert avec des informations d'identification égales qui dit quelque chose de différent.
Mais au fait: Réponse courte: généralement, mais pas toujours.
Chaque domaine a ses «meilleures pratiques» et ses «solutions de manuels». Ceux-ci représentent l'expérience accumulée et la sagesse de beaucoup, beaucoup de gens au cours de nombreuses années et ne doivent pas être ignorés. MAIS! Il y a toujours des circonstances spéciales, des cas marginaux, etc. La personne vraiment capable dans n'importe quel domaine sait quand suivre les règles et quand les enfreindre.
Je dirais en général: commencez par suivre les règles du manuel. Lorsque le respect des règles du manuel conduit à des problèmes - complexité inutile, performances médiocres, peu importe - alors examinez si enfreindre cette règle une seule fois ne serait pas une meilleure idée.
Si vous ignorez les règles et allez où votre caprice du moment vous mène, votre code sera probablement un gâchis. Quelle que soit votre intelligence, vous n'êtes pas le premier programmeur au monde. Il est logique d'apprendre de l'expérience des autres. Dans notre vie quotidienne, c'est pourquoi nous avons des parents, des enseignants et des prédicateurs: nous n'avons donc pas à répéter chaque erreur stupide nous-mêmes pour apprendre que c'est une erreur stupide à faire.
Mais si vous suivez servilement une liste de règles d'un livre 100% du temps, vous vous retrouverez souvent à marteler une cheville carrée dans un trou rond. Les personnes qui ont écrit le livre de règles n'ont peut-être pas rencontré un cas comme le vôtre. Et même s'ils l'ont fait, si c'est assez rare, ils l'ont peut-être ignoré. Une règle qui fonctionne 80% du temps est une excellente règle - tant que vous comprenez qu'elle fonctionne 80% du temps et non 100% du temps.
J'ai écrit un livre sur la conception de bases de données qui comprend de nombreuses règles que je conseille aux concepteurs de bases de données de suivre. (Je m'abstiendrai de donner le titre pour ne pas avoir l'air de glisser sans vergogne dans l'autopromotion.) J'encourage certainement tous ceux qui veulent concevoir une base de données à lire un livre comme le mien et à apprendre tout ce qu'ils peuvent en tirer. . Mais bien sûr, il y a des moments où vous devez enfreindre les règles que j'énumère.
J'ai écrit une fois un document sur les normes de programmation pour une équipe de développeurs que je dirigeais à l'époque. Et la dernière règle était la suivante: "Si vous avez une bonne raison d'enfreindre l'une des règles ci-dessus, alors allez-y, MAIS vous devez inclure un commentaire dans votre code expliquant pourquoi vous avez enfreint la règle. Si vous ne pouvez pas venir avec une bonne raison, puis suivez la règle. Si écrire le commentaire est plus difficile que de suivre la règle, alors suivez la règle. " Nous n'avons eu qu'une poignée de fois que quelqu'un a trouvé une violation d'une règle qui valait la peine d'avoir à expliquer pourquoi.