2016-05-11 101 views
0
  1. 假設每天有20,000人使用我的laravel應用程序。我創建了一個包含大約200個方法的控制器。另一方面,我用每種方法創建了20個控制器。哪一個是更好的方法,是否會影響應用程序的性能?
  2. 假設我想存儲每個用戶的5個組合圖像。我可以想到2種方法。一個是在表格上爲每個投資組合圖像插入一行 - >包含id | user_id | portfolio另一個是創建5列 - > - >id | user_id | portfolio_1 | portfolio_2 | ... etc哪一個是更好的方法?

回答

0

一般來說,有200個方法的控制器太多了...考慮SOLID的SRP(單個責任)原則。

而且這通常遠遠不如正確規範化的數據庫,而不是有編號列每個投資組合....當有人想增加更多的投資組合比你有編號列會發生什麼?使用編號列會限制您,迫使您在決定增加數據庫結構時更改它;正確規範化的數據庫並不限制你,沒有必要的代碼或數據庫的更改(或許比配置設置等)

0

對於200方法控制每一次通話,PHP句法分析器必須分析整個控制器。對於20方法控制器,語法分析器解析的代碼量較少,因爲我們通常每次調用一個控制器。

並且對於存儲第一種方法的組合圖像來說更優選。 因爲在顯示他們的第方法的時間大概就可以通過用戶$>組合()和顯示HTML迭代它們。

但對於第二種方法,你必須編寫幾乎相同的HTML 5時間。對於第一種方法,您還可以隨時增加投資組合圖片的數量。