Saya selalu menulis program ASP dengan santai, tanpa banyak mempertimbangkan efisiensi pengoperasian. ASP cukup toleran terhadap sintaksis dan memiliki toleransi kesalahan yang tinggi. Dapat digunakan secara langsung tanpa mendefinisikan variabel. Nama variabel tidak perlu membedakan huruf besar dan kecil. Nama file ASP juga tidak sensitif terhadap huruf besar dan kecil JSP. Oleh karena itu, di antara banyak bahasa yang pernah saya gunakan, asp adalah bahasa yang paling tidak ketat dan memiliki persyaratan paling rendah untuk pemrogram.
Kemarin saya menguji perbandingan kecepatan lari asp.net, php dan asp. Hari ini saya ingin melihat seberapa besar pengaruh variabel yang ditentukan dan variabel yang tidak ditentukan terhadap efisiensi kerja asp. Hasilnya mengejutkan daripada variabel yang tidak ditentukan. Variabel dua kali lebih cepat!
Program pengujian masih sama seperti kemarin, menjalankan perulangan for sebanyak 10 juta kali untuk mendapatkan waktu eksekusi.
1. Program tidak mendefinisikan variabel (redup i)
Copy kode kodenya sebagai berikut:
<%
waktu mulai redup
waktu mulai=pengatur waktu()
untuk i = 1 sampai 10000000
Berikutnya
akhir zaman redup
waktu berakhir=pengatur waktu()
respon.Waktu eksekusi halaman tulis: & FormatNumber((waktu akhir-waktu awal)*1000,3) & milidetik
%>
2. Program mendefinisikan variabel (redup i)
Copy kode kodenya sebagai berikut:
<%
redupkan aku
waktu mulai redup
waktu mulai=pengatur waktu()
untuk i = 1 sampai 10000000
Berikutnya
akhir zaman redup
waktu berakhir=pengatur waktu()
respon.Waktu eksekusi halaman tulis: & FormatNumber((waktu akhir-waktu awal)*1000,3) & milidetik
%>
Setiap program dieksekusi sebanyak 5 kali (kecuali eksekusi pertama), kemudian diambil nilai rata-ratanya. Berikut hasil tesnya:
Tentukan variabel | Waktu pelaksanaan | waktu rata-rata | ||||
TIDAK | 1890 ms | 1859ms | 1844ms | 1875ms | 1859ms | 1865ms |
Ya | 890 md | 890 md | 984 md | 875 md | 890 md | 905ms |
Dari hasil pengujian di atas terlihat bahwa kecepatan eksekusi asp dua kali lebih cepat saat mendefinisikan variabel dibandingkan tidak mendefinisikan variabel.
Mengenai alasannya, saya belum mempelajarinya lebih jauh. Namun melalui contoh ini, saya sangat merasakan bahwa pemrograman yang terstandarisasi dapat membuat program berjalan lebih efisien. Untuk pemrograman non-standar, meskipun bahasanya sendiri toleran terhadap kesalahan, proses analisisnya memerlukan waktu. Tentu saja, untuk program sederhana, perbedaan waktu antara standardisasi dan non-standardisasi mungkin minimal, namun jika sistem yang Anda kembangkan relatif besar, dengan banyak halaman dan pemanggilan fungsi, maka perbedaan antara standardisasi dan non-standardisasi akan menjadi dapat diabaikan. Perbedaan konsumsi waktu akan disorot, mulai dari 1 atau 2 kali hingga puluhan kali lipat.