为学士学位论文编写一个小型C#应用程序-我应该使用MVC模式吗?

时间:2018-08-24 11:45:00

标签: c# winforms model-view-controller

我目前正在写有关处理过程优化的学士论文,用于为另一个应用程序创建XML渲染样式表。 因此,我正在编写一个非常小的,非常基本的软件工具,该工具可以在树视图中显示XML结构。它使用户能够更改那些(添加和删除节点)并做一些简单的应用程序特定的工作。

为此,我使用Windows窗体。

我的问题是如果我应该使用特定的体系结构或设计模式(例如MVC),或者仅坚持工厂模式,命令,观察者等基本模式是否足够? 恐怕MVC会大材小用。但是另一方面,我担心我应该按原样使用它...

该工具应仅在台式机上运行。我认为初步开发后不会有任何更新。

希望有一些困难...

2 个答案:

答案 0 :(得分:1)

这里的大多数答案都会涉及观点。我倾向于建议您不要太担心,而是尝试以一种对您有意义的方式编写代码,然后在您开始工作后,看看是否有任何模式可以改善您的实现

其中许多模式只有在程序达到一定规模后才有意义。

我要补充一点,WinForms具有其自己的工作方式,该方式早于许多现代MVC。您可以穿上它,但不会感到完全自然。这也考虑到我的建议,即您首先要使解决方案正常工作,然后再探索各种方法来对其进行整理。

WPF可能更适合您正在构建的应用程序(HierarchicalDataTemplate),但是WPF的学习曲线非常陡峭。

当然,如果对您的工作进行评分的人们正在寻找模式的用途,那是另一回事。

祝你好运!

答案 1 :(得分:1)

在这种情况下使用特定的设计模式可能有两个主要原因:

  1. 您认为它使您更容易开发和维护代码库(这是在任何上下文中使用设计模式的主要原因)。
  2. 您认为它会很好地反映您的情况,并有可能提高您的成绩。

关于第一点,我假设您正在编写的代码不是长期项目。此规则有一些例外情况(例如this one),但通常大多数论文项目代码库都不会作为长期软件项目来维护,即使它们中的概念得以重复使用。

关于第二点,如果您认为可以轻松集成设计模式而无需为其编写更多的管道代码,而无需为您的论文编写代码,那么它可以帮助您更清晰地表达概念。但是,如果您觉得这会分散您的注意力,并且可以在没有它的情况下构建高质量的代码库,那么我会避免这样认为,尤其是在一个研究项目中,从开始到完成之间的概念可能会发生巨大变化,并且您教授可能不在乎“工程过度”。

如果有时间,我想说的最好的事情是首先使事情开始工作,然后再决定是否可以通过将其重构为特定的设计模式而获得价值。

>