1. Pada era thinkphp3.2, ruang nama tidak digunakan, tetapi kod itu tidak kelihatan sangat rumit, dan ia tidak menyebabkan banyak kesulitan 2. Saya pernah melihat projek yang dilakukan oleh orang lain menggunakan ruang nama , setiap fail kelas juga menggunakan banyak ruang nama
3. Adakah ruang nama benar-benar diperlukan? Tidakkah menggunakannya akan menyusahkan?
Apabila banyak kelas yang anda perkenalkan mempunyai nama yang sama, anda akan tahu peranan ruang nama.
Sebagai contoh, terdapatkelas dalam Domain.
User
类,Service 里面有个User
类,Web 里面有个User
Bila bercakap tentang masalah, kenapa kita selalu guna tp untuk beri contoh?
Untuk projek besar, perlu
Jika tidak, adalah buruk jika perpustakaan yang berbeza diperkenalkan dan fungsi dengan nama yang sama keliru
modenphp diperlukan
Mungkin anda tidak dapat merasakan peranan ruang nama dalam projek yang anda dedahkan sekarang, tetapi orang harus melihat ke hadapan , Saya tidak akan bercakap banyak, hanya google dan banyak daripada mereka akan memberitahu anda mengapa anda perlu menggunakan ruang nama Anda hanya perlu tahu bahawa anda akan lebih baik jika anda menggunakannya arah yang lebih baik?
Bila bincang masalah, kenapa kita selalu guna tp untuk beri contoh 111
Mungkin anda tidak merasakan peranan ruang nama dalam projek yang anda dedahkan sekarang, tetapi orang harus melihat ke hadapan, perkara yang sama berlaku untuk kemas kini bahasa Apa pun Google akan memberitahu anda banyak tentang mengapa anda perlu menggunakan ruang nama.
Malah, tujuan utama ruang nama adalah untuk menyelesaikan masalah konflik antara kelas dengan nama yang sama.
Sebelum tiada ruang nama, cara penulisan lama adalah dengan menamakan kelas mengikut
peta kelas
. SepertiSystem_Controller.php
yang digariskan kepada tulisan semasaSystemController
;classmap
的写法去命名类。如System_Controller.php
下划线的写法;转变为现在的SystemController
的写法;无论是
classmap
,还是命名空间,只要按着一定的规则,然后通过spl_autoload_register
Sama adapeta kelas
atau ruang nama, cuma ikut peraturan tertentu dan kemudian memperkenalkannya melaluispl_autoload_register
. Ia tidak akan menyebabkan konflik nama kelas; ruang nama tidak diperlukan dalam projek, ia hanya produk pembangunan teknologi!Selain itu, ini sangat mirip dengan bahasa lain (seperti java, dll.). . Ha ha! !