2

我正在阅读很多架构(N-Layered 和 DDD),但大多数文章都是关于网站架构的,并且主要开发 Windows 服务。
架构可以以同样的方式使用吗?

4

3 回答 3

3

软件架构中“层”的主要目标是分离关注点;您的程序逻辑应该与您的数据持久性和用户界面分开。

Windows 服务将没有 UI,但您仍然可以通过逻辑分离功能来提高效率、可支持性并减少未来更改的影响。例如:

  • Windows 服务层:负责启动服务,处理定义的事件和异常——有点类似于 Web 应用程序中的 UI 层,但显然没有 UI
  • 业务层:执行处理和封装逻辑的类
  • 持久层:将数据和状态的持久性抽象到数据库、xml、注册表等

因此,您阅读的大多数 Web 架构概念都可以应用,并且大多数工具也可以用于 Windows 服务。

于 2011-11-17T15:33:56.780 回答
1

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

于 2011-11-17T15:30:19.543 回答
0

虽然服务不同,因为它们没有 UI 元素,但是有一些方法可以使用(N-Layered,DDD)中适用的原则,即开发原则。

因此,例如服务共享架构和合同,而不是类,即它们是在接口上设计的,因此 Windows 服务可以是基于 REST 的服务以及 WCF 服务,但它也可以再次调用下面的存储库。

于 2011-11-17T15:41:42.267 回答