Apprezzo molto l'uso di librerie e framework. Tuttavia, esiste un limite in cui vengono utilizzati perché esistono, piuttosto che perché sono necessari. L'uso di diverse librerie geo-spaziali mi porta a credere che siano state abusate.
Di maggiore preoccupazione per me è la natura illeggibile del codice. Alcune caratteristiche che cerco in un buon codice:
- Chiaro codice di facile lettura. (Un manager con una conoscenza minima della lingua dovrebbe essere in grado di capire il codice.)
- Piccoli moduli che hanno uno scopo chiaro e dipendenze limitate. (alta coesione e basso accoppiamento).
- Codice ben formattato che è facile da scansionare.
- Commenti che spiegano cosa viene fatto dove necessario.
- Duplicazione limitata del codice, nessuna duplicazione delle funzionalità.
- Uso coerente delle librerie standard delle lingue.
- Uso appropriato di framework e librerie. (Questi dovrebbero essere standard di progetto / organizzazione.)
Sfortunatamente, ci sono molti sviluppatori che non si sono spinti al valore dei fattori di cui sopra. Non importa quanto sia complesso il problema, dovrebbe essere scomposto in componenti più semplici che vengono assemblati in una soluzione. Qualsiasi componente che rimane complesso dovrebbe avere una ragione documentata per cui è fatto così com'è. (Ci dovrebbe essere un motivo valido.)
EDIT: se l'intera soluzione è lunga meno di 60 righe, potrebbe essere opportuno farlo in un unico metodo. Il file sorgente dovrebbe avere diversi metodi tutti di dimensioni ragionevoli. Se ci sono metodi più lunghi, probabilmente hanno bisogno di ri-factoring. Mi interessa il numero di librerie geo-spaziali utilizzate per un semplice problema. (Tuttavia, ho visto alcuni semplici problemi per i quali la soluzione è molto complessa.)