【问题标题】:What are some standards to follow for organizing a solution?组织解决方案需要遵循哪些标准?
【发布时间】:2019-05-21 22:52:55
【问题描述】:

我一直在开发一个内部管理应用程序,该应用程序具有帮助自动化人们工作的各个方面的工具。该解决方案目前包含大约 40 种不同的表单,用于不同的目的。

我想知道是否应该遵循任何行业标准来将解决方案分解为单个项目/解决方案。我是否应该将所有这些表格作为根本解决方案的一部分?

我想在添加更多功能之前进行重组,因为这感觉像是一种不好的做法,并且在涉及大型解决方案时我想改进我的整体设计方法。

一些粗略的谷歌搜索出现了一些关于 Web 服务(数据访问层、服务器、客户端等)的不同层分离的结果,但该应用程序目前仅用于桌面。

我没有足够高的声誉来发布图片,但当前组织在解决方案的根级别拥有所有表单,并且只是按字母顺序列出的表单(如预期的那样),例如:frmAddEquipment 、frmAssignSoftware、frmBackupReports、frmContacts等

【问题讨论】:

    标签: .net architecture


    【解决方案1】:

    即使在桌面应用程序中,您也应该有图层。将您的应用程序分离为数据访问、业务逻辑和表示层将对您的应用程序施加结构和架构限制,从而提高可重用性、可支持性和可测试性。

    这当然假设您使用了基于层的架构模式。如果您没有,并且您的所有数据和业务逻辑都被捕获在您的表单中,并在各种表单上复制,那么您可能拥有我们所说的“ball of mud”架构,并且必须做出一些严肃的决定。你可以

    1. 将您的应用程序重构为目标架构 或
    2. 接受您已经构建了一次性应用程序,并继续您当前的路径。

    如果您决定重构为目标架构,它的模式通常意味着您的问题的解决方案。它将具有自然地允许您的应用程序适合各种项目的组件。如果你选择坚持下去,再多的重命名或项目拆分都无济于事,你只会让一个复杂的解决方案变得更加复杂,随意的规则,所以你还是保持简单吧。

    【讨论】:

    • 是的,我担心可能是这种情况,我从以前的开发人员那里继承了这个项目,从我的理解来看,它从单一形式发展到现在的几年。 . 因此,将这种混乱变成可持续的最佳方法是进入每种形式并尝试将尽可能多的代码分解为可重用的类和接口,然后我将它们放入数据访问和业务逻辑层,同时在每个表单的代码中保留表单的实际构造并将它们移动到“表示层”?
    • 你明白了。在系统的很大一部分被重构到目标架构之前,缓慢而缓慢的工作几乎没有回报。
    • 非常感谢您的反馈,这应该是一个很好的设计练习,即使需要一些时间!
    猜你喜欢
    • 2011-06-02
    • 1970-01-01
    • 2019-11-17
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-14
    • 2016-03-31
    相关资源
    最近更新 更多