簡體   English   中英

MVC中“當前對象”的概念在哪里適合?

[英]Where does “current object” concept fit in MVC?

可以將許多帶有GUI的應用程序視為處理對象的集合(可能在多個級別)。 例如,聯系人列表或一組文檔。 而且,在應用程序中可能存在“當前對象”(當前聯系人,當前文檔等)的概念,並且某些GUI控件使操作在此當前對象(而不是集合中的其他對象)上發生。 顯然,GUI應該提供一種在對它執行新操作之前選擇其他對象作為“新的當前對象”的方法。 我認為這是一個非常普遍的情況,因此對於將這種概念(例如,列表中的整數索引)放置在MVC模式中的位置,也許有一個非常普遍的解決方案。

我覺得它應該不在模型之內(我可以想到一個應用程序,其中有幾個視圖/控制器對共享一個模型,並且每個視圖對選定的對象還是當前的對象都有自己的看法),但是我一直無法通過“搜索”確認。

我想知道指向討論此主題的作者的指針。 此外,歡迎您發表意見(如果此論壇允許這種討論)。 謝謝。

免責聲明:我的主要語言是PHP,並且只在Web上下文中具有與MVC相關的模式的經驗(由於Web本身的明顯局限性,大多具有Model2變體),這使我對 MVC結構有了更深的理解

我將當前對象的概念視為模型層狀態的一個方面。 當前對象不應直接暴露於MVC三合會的其他部分。 控制器和視圖都只能通過模型​​層的較高/公共部分(我傾向於將其稱為“服務”,但這是一個不好的名字)來訪問它。

這使您可以自由地更改,操作和交換標記為“當前”的對象。 同時,MVC的其他部分不受直接影響。

至於有關該主題的材料,我還沒有真正看到專門討論該主題的文章/書籍。 我建議的最好方法是再次閱讀《企業應用程序體系結構的模式》

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM