我最近看到很多开发人员的职位发布,其中包含一个或多或少这样的句子:“必须具有 N-Tier 架构的经验”或“必须能够开发 N-Tier 应用程序”。
这让我问,什么是 N-Tier 架构?一个人如何获得经验?
维基百科:
在软件工程中,多层架构(通常称为 n 层架构)是一种客户端- 服务器架构,其中表示、应用程序处理和数据管理在逻辑上是独立的过程。例如,使用中间件为用户和数据库之间的数据请求提供服务的应用程序采用多层架构。“多层架构”使用最广泛的指的是三层架构。
什么是“层”是有争议的,但在我看来,它至少需要跨越流程边界。或者它被称为图层。但是,它不需要在物理上不同的机器中。虽然我不推荐它,但您 可以 在同一个盒子上托管逻辑层和数据库。
编辑 :一个含义是表示层和逻辑层(有时称为业务逻辑层)需要通过不可靠、缓慢和/或不安全的网络“跨线”跨越机器边界。这与简单的桌面应用程序非常不同,其中数据与文件位于同一台机器上,或者您可以直接访问数据库的 Web 应用程序。
对于 n 层编程,您需要将数据打包成某种称为“数据集”的可传输形式,然后通过网络传输它们。.NET 的DataSet类或SOAP之类的 Web 服务协议是通过网络传输对象的少数尝试。