编程用户界面(UI),c#的最佳解决方案?

编程用户界面(UI),c#的最佳解决方案?,c#,model-view-controller,user-interface,C#,Model View Controller,User Interface,我想知道是否有最著名的方法、架构、第三方库等来帮助开发人员编程UI 我正在考虑在以下方面有所帮助: 当查看其他人编写的代码时, 我想马上知道,UI服务于什么,UI的状态是什么, 国家依靠哪一个 可以清楚地将每个状态的逻辑分开的东西 在以下情况下,状态为所有组件的状态: 用户运行winform 用户做出决定并执行一些动作,这是他动作的结果 是UI表单的另一种状态 用户离开表单 等等 作为一名开发人员,用mvc编程是一件好事,因为允许分离逻辑(视图、操作和数据访问),当我看到事件在做某事时,

我想知道是否有最著名的方法、架构、第三方库等来帮助开发人员编程UI

我正在考虑在以下方面有所帮助:

  • 当查看其他人编写的代码时, 我想马上知道,UI服务于什么,UI的状态是什么, 国家依靠哪一个

  • 可以清楚地将每个状态的逻辑分开的东西

在以下情况下,状态为所有组件的状态:

  • 用户运行winform
  • 用户做出决定并执行一些动作,这是他动作的结果 是UI表单的另一种状态
  • 用户离开表单
  • 等等
作为一名开发人员,用mvc编程是一件好事,因为允许分离逻辑(视图、操作和数据访问),当我看到事件在做某事时,仍然会感到困惑,老实说,我必须重新思考在哪种情况下可能会发生,以及它在做什么和什么时候

你知道我的意思吗


非常感谢您的任何建议。

在WinForms中,这很难做到,因为GUI和代码之间是紧密耦合的

我建议改为使用WPF和MVVM(Model-View-ViewModel)框架,以便更好地将GUI与逻辑分离。这是一个比WinForms更好的开发模型

我想知道是否有最著名的方法、体系结构、第三方库等 帮助开发者开发UI

你为什么不明白?你有100%的机会,因为他们不止一个,答案永远不会是否定的

当查看其他人编写的代码时,我想立即知道,UI是什么 服务,UI的状态是什么,状态依赖于哪个

妄想症。即使在标准化代码库时,也不会发生这种情况,除非这些情况微不足道

最后,不管你遵循了多少种模式,一个复杂的用户界面就是一个复杂的用户界面,你不会把它归结为“麦当劳有多少种汉堡”。如果你不想思考,那就去麦当劳工作吧


模式可能会有所帮助,但表单差异很大,除了简单的showcase模式等,它们不会让您“即时、不思考”地访问其他人的代码。

谢谢您的回答。我会试一试。当然,你可以始终坚持你的方法,按照你的意愿发展,但是。。这是发明的问题。当某些事情可以改进时,人们就会这样做,因此,我们有很多解决方案、库和不同的方法。复杂的事情是复杂的,但是如果我们能够做更多的事情来减轻问题的复杂性,从而更容易维护代码,并且对其工作原理有一个全面的了解,那么代码就不那么容易出错,并且对其他开发人员来说更容易理解。如果这个答案中有一个重要的信息,对设计模式的过分关注从未使任何人的代码变得更好。这并不是说这些模式没有用处。但是,设计一款功能性应用程序比过分担心你在设计时遵循的模式更重要。断言复杂的代码库是复杂的,这是有道理的。无论你应用什么样的设计模式,只要你不处理肤浅的模型,就会有一些丑陋。这很好,只要代码编写得合理。说得好,基本上就是这样。无论您遵循多少种模式,复杂的UI从定义上来说都是复杂的,如果不付出一些努力,您将永远无法进入它。