2009-06-09 44 views
3

我已經嘗試了許多PHP MVC框架,我注意到,在許多框架,你可以做這樣的事情:一般MVC問題 - 命名,結構(PHP)

$this->security->encodeForHTML(); 

所以,基本上還有一類安全,其中包含一個encodeForHTML()方法。這個安全類不是單身嗎?這種「內部」單身課程有沒有特定的名稱?

因爲有其他類不屬於單身:

$form = new Form; 

在這種情況下,只要你想,你可以創建許多形式。我明白了這一點,初始化許多安全類顯然沒有意義,但我想知道,這些類是否有名稱(除了單例和非單例)?一個人建議爲可以創建的類使用單詞「插件」,併爲那些在框架中構建的類使用「庫」。那有意義嗎?

感謝您的回覆!

回答

4

當前MVC時尚/命名約定調用這些Helper Classes/Objects,它與singleton/non-singleton正交(幫助者通常使用靜態方法創建爲單例和/或類,但它們不必be)

請參閱Zend Documentation for an example

一個插件不太正確的描述。通常,插件是由外部各方編寫的代碼/程序,以便在系統內利用和/或擴展功能。如果您使用的系統爲您提供了一種方法讓您編寫安全類,並讓它自動實例化並且可以調用方法,並且您的安全類可以通過標準的非hack方式調用System API辦法。

1

我同意你在帖子中提到的'一個人'。

IMO,它真的取決於你正在使用什麼樣的MVC框架。我還沒有嘗試過其他框架,但在CodeIgniter中,這屬於兩件事情,模型或庫。由於模型通常用於處理來自數據庫的信息,因此我會將這個'安全'類稱爲圖書館。