2

我正在阅读大量的体系结构(N层和DDD),但大多数文章都是关于网站架构并主要开发Windows服务的。
架构可以用同样的方式吗?ASP.NET N层/ DDD体系结构和Window服务软件体系结构之间有区别吗?

+0

您是否意味着您主要创建Windows服务,并且您想知道DDD/N-Layered是否适合创建它们的体系结构? –

+0

我的意思是使用这种架构来构建软件本身,它没有用户界面。 – guyl

回答

3

软件体系结构中“层”的主要目标是区分顾虑;您的程序逻辑应与数据持久性和用户界面分开。

Windows服务将不会有一个用户界面,但你仍然可以提高效率,保障和逻辑分离的功能降低未来变化的影响。例如:

  • Windows服务层:负责开展服务,把手定义的事件和异常 - 有点类似于Web应用程序的UI层,但显然没有UI
  • 业务层:类执行你的处理和封装逻辑
  • 持久层:数据和状态数据库,XML,注册表文摘持久性,无论

所以大多数的你看了关于Web架构的概念可以适用,而且大多数的工具可以使用对于Windows服务也是如此。

1

是的,当然,除了Windows服务可能没有太多的UI层,如果有的话。只是一个轻量级的runnner方法左右。

0

虽然服务是不同的,因为他们没有一个UI元素给他们,但是有很多方法可以使用,在(N-分层,DDD)即发展原则适用的原则。

因此对于例如服务共享模式和契约,而非类即它们被设计在接口上使一个窗口服务可以是基于REST的服务以及WCF服务,但不是再次它也可以拨打下面的存储库。