cocoa - 创建模型类

标签 cocoa model instantiation

我已经浏览了其他问题,但仍在努力,因此如果有人能花时间看看这个,我将不胜感激:)。

我目前的应用程序工作正常,但我一直在阅读并确定它不适合 MVC 设计模式。我仍在学习很多有关设计的知识,并希望对其进行编辑,使其更加健全。

我想我知道我的模型类中应该包含什么,并且我认为它应该在应用程序委托(delegate)中实例化。我的问题是:为什么在那个位置?惰性实例化是最好/正确的方法吗?最后,一旦启动,我是使用属性来访问该类还是使用特殊方法?

抱歉,重载了;我也在努力提高我的声誉,以便对其他问题进行投票! :)

最佳答案

很难回答这样的一般性问题,因为实现任何特定项目的方法有很多种。一般来说,我认为在应用程序委托(delegate)中实例化模型类不一定是正确的方法。由于 Controller 类在模型和 View 之间进行中介,因此通常最好在 Controller 类中实例化模型 - 例如,我有一个程序可以跟踪我花园中的植物,而我的 Controller 类是NSArrayController。在 Controller 中创建新的植物对象,然后将它们添加到其排列的对象中似乎是有意义的。我尝试尽可能减少类之间的连接(通过属性或 ivars),我的想法是每个类都应该尽可能地处理自己的业务。通常,您不需要对该类进行引用,因为您正在调用类方法来创建新对象,然后这些对象可以访问该类的任何实例方法,而无需对该类进行任何显式引用。

关于cocoa - 创建模型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10180717/

相关文章:

Laravel Eloquent ORM - 如何获取数组中集合的所有属性?

flutter - 如何从 StreamBuilder 将数据正确保存到我的模型中

xcode - 如何在 Swift 中断言对象实例化?

C++模板实例化指针空错误

cocoa - 使用 cocoa 刷新 Finder 中文件或文件夹的图标

swift - 在命令行应用程序中从键盘输入

machine-learning - 为什么基于树的模型不需要对名义数据进行one-hot编码?

actionscript-3 - as3 {} 与新对象

cocoa - 执行 NSURLRequest 并通过表单变量传递值

objective-c - 为什么viewController的初始化器没有在它的接口(interface)文件中声明?