我正在寻找有关构建会计应用程序的方向的输入。应用程序需要允许高度定制,有时需要更改整个流程。
当客户有特定的修改请求时,我想要一种无需重新编译整个应用程序即可进行更改的方法。后端将是某种 SQL 数据库。出于成本原因,很可能是 SQL Server Express。前端将是 C#。
我正在考虑一个基于事件的系统,该系统将在进行不同类型的操作(例如条目)时具有事件。然后我会有一个处理事件的插件系统。在最终保存数据之前,我可能需要以特定顺序对数据应用多个进程。它还需要触发其他进程。
我想保持我的基本应用程序相同,它适用于大多数客户,但有一种优雅的方式来加载其他特定客户拥有的自定义流程。
我愿意接受所有建议。即使他们正在考虑解决问题的完全不同的方法。我们目前的内部开发人才是 .NET 和 MS SQL Server。我不知道可能适合这种情况的软件模式。
附加信息:这不是一个完全空白的系统,它将具有适用于大量客户的功能。由于各种原因,要求会根据州甚至可能需要定制的地区和城镇级别而变化。
我希望能够插入额外的预编译模块。当我开始研究可能的选项时,我在想象一个可以通过插件插入代码的空处理程序。例如,在引发事件的总账中创建了一个新条目。处理程序被调用,但处理程序的代码来自一个插件,这可能是我的原始流程,适合 80% 的客户。如果客户想要自定义操作,我可以添加一个插件来完全替换原来的插件,或者让它在原来的运行后通过另一个插件添加额外的后期处理步骤。我猜是一种分层过程。