Ora sto facendo un sacco di sviluppo SQL nel mio nuovo lavoro, dove prima stavo facendo applicazioni per desktop con Object Oriented. Continuo a scorrere script molto grandi (migliaia di righe) e voglio refactoring in qualche modo. Sto vedendo che SQL è un tipo diverso di bestia e probabilmente è meglio avere questi script grandi per la maggior parte, ma mentre lo spiegavo, la gente insiste che l'intera idea del refactoring è cattiva. Quelle cose come il compilatore .NET sono effettivamente gravate da codice refactored e che un grande muro di codice è più efficiente e migliore di un codice progettato per il riutilizzo, la leggibilità e la scalabilità.
L'altro argomento è che i compilatori OO sono quasi pericolosamente inefficienti e non hanno una gestione efficiente della memoria o eseguono troppe istruzioni della CPU rispetto ai vecchi compilatori "più semplici" e confrontati con SQL.
Questi reclami sono validi? Anche se un compilatore come un compilatore C è modestamente più "efficiente" (qualunque cosa significhi su questo livello alto senza vedere il codice) vorresti scrivere applicazioni in C su C # o Java? Il confronto di un compilatore OO con un compilatore / ottimizzatore SQL è ancora valido?