ASP.NET N 层/DDD 架构和 Window 服务软件架构之间有区别吗?

发布于 2024-12-17 04:14:04 字数 78 浏览 2 评论 0原文

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

I am reading a lot of architecture (N-Layered and DDD) yet most of the articles are about web site architecture and develop mostly windows services.
Can the architecture be used the same way?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

小…红帽 2024-12-24 04:14:04

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

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

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

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

The primary goal of "layers" in software architectures are to separate concerns; your program logic should be separate from your data persistence, and from your user interface.

A Windows Service will not have a UI, but you can still gain efficiency, supportability and reduce the impact of future changes by separating your functionality logically. For example:

  • Windows Service Layer: responsible for launching the service, handles defined events and exceptions - sort of analogous to the UI layer in a Web application, but obviously without UI
  • Business Layer: Classes to execute your processing and encapsulate logic
  • Persistence Layer: Abstracts persistence of data and state to database, xml, registry, whatever

So most of the Web architecture concepts you read about can be applied, and most of the tools can be used for Windows services as well.

逆蝶 2024-12-24 04:14:04

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

Yes of course, except the Windows Service will likely not have much of a UI tier, if at all. Just a lightweight runnner method or so.

老旧海报 2024-12-24 04:14:04

尽管服务有所不同,因为它们没有 UI 元素,但是有一些方法可以使用适用于(N 层、DDD)的原则,即开发原则。

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

Although the services are different as they do not have a UI element to them, however there are ways to use the principles that apply in (N-Layered, DDD) i.e. development principles.

So for e.g. Services Share Schema and Contract, Not Class i.e. they are designed on Interfaces so a windows service can be a REST BASED service as well as a WCF Service but than again it can also call a repository underneath.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文