2013-12-17 27 views
1

我應該試着將所有的幫助函數保存在同一個文件中(比如說所有的函數都是在functions.php中),其代價是讀取不必要的函數,或者將函數存儲在單獨的文件中,我將只包含具有所需函數的文件,以犧牲包含更多文件的開銷爲代價?有多大的開銷可以包含單獨的幫助程序文件?我知道像圖標這樣的圖像,在一張圖像中加入圖標會更快,但我不確定此處是否適用。保持功能在同一個幫助文件或單獨的文件?

+0

如果你想分開存儲你的函數,嘗試將它們分組(按某種類別)。例如:與文件系統相關的幫助函數,修改字符串的函數,執行計算的函數等等。另一個原則是,當你碰到一個你喜歡的牆時,最好考慮一個不同的設計模式。在你的情況下,我可能會說,考慮一個更加反對的方法可以很好地爲你服務。 – SquareCat

回答

2

這完全取決於您正在進行的項目 - 有時一種方法可能更快,有時則是另一種方法。但是總的來說,只要避免製作大量的全局幫助函數,並將它們放在適當的類中,而不是像需要的那樣作爲靜態幫助器。然後閱讀autoloading,並注意PHP的魔術解決了這個問題,一切爲了你 - 根據需要自動加載和解析文件。

如果您還使用PHP 5.5+(或帶有類似opcache擴展的舊版本),則代碼甚至會被預編譯,從而進一步降低開銷。

一般來說更多 - 一旦你開始擔心你的代碼的解析開銷,你通常會犯premature optimization。在一個幾乎所有的網絡服務器都有四核心超線程數千兆赫處理器並且由RAID SATA存儲支持的環境中,加載額外的文件不會是一個現實問題。在完成所有代碼後查找真正的瓶頸,並將優化時間花費在那裏。

相關問題