Perbandingan #if DEBUG
dan Conditional("DEBUG")
dalam projek besar
Dalam pembangunan projek berskala besar, terdapat dua cara utama penyusunan bersyarat: #if DEBUG
dan Conditional("DEBUG")
. Memahami perbezaan antara mereka adalah penting untuk membuat pilihan termaklum.
#if DEBUG
#if DEBUG
menentukan sama ada untuk mengalih keluar blok kod berdasarkan sama ada simbol DEBUG ditakrifkan. Jika DEBUG didayakan, kod dalam blok kod dikompilasi jika tidak, blok kod diabaikan sepenuhnya.
#if DEBUG
:
Conditional("DEBUG")
. #if DEBUG
Kelemahan:
#if
digunakan secara tidak konsisten, ia boleh menyebabkan pertindihan kod. Conditional("DEBUG")
Conditional("DEBUG")
mengalih keluar panggilan kaedah sambil mengekalkan definisi kaedah. Jika DEBUG dihidupkan, panggilan kaedah dilakukan seperti biasa; jika DEBUG dimatikan, panggilan itu ditinggalkan semasa penyusunan, tetapi definisi kaedah kekal tidak berubah.
Conditional("DEBUG")
:
Conditional("DEBUG")
Kelemahan:
Conditional("DEBUG")
dipanggil daripada kod yang belum disusun DEBUG, ini boleh menyebabkan tingkah laku mengelirukan. Pilih pilihan yang sesuai
Pilihan#if DEBUG
dan Conditional("DEBUG")
bergantung pada keperluan khusus projek.
Bila hendak digunakan #if DEBUG
:
Bila hendak digunakan Conditional("DEBUG")
:
Atas ialah kandungan terperinci `#if DEBUG` lwn. `Conditional('DEBUG') dalam Projek Besar: Kaedah Kompilasi Bersyarat Mana Yang Perlu Anda Pilih?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!