Questa potrebbe sembrare una domanda strana per alcuni di voi.
Sono un programmatore Java hobbista. Ho sviluppato diversi giochi, un programma AI che crea musica, un altro programma per la pittura e cose simili. Questo per dirti che ho un'esperienza nella programmazione, ma non nello sviluppo professionale di applicazioni aziendali.
Vedo molte parole su questo sito riguardo alle prestazioni. Le persone spesso discutono su quale sarebbe l'algoritmo più efficiente in C # per eseguire un'attività, o perché Python è lento e Java è più veloce, ecc.
Quello che sto cercando di capire è: perché questo è importante?
Ci sono aree specifiche del computing in cui vedo perché le prestazioni contano: i giochi, dove decine di migliaia di calcoli accadono ogni secondo in un ciclo di aggiornamento costante o sistemi di basso livello su cui si basano altri programmi, come sistemi operativi e VM , ecc.
Ma per la normale e tipica app aziendale di alto livello, perché le prestazioni sono importanti?
Posso capire perché era importante, decenni fa. I computer erano molto più lenti e avevano molta meno memoria, quindi dovevi pensare attentamente a queste cose.
Ma oggi abbiamo tanta memoria da spendere e i computer sono così veloci: è effettivamente importante se un particolare algoritmo Java è O (n ^ 2)? In realtà, farà la differenza per gli utenti finali di questa tipica app aziendale?
Quando si preme un pulsante GUI in una tipica app aziendale e dietro le quinte richiama un algoritmo O (n ^ 2), in questi giorni di elaborazione moderna - si avverte effettivamente l'inefficienza?
La mia domanda è divisa in due:
- In pratica, oggi le prestazioni sono importanti in un tipico programma aziendale normale?
- Se lo fa, ti preghiamo di darmi esempi reali di luoghi in tale applicazione, in cui le prestazioni e le ottimizzazioni sono importanti.