首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sane设计替代方案

Sane设计替代方案
EN

Stack Overflow用户
提问于 2009-04-10 22:15:00
回答 2查看 159关注 0票数 0

我有一个(设计)应用程序,基本上是这样工作的:

Main类、BusinessLogic类、UserInterface类

BusinessLogic和UserInterface被设计成类似于库--不是持续开发的,而是供开发人员使用的,比如说,类Main。

BusinessLogic的构造函数还实例化了UserInterface,它将显示一个基于文本的菜单并接受终端输入。根据该输入,它将通过调用其各自BusinessLogic对象的相关方法来执行相关功能。

但是,这是一个循环引用,UserInterface没有明显的方法来调用其各自的BusinessLogic对象(没有硬编码的BusinessLogic对象标识符,但这是更糟糕的做法!)。

对我来说,这确实是一个合乎逻辑的设计,但很难用编程的术语来实现。

我考虑的一个替代方案是让UI简单地将输入数据返回给BusinessLogic的构造函数,但我不希望BusinessLogic处理输入分析,UI似乎是一个明智的选择。

有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2009-04-10 22:19:05

你应该试试Model-View-Controller pattern。在您的情况下,模型和控制器可能最终是相同的。通过接口将类彼此隔离,然后在外部创建这些类(在您的示例中是从Main创建的)将简化每个人的生活。

票数 2
EN

Stack Overflow用户

发布于 2009-04-10 22:33:33

这听起来像是您可能想要使用模型-视图-控制器模式。

此外,如果您希望减少部件之间的实例化依赖关系,则可能需要考虑像使用Spring一样使用dependency-injection

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/739035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档