Ich gehe davon aus, dass mit "Best Practices" eine Liste von Regeln gemeint ist, die jemand in ein Buch geschrieben hat. Wenn Sie den Ausdruck wörtlich meinen, sollten Sie natürlich immer den besten Code schreiben, den Sie können.
Muss ich darauf hinweisen, dass es nicht eine einzige, allgemein anerkannte Reihe von "Best Practices" gibt? Für jede Regel, die von einem Experten befördert wird, können Sie fast immer einen anderen Experten mit gleichen Anmeldeinformationen finden, der etwas anderes sagt.
Aber auf den Punkt: Kurze Antwort: In der Regel, aber nicht immer.
Jeder Bereich hat seine "Best Practices" und "Lehrbuchlösungen". Diese repräsentieren die gesammelte Erfahrung und Weisheit vieler, vieler Menschen über viele, viele Jahre hinweg und sollten nicht ignoriert werden. ABER! Es gibt immer besondere Umstände, Randfälle usw. Die wirklich fähige Person in jedem Bereich weiß, wann sie die Regeln befolgen und wann sie sie brechen muss.
Ich würde allgemein sagen: Beginne damit, die Regeln des Lehrbuchs zu befolgen. Wenn das Befolgen der Schulbuchregeln zu Problemen führt - unnötige Komplexität, schlechte Leistung, was auch immer -, sollten Sie überlegen, ob es keine bessere Idee ist, diese eine Regel einmal zu brechen.
Wenn Sie die Regeln ignorieren und gehen, wohin Ihre Laune Sie auch führt, wird Ihr Code wahrscheinlich ein Durcheinander sein. Egal wie schlau Sie sind, Sie sind nicht der erste Programmierer der Welt. Es ist sinnvoll, aus den Erfahrungen anderer zu lernen. In unserem täglichen Leben haben wir deshalb Eltern, Lehrer und Prediger: Wir müssen nicht jeden dummen Fehler wiederholen, um zu lernen, dass es ein dummer Fehler ist, den wir machen.
Wenn Sie jedoch 100% der Zeit einer Liste von Regeln aus einem Buch folgen, werden Sie häufig feststellen, dass Sie einen quadratischen Stift in ein rundes Loch hämmern. Die Leute, die das Regelbuch geschrieben haben, sind möglicherweise nicht auf einen Fall wie Ihren gestoßen. Und selbst wenn dies der Fall ist, haben sie es möglicherweise ignoriert, wenn es selten genug ist. Eine Regel, die 80% der Zeit funktioniert, ist eine hervorragende Regel - vorausgesetzt, Sie verstehen, dass sie 80% der Zeit und nicht 100% der Zeit funktioniert.
Ich habe ein Buch über Datenbankdesign geschrieben, das viele Regeln enthält, denen ich Datenbankdesignern rate, zu folgen. (Ich werde es unterlassen, den Titel zu nennen, damit ich nicht so aussehe, als würde ich schamlos in der Eigenwerbung ausrutschen.) Ich ermutige jeden, der eine Datenbank entwerfen möchte, ein Buch wie das meine zu lesen und alles daraus zu lernen . Aber natürlich gibt es Zeiten, in denen Sie die Regeln brechen sollten, die ich aufführe.
Ich habe einmal ein Dokument mit Programmierstandards für ein Entwicklerteam geschrieben, das ich damals geleitet habe. Und die letzte Regel lautete ungefähr so: "Wenn Sie einen guten Grund haben, gegen eine der oben genannten Regeln zu verstoßen, fahren Sie fort, ABER Sie müssen einen Kommentar in Ihren Code einfügen, der erklärt, warum Sie gegen die Regel verstoßen haben. Wenn Sie nicht kommen können Wenn das Schreiben des Kommentars schwieriger ist als das Befolgen der Regel, befolgen Sie die Regel. " Wir hatten nur eine Handvoll Fälle, in denen es sich lohnte, erklären zu müssen, warum jemand gegen eine Regel verstieß.