我越使用Symfony2並與它的形式鬥爭越多,我得出的結論是它們是一個甚至不應該存在的巨大可怕的野獸。Symfony2表單組件 - 違反了MVC和SRP?
我遇到了這篇文章here,我發現我同意作者。即使這篇文章是針對Symfony 1.x的,我認爲它仍然適用於Symfony2中的Form組件。它看起來像表單組件試圖解決屬於模板,控制器和模型的問題,都集中在一個地方。這是否嚴重違反了MVC和/或SRP(單一責任原則)?
這可能是一個不同的問題,但我覺得它是一種相關 - 我也注意到很多關於symfony的嘗試可用捆,以解決視圖問題的觀點外,例如:
KnpMenuBundle - 你在服務器端使用oo-interface生成菜單(爲什麼不在視圖圖層所在的位置?)
IvoryCKEditorBundle - 將textarea轉換爲ckeditor是在視圖文件中的一個jquery行中完成的,那麼爲什麼這個bundle存在?我甚至不想統計那裏的線數。
所以它有點像Symfony的核心處處存在這些違規或我只是沒有得到它?
這些是第三方工具。儘管Sf2中存在設計缺陷,但實際的框架核心中的SRP違規行爲很少,只有在實用的解決方案時才適用。你看到的不是核心。 –
我的意思是說,它好像在Symfony的核心思想中存在某種東西,這會促使人們寫出這些瘋狂的包。但是,Form組件不是框架的核心組件嗎? – moljac024
Zend Framework中有這樣的組件,但它非常糟糕。我得出的結論是,創造任何形式的建築師都是徒勞無益的事情。 –