Presumo che per "buone pratiche" intendi un elenco di regole che qualcuno ha scritto in un libro. Per ovviamente se intendi letteralmente la frase, allora ovviamente dovresti sempre scrivere il miglior codice che puoi.
Devo sottolineare che non esiste un unico insieme di "migliori pratiche" universalmente accettato? Per qualsiasi regola promossa da un esperto, puoi quasi sempre trovare un altro esperto con le stesse credenziali che dica qualcosa di diverso.
Ma al punto: risposta breve: di solito, ma non sempre.
Ogni campo ha le sue "migliori pratiche" e "soluzioni per i libri di testo". Questi rappresentano l'esperienza accumulata e la saggezza di molte, molte persone per molti, molti anni e non dovrebbero essere ignorate. MA! Ci sono sempre circostanze speciali, casi marginali, ecc. La persona veramente capace in ogni campo sa quando seguire le regole e quando infrangerle.
Direi in generale: iniziare seguendo le regole del libro di testo. Quando si seguono le regole del libro di testo si creano problemi - complessità non necessaria, scarse prestazioni, qualunque cosa - quindi considerare se infrangere questa regola questa volta potrebbe non essere un'idea migliore.
Se ignori le regole e vai dove ti porta il capriccio del momento, il tuo codice sarà probabilmente un pasticcio confuso. Non importa quanto sei intelligente, non sei il primo programmatore al mondo. Ha senso imparare dall'esperienza degli altri. Nella nostra vita quotidiana, questo è il motivo per cui abbiamo genitori, insegnanti e predicatori: quindi non dobbiamo ripetere noi stessi ogni stupido errore per imparare che è uno stupido errore da fare.
Ma se segui con astuzia un elenco di regole di un libro il 100% delle volte, ti ritroverai spesso a martellare un piolo quadrato in una buca rotonda. Le persone che hanno scritto il regolamento potrebbero non aver trovato un caso come il tuo. E anche se lo hanno fatto, se è abbastanza raro potrebbero averlo ignorato. Una regola che funziona l'80% delle volte è una regola eccellente, a patto che tu capisca che funziona l'80% delle volte e non il 100% delle volte.
Ho scritto un libro sulla progettazione di database che include molte regole che consiglio ai progettisti di database di seguire. (Mi astengo dal dare il titolo in modo che non sembri sfuggire spudoratamente all'autopromozione.) Incoraggio certamente chiunque voglia progettare un database a leggere un libro come il mio e imparare tutto ciò che può da esso . Ma DI CORSO ci sono momenti in cui dovresti infrangere le regole che elenco.
Una volta ho scritto un documento sugli standard di programmazione per un team di sviluppatori che ho guidato in quel momento. E l'ultima regola è andata in questo modo: "Se hai una buona ragione per infrangere una delle regole di cui sopra, allora vai avanti, MA devi includere un commento nel tuo codice che spieghi perché hai infranto la regola. Se non puoi venire con una buona ragione, quindi segui la regola. Se scrivere il commento è più un problema che seguire la regola, segui la regola ". Abbiamo avuto solo poche volte in cui qualcuno ha trovato che infrangere una regola valeva la pena di dover spiegare il perché.