我正在尝试规划一个机器人控制器应用程序的架构,将使用WPF编写。由于MVVM是WPF的事实标准模式,并且通常更加先进,因此我决定以它作为基本布局。
该应用程序将具有一些控制器,这些控制器访问硬件,超出了表示数据库和实用程序类的域模型。对于数据库访问,我打算使用Repository(将Ayendes IRepository作为一般想法),然后使用Linq2sql或EF4进行实际访问。
该应用程序还将拥有自己的脚本引擎,用于自定义脚本。
但是我不确定的是,是否应该将对硬件控制器和脚本引擎的访问视为域模型的一部分或下层,还是从控制器级别直接访问。
我试图绘制出我认为正确的方法。但我完全不确定这是否是正确的方法,因此我希望在此方面得到一些意见和建议,以及如何可能更好地完成它。