Sim*_*ons 4 .net c# wpf design-patterns mvvm
我是WPF的新手,我今天早上和我的C,C++背景的架构师进行了讨论.
我们正在尝试创建一个视频通话应用程序,它依赖于本机dll PInvoke.WPF应用程序主要是用户界面和代码,我们正在制作Pinvoke视频/音频呼叫并列出可用的驱动程序.
因此,如果我们从数据库谈论数据,那么我们的应用程序中没有太多的" 数据 ".
我们试图修改的WPF应用程序是Boghe,令人惊讶的是它们也没有使用MVVM.
虽然我热衷于实现MVVM,但架构师认为它不必要地将文件分成3部分.
他说,如果我们想要更改视图中的任何内容,例如更改按钮或任何控件,那么可以直接在后面的代码中完成.为什么然后使用MVVM?
虽然我有理论上的答案,但不能不同意他的观点.他真的对吗?
他说,如果我们想要更改视图中的任何内容,例如更改按钮或任何控件,那么可以直接在后面的代码中完成.为什么然后使用MVVM?
当然可以这样做.问题是它是否应该这样做.
对于相当小的代码库,您可能会在代码隐藏中混淆数据访问,核心逻辑和UI操作.然而,从长远来看,这将无法实现可维护或可测试的代码,随着时间的推移,混乱可能会变得更糟,变成意大利面条代码.请相信我的话,因为我工作时间的很大一部分用于扭转这些旧的混乱.
在代码隐藏中混合所有内容的一些后果是:
请注意,除了第一点之外,这些不是理论上的问题,而是典型的"遗留"代码库的非常实际的直接问题.
在我看来,说MVVM引入更多代码隐藏类并不完全正确.这显然是一个不赞赏将数据,业务逻辑和UI 逻辑层彼此隔离时出现的关注点基本分离的人的声明:即使使用MVVM,您的视图也只有一个代码隐藏类.其他两个类(是的,可能会有两个类)根本不能被视为"代码隐藏",因为它们不直接与视图/设计器绑定.
| 归档时间: |
|
| 查看次数: |
485 次 |
| 最近记录: |