我是开发新手,最近练习MVVM设计模式.在viewmodel&控制器我正在使用Closure.我知道我也可以使用Delegate.但是有什么惯例或理由我应该遵循什么样的沟通方式.我有点困惑.任何帮助将不胜感激.
解决方法
我也在寻找这个答案,我发现了这个,
将UI层(UIL)中的闭包传递到业务逻辑层(BLL)会破坏关注点(SOC).您准备的数据驻留在BLL中,所以基本上您会说“嘿BLL为我执行此UIL逻辑”.这是一个SOC. (在这里查找更多https://en.wikipedia.org/wiki/Separation_of_concerns.)
BLL应该只通过委托通知与UIL通信.这样BLL基本上就是说,“嘿UIL,我已经完成了我的逻辑执行,这里有一些数据参数,可以根据需要用来操作UI控件”.
所以UIL绝不应该要求BLL为他执行UI控制逻辑.应该只要求BLL通知他.
这是链接,您将获得更清晰的视图.