use*_*312 3 c# model-view-controller design-patterns
使C#源代码UI的大部分内容独立的基本技术是什么?
例如,我想为Winforms桌面应用程序编写我的源代码,我将能够插入到asp.net Web应用程序或WPF应用程序中进行非常小的更改.也就是说,无论UI技术如何,我都可以使用相同的源代码,以使其面向未来.
我知道CSLA框架可以做到这一点.
但是,如果我不使用CSLA(学习一个新的框架需要一些时间,而且目前我没有那么多时间花在它上面),应该注意什么点来实现我的这种能力. C#代码?
能给我举个例子?我已经在我的应用程序中使用了Business Objects和分层技术.但即便如此,我已经看到它需要大量编码才能将我的代码插入到新的UI技术中.
请不要向我提供任何肤浅的答案.
要使您的代码 UI 独立,请将不依赖于 UI 的逻辑放入单独的层或程序集中。将逻辑与演示分开。这是 MVC、MVP 和 MVVM 等所有模式所遵循的。它是软件结构的一个基本部分,您应该根深蒂固;如果不是,就这样吧。
将逻辑与演示分开。学习它。活下去。爱它。
编辑:
你能给我一个例子吗?我已经在我的应用程序中使用了 BO 和分层技术。但即便如此,我也看到需要大量编码才能将我的代码插入到新的 UI 技术中。
请不要给我任何肤浅的答案。
我看到你已经编辑了。请允许我详细说明:
无法摆脱某些依赖于 UI 的逻辑。UI 不是外壳;它们仍然具有逻辑和功能。但该功能应该只面向用户交互。显示数据。收集资料。花哨的图形技巧和动画,如果您的偏好在于那个方向。
剩下的交给业务层,这些东西可以重用。如果您正确分层,则可以避免每次为新 UI 框架编写程序时都必须重写核心功能。
但是你仍然需要重写 UI 的东西。