我正在設計一個待辦事項列表iOS應用程序。我有多個表視圖,它們都修改相同的列表數組。我應該使用singleton類來執行列表數組模型,以便它始終保持最新狀態,而不管哪個表視圖正在訪問它?使用多個控制器時,Model類應該是Singleton嗎?
最好是擁有一個包含模型數據的主控制器類(singleton),並且有一些與數據交互的方法。然後讓其他控制器在主控制器上調用這些方法?
我正在設計一個待辦事項列表iOS應用程序。我有多個表視圖,它們都修改相同的列表數組。我應該使用singleton類來執行列表數組模型,以便它始終保持最新狀態,而不管哪個表視圖正在訪問它?使用多個控制器時,Model類應該是Singleton嗎?
最好是擁有一個包含模型數據的主控制器類(singleton),並且有一些與數據交互的方法。然後讓其他控制器在主控制器上調用這些方法?
這當然是一種方法來做到這一點,當然。
如果您以後決定要基於文檔創建應用程序,那麼您可能需要返回並重構,因此在做出決定前先考慮將來的使用。
是的,這就是MVC的想法。您有一個模型和它的多個視圖,由多個視圖控制器編排的交互。
儘管這是iOS開發中非常常見的方法,但您不必將模型設置爲單例。
這樣做完全可行,但您失去了可能擁有多個模型對象的靈活性。我個人建議擁有某種單一的「經理」,從後端(或來自任何地方)獲取模型,並持有模型的參考。
不,模型不應該是單身人士。單身人士被濫用。您可能希望爲用戶提供創建多個待辦事項列表的功能。例如,也許一個用於家庭,一個用於工作。每個列表將是待辦事項列表數據模型的單獨實例。
使用單例會阻止您擁有多個活動的待辦事項列表。