我们有10个应用程序更新帐户平衡表,没有记录信用/借方线交易(不确定原因)。它们都有几乎相同的SQL语句。为了摆脱这种结构,并记录事务,我们提出以下建议。是否有其他方法建议让设计更优化或更抽象,回顾最后一种方法?
10个应用程序->嵌入式SQL ->更新数据库平衡
10个应用程序
10个应用程序->服务层->(包括TransactionLine存储库
发布于 2018-08-18 13:39:15
的快速概述
在会计的域名中,有以下不同但相关的概念:
除了基本的(以及这里有些简化的)概念之外,在所有情况下都有一些业务逻辑可以确保:
目前的方法对每个应用程序的质量都非常敏感。每个应用程序都可能打破规则,在所有其他应用程序的帐户中造成混乱。
Linq方法确保了所有应用程序之间的更好的一致性。但是,您确定可以保证所有新域对象的一致更新,特别是如果您要更新一个应用程序而忘记重新编译/部署其他应用程序的话?
更抽象的方法似乎有一个更干净的架构。此外,它还实现了一个健全的分离关注点:
因此,最终,应用程序不应该再做任何会计计算:它们应该只是查询服务以获取要使用的帐户,将一致的事务发送到服务(使用某种DTO),并在需要时查询帐户余额。
https://softwareengineering.stackexchange.com/questions/377066
复制相似问题