Wizard ha scritto:(...) richiedeva una soluzione più banale in quanto voleva cercare di tirar fuori un modus operandi o al limite una guida da leggere per scegliere la strada migliore durante la scrittura del codice.
Un breviario vero e proprio non so se c'è e dovesse esserci non saprei quanto potrebbe essere d'aiuto.
Non è detto che leggibilità del sorgente ed efficienza del codice siano difficili da ottenere, ovvio scriverlo, ma dipende da chi ci mette le mani.
Che poi il connubio esprima pure una ottimizzazione è un altro discorso.
Il programma può "girare" molto bene benché siano state utilizzate enne variabili in più rispetto allo stretto necessario e non essere considerato come ottimizzato proprio per il ricorso a quelle variabili.
La soggettività riveste un ruolo talmente importante che l'esecuzione di un test multiplo può essere meglio se fatto in un modo piuttosto che in un altro.
Dipende proprio dalla persona.
Condivido col fatto che certamente delle regole di base ma anche di buon senso (pianificazione e impostazione) guidano alla stesura di un sorgente "ben fatto" oltre che, probabilmente, più abbordabile per un soggetto terzo ma, per quanto, è e resta sempre un programma scritto da altri.
Poi, tutto quello che viene riportato in un sorgente deve comunque essere coerente ivi compresi i commenti che, se non allineati al proposito dello statement riferito, possono addirittura essere fuorvianti e quindi addirittura dannosi.
Insomma, prendere in mano un programma scritto da altri, che sia per esempio in ambito gestionale piuttosto che un'applicazione d'automazione industriale è sempre, potenzialmente, un problema perché, mentre cerchi di capire quello "che fa" ti trovi con l'esigenza di "entrare nella testa" di quello che l'ha redatto.
Certamente i corretti propositi andrebbero sempre perseguiti quando si approccia un progetto software/firmware ma a volte non è proprio possibile, perché l'alternativa sta nell'alzare le mani: realtà di questo genere ne esistono e situazioni che ti portano a lavorare malissimo si verificano oggi più di ieri.
Nella impostazione e scrittura di un programma, l'aspetto più rilevante, dal mio punto di vista, sta nel conferirgli una struttura che in seguito permetta l'esecuzione di modifiche con interventi "puliti", che non conducano alla perdita di controllo: si dovrebbe cioè essere "sempre" in condizione di valutare con ragionevole certezza, e quindi prevedere, le conseguenze delle alterazioni apportate.
Che questa "predisposizione" la si raggiunga anche tramite un coerente uso delle variabili, dei loro nomi, piuttosto che di una indentazione "pulita" è un altro discorso, importante, ma è un altro discorso.
Con questo non vado ad aggiungere nulla di nuovo a quanto contengono gli altri Post(s), è solo il mio punto di vista ma la realtà o le realtà, nel momento in cui per vari motivi vieni coinvolto nella modifica di un sorgente altrui, sono più che varie come le relative criticità.
Saluti
W - U.H.F.