這幾日因為頻繁的在網上看 MVC (PHP) 和親自實作了一些腳本,還有看Laravel
發現MVC都是一個文件中會去找許多的FUNCTION
然後甚至FUNCTION再去找FUNCTION
這跟寫在同一個頁面有哪些差別?
難道這樣速度不會變慢嗎?
因為這樣當它讀取了這個FUNCTION腳本時(一開始的ROUTER)
然後透過這個ROUTER再去找第二個甚至後面好幾個FUNCTION
這樣它不就是會一直去找其他腳本然後最後再RETURN回來
還是說其實這樣速度才會快?
所以寧願是幾十幾百個文件,但是每個文件裡面的腳本只有十幾行、幾十行
但若要完成某一個購物車功能他可能會 autoload 十幾個文件裡面的FUNCTION,最後每個FUNCTION 它們RETURN回來才會變成一個完整購物車(包含VIEW)
用這樣來細分,這樣執行速度反而比較快嗎?
MVC 架構是給多人協作時好用,當程式有上千人同時寫時每個人只寫幾個功能
但是只要一個人或許不必那麼麻煩,但是debug 時是要很清楚是哪個功能,那段程式在哪裡
將程式拆解成一小段一小段,越小越好,有好也有壞,易於除錯,多人協作,這是優點,效能變差是確定,但是能差多少,幾毫秒? 權衡開發時間短,除錯快,別人接手快,這些優點,所以流行