如何连接UI和业务逻辑

gos*_*vka 3 java oop user-interface design-patterns

我不会描述项目细节或我正在使用的框架,因为问题更为笼统.

在用户界面和逻辑之间创建灵活交互的最佳方式是什么.我正在努力,因为不断发现我必须为用户提供一些功能,可以通过一些ui进行更改,但该功能的代码在代码的深处,所以我必须进行大量的重构.

在这种情况下你的做法是什么?也许建模基于事件的系统来调度/处理事件?就我而言,要求经常变化.

Dan*_*rod 5

使用MVx设计模式,如MVC,MVP,MVVM.

基本上:
*UI不应该调用BL.
*UI应该引发事件(或者更好,使用命令).
*UI-raised-events /命令应该在UI之外处理并调用BL.
*BL不应该调用UI.
*修改后的数据应该引发事件,BL应该引发事件.
*UI应该知道如何呈现数据(最好使用组合来呈现任何类型的数据,而不是整个UI依赖于不变化的数据类型).
*UI应刷新事件.