0

我已經繼承了一個內置於PHP MVC框架(本例中爲Zend)的項目,並且針對網站的移動版和桌面版使用了不同的模塊。該項目處於早期階段(所以功能只有大約20%完整且有問題),並且您可能已經猜到有很多重複的代碼。站點的移動版和桌面版應該在單獨的Zend模塊中嗎?

桌面和移動網站將有不同的佈局,雖然有共同的元素。我的直覺告訴我將這些分離成不同的Zend模塊是而不是的最佳方法。我認爲我應該將代碼重構爲單個模塊,並儘可能將佈局差異限制爲視圖。此外,儘可能地利用響應式設計,並在必要時僅使用單獨的視圖(如我客戶的要求所規定)。從概念上講,我發現這種方法有許多優點,但是對於Zend(以及移動設計)來說相當新穎,我想知道如果我做這個重構,是否會遇到任何Zend特定的問題(只是在這裏有點偏執)?

一般認爲「最佳實踐」(移動&桌面協同設計)?任何關於Zend MVC的具體建議?

回答

1

擁有模塊的原因是爲了將模型分爲不同的關注領域,比如用戶部分/管理部分,其中您有兩個不同的模型。

使用模塊在移動和桌面版本之間進行分離絕對是錯誤的方法,你將在任何地方都有重複的代碼。如果您以後需要支持更多的移動設備,該怎麼辦?您可能會重複使用相同的代碼3次,4次或更多次。

你的直覺是正確的,模型將保持不變,移動或桌面。控制者應該相應地決定向客戶提供哪個視圖。

有這個問題將是一個很好的測試,你已經正確地分辨了你的顧慮。您應該最終建立一個系統,您可以通過很少的努力放棄額外的視圖,並且根本不需要修改模型。

這是一個相當簡單的答案,是什麼是一個很大的主題,但我希望它有幫助。

+0

是非常有幫助。謝謝! – PeterG

相關問題