通常在使用C#编程时,我会根据领域驱动设计原则来构建项目。我刚开始学习用Objective C编写iPhone应用程序,想知道是否有人有示例项目或代码,使用Objective C的领域驱动设计原则。我正在寻找如何使用业务对象等方面的示例。谢谢!
通常在使用C#编程时,我会根据领域驱动设计原则来构建项目。我刚开始学习用Objective C编写iPhone应用程序,想知道是否有人有示例项目或代码,使用Objective C的领域驱动设计原则。我正在寻找如何使用业务对象等方面的示例。谢谢!
例如,你可以非常容易地“劫持”对象发送的消息(拦截方法调用),只需覆盖几个方法即可,如果你明白我的意思,这使得依赖注入和单元测试非常容易实现。
此外,Grand Central Dispatch 使得在系统间进行解耦的消息传递非常方便,你可以使用它来简化你的领域中大部分部分之间的通信。
最后,基础框架中的key-value observing约定允许你轻松地将你的领域对象连接到用户界面元素,并实时反映更改。
也就是说,你的控制器不会直接操作服务对象,而是向其中一个领域对象发送命令来修改其状态。通过使你的控制器观察这些更改(通过KVO机制),状态很容易被反映回来。
我会说在ObjC中遵循DDD原则是完全可能的/甚至更容易。
Movie
由基于Core Data的存储库创建,该存储库获取ManagedMovie
并复制属性)太过繁琐。Core Data的内容是基础设施的一部分,不留给领域本身任何空间。你如何解决这个问题呢? - ctietze