Saya hanya tahu satu cara untuk menjawab pertanyaan ini, dan itu adalah untuk mendapatkan pengalaman dalam penyempurnaan kinerja. Itu berarti - menulis program, dan setelah ditulis, temukan speedup di dalamnya, dan lakukan iteratif. Ini salah satu contohnya.
Inilah kesalahan yang dibuat kebanyakan orang: Mereka mencoba mengoptimalkan program sebelum benar-benar menjalankannya. Jika mereka telah mengambil kursus pemrograman (dari seorang profesor yang tidak benar-benar memiliki banyak pengalaman praktis) mereka akan memiliki kacamata berwarna O-besar, dan mereka akan berpikir itu tentang semua itu . Ini semua masalah yang sama, optimasi sebelumnya. **
Seseorang berkata: Pertama, perbaiki, lalu perbaiki. Mereka benar.
Tetapi sekarang untuk si penendang: Jika Anda telah melakukan ini beberapa kali, Anda mengenali hal-hal konyol yang Anda lakukan sebelumnya yang menyebabkan masalah kecepatan, jadi Anda secara naluriah menghindarinya. (Hal-hal seperti membuat struktur kelas Anda terlalu berat, dibanjiri notifikasi, ukuran panggilan fungsi yang membingungkan dengan biaya waktunya, daftarnya terus-menerus ...) Anda secara naluriah menghindarinya, tetapi tebak seperti apa kelihatannya bagi yang kurang- berpengalaman: optimasi prematur!
Jadi debat konyol ini berlangsung terus-menerus :)
** Hal lain yang mereka katakan adalah Anda tidak perlu khawatir lagi, karena kompiler sangat bagus, dan mesin sangat cepat saat ini. (KIWI - Kill It With Iron.) Tidak ada peningkatan kecepatan perangkat keras atau sistem eksponensial (dilakukan oleh insinyur pekerja keras yang sangat pintar) yang mungkin dapat mengompensasi perlambatan perangkat lunak eksponensial (dilakukan oleh programmer yang berpikir seperti ini).