-2

作为我硕士论文的一部分,我将开发一个用于公寓热优化的软件。该软件将是中等规模的,将有一个面向客户的基于 Web 的界面和一个面向传感器的界面(放置在公寓中)。我正在考虑多层架构。系统中的许多对象都会有自己的数据库表。这意味着用于保存和检索对象的大量代码和 SQL 语句(以及时间)。这仍然是开发软件的标准方式吗?

我曾经考虑过使用NHibernate,但我有一些疑问,主要原因是:我没有太多的软件开发经验。
会话处理似乎相当复杂,特别是如果必须有一个业务层为 Web 接口和传感器接口提供功能。由于延迟加载,我需要让会话在这些接口处处于活动状态,但是表示层会意识到数据访问层是不可取的。

那么,有没有其他选择?我正在使用 MySql 5.5 和 C#。

4

3 回答 3

0

如果您“我在软件开发方面没有太多经验”,我会仔细考虑 NHibernate。虽然它是一个了不起的工具并且非常强大 - 学习曲线可能很陡峭,并且取决于您想要投入多少时间来学习它。不过话虽如此,我真的很高兴。

于 2012-05-02T13:31:02.273 回答
0

当前 Web 开发中的正统是MVC;在微软领域,这意味着ASP.Net MVC。MS 站点有一个很棒的教程,描述了您将代表您的业务领域的“模型”类与数据库集成的方式。

ASP.Net MVC 还提供了一种构建 Web API 的方法——这应该允许您的传感器使用相同的底层模型类与应用程序进行通信。

于 2012-05-02T13:37:02.060 回答
0

在我看来,您有一个固有的逻辑分区,应该将传感器-数据库通信抽象为一层,并将客户-数据库通信抽象为另一层。传感器端可以提供一组只读接口,以便(根据需要)向客户端提供信息,而热量优化工作的核心功能可以基本上位于中间。

如果您花一些时间考虑应该如何划分这些部分,允许您在两者之间定义干净的接口,那么整个项目的复杂性应该至少会减少一些。

于 2012-05-02T12:46:14.680 回答