我正在用MVC模式開發一個帶extJS的應用程序,但我不確定在哪裏放置業務邏輯來保持它的可測試性。ExtJS 4 MVC結構與測試
讓我們看看下面的例子: 我有一個包含一些數字的商店。如果我點擊一個Button(Button1),我想要做一些計算,並希望在之後的彈出窗口中顯示結果。
這是我的方法: Button --onClick - > Controller1(事件監聽器) - > Controller2(從存儲中收集數字,進行計算)---> Controller1(異步調用結果)創建一個新的彈出框
當我這樣做時,我可以輕鬆地在Controller2中測試計算,因爲它與任何視圖都是絕對分離的。
這導致了兩種類型的控制器: - 與意見(事件偵聽器,並彈出引發劑) 交互控制器 - 控制器與業務邏輯
這是正確的做法?
你現在真的想要什麼?爲什麼你需要兩個控制器來做這麼簡單的操作? – vino20
@ vino20操作的簡單性應該不重要。 OP更多的是體系結構的問題,而不是如何完成特定的任務。 – existdissolve
@existdissolve,我接受你的話。 – vino20