1.在thinkphp3.2時代沒有使用命名空間,但是程式碼看起來也不會很冗餘,也沒說造成什麼太大的不便
2.之前曾經看過一個其他人做的專案使用命名空間,看起來其實每個類別檔案也use很多命名空間
#3.究竟命名空間真的很有必要用嗎?不用就會造成不便嗎?
我想大声告诉你2017-06-05 11:09:17
當你引入的類別中有很多是同名的時候,你就知道命名空間的作用了。
例如 Domain 裡面有個 User
類,Service 裡面有個 User
類,Web 裡面有個 User
類。
習慣沉默2017-06-05 11:09:17
可能現在你接觸到的項目感覺不出命名空間的作用,但人是應該向前看的,語言的更新也是一樣的,任何事物存在即合理,至於命名空間的作用就不多說了,隨便google一下一大堆告訴你為什麼要用命名空間,你只需要知道你使用了會更好,人不就是往更好方向發展嗎?
怪我咯2017-06-05 11:09:17
可能現在你接觸到的項目感覺不出命名空間的作用,但人是應該向前看的,語言的更新也是一樣的,任何事物存在即合理,至於命名空間的作用就不多說了,隨便google一下一大堆告訴你為什麼要用命名空間,你只需要知道你使用了會更好,人不就是往更好方向發展嗎?
黄舟2017-06-05 11:09:17
其實命名空間的主要目的就是為了解決同名類別衝突的問題。
在還沒有命名空間,老式的寫法是照classmap
的寫法去命名類別。如System_Controller.php
下劃線的寫法;轉變為現在的SystemController
的寫法;
無論是classmap
,或是命名空間,只要按著一定的規則,然後透過spl_autoload_register
方式去引入。都不會造成類別名稱的衝突;命名空間在專案中不是必須,只是一個技術發展的產物!
況且這點跟其他語言很類似(如java等),大家都這樣,PHP不這樣話,跟不上潮流。 。哈哈! !