-1

最近我一直在研究相对面向数据的应用程序。一般来说,他们往往是由以奇怪方式相关的类表示的数据的编辑器。我一直在通过UserControl为每种类型的对象设置一个来处理它,并且随着选择的更改,程序会为该对象显示适当的编辑器。

我为此制作的“框架”感觉笨重和凌乱。一般来说,我有一个两窗格的界面,左侧是“项目选择”控件,右侧是“工作区”。UI 必须通过确定UserControl要显示的内容来响应项目选择的大部分工作,并实施诸如撤消和询问用户是否要在更改项目之前保存数据等行为可能会变得混乱。这篇文章的灵感来自于我正在与一位同事一起开发的一个很好的“让我们的构建过程更容易”的应用程序,但它真的无法控制,以至于精心设计的重写可能会比当前代码完成的速度更快。 .

通过阅读一些 C++ 书籍,我对文档/视图架构有了初步的了解。我知道 .NET 中更现代的对应物可能是 Composite UI Application 块。问题是除了这些主题的快速演练或操作指南外,我从未见过任何东西。从来不是从“你应该如何为此设计一个应用程序”的观点,而是从“把这个粘贴到应用程序中,你就会明白!”的观点。我花了一两个小时来研究 CAB 文档,但这让我有些困惑。我不喜欢 CAB 主要是因为我很好奇事情是如何在幕后工作的,我想如果在我开始使用框架之前能够实现类似模式的简单版本,我会更感激它。

我真正认为我需要的是一个专注于这个问题的网站或书籍。我似乎没有得到的重要部分是如何将关注点分离到适当的位置;我习惯于用几种方法来设计我的数据类来处理数据,这似乎是控制器对象的工作?您认为哪些资料对介绍该主题有用?我看过很多文章都画了这样漂亮的图表我对这些架构的工作原理有了高级的了解。我认为我从来没有找到合适的资源来教我低级的“如何实现它”部分。

4

2 回答 2

1

我发现Martin Fowler 的这篇文章很好地概述了各种 UI 架构。希望能帮助到你 :)

于 2008-09-22T19:50:05.170 回答
0

我接受了@Luke H 的回答,因为它最终让我找到了一些相当不错的资源。

  • Martin Fowler 的书看起来一流,在我的队列中。
  • Jeremy Miller的 Build Your Own CAB 系列做得非常好。
  • 看起来我对设计模式有点太无知了,无法继续,所以我正在阅读 Head-First Design Patterns,然后是四人帮一书来帮助那里;之后我打算消化福勒的作品。
于 2008-10-08T20:58:27.270 回答