C# 三层架构与七层架构

前言
学习三层的时候对于这三层有了大致的了解,但是还是说不出个一二,今天试着总结一下,将自己的知识重新梳理一遍。


三层架构

  • 概念
    三层架构通常意义上讲的就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
    具体又分为:界面外观层、界面规则层、业务接口层、业务逻辑层、实体层、数据访问层、数据存储层共七层。
  • 为什么要分层?
    为了解耦,高内聚,低耦合
  • 提示
    三层架构指的不是一定要分三层,可以按照项目的大小与复杂程度来划分层次,相当于N-Tier(多层架构)

详细解释

  • UI(表示层):与用户交互,接收数据、输入数据、显示数据。
    ——UI层除了一些简单的逻辑判断外不应包含任何逻辑;
  • BLL(业务逻辑层):UI与DAL的桥梁,业务逻辑在这里实现。
    ——这一层可以分为很多子层;
    ——事务的处理在BLL中进行;
    ——逻辑层影响着整个系统的可扩展性、可维护性和可复用性;
  • DAL(数据访问层):连通数据库,对数据进行增、删、改、查
    ——一般也分为两层,主要将DAL层中的共有操作抽象出来,例:SqlHelper
  • Entity(实体层):贯穿于三层之间,连接着三层。
    在这里插入图片描述

在网上进行了许多的搜索,也看了很多关于三层的博客,最简单的三层UI\BLL\DAL,不过三层也可以有很多的划分,它不仅仅是字面意思的只有三层结构,根据不同的角度我们可以细分出不一样的层数,这都是跟实际需要挂钩的。 不知道是我自己的搜索能力欠佳还是什么原因,在探索七层的过程中,我发现七层好像有很多的版本,到底哪个是对的呢?它们之间有关联吗?还是说它们都是对的?对此我有些迷惑,我将这些在下面都罗列了出来,稍稍进行一下分析

七层架构
【1】UI Facade BLL Factory IDAL DAL Model
【2】UI Facade BLL Factory IDAL DAL ConcreteFactory
【3】UI Facade BLL Factory IDAL DAL sqlHelp
【4】界面外观层 界面规则层 业务接口层 业务规则层 实体层 数据访问层 数据库层

我们可以看出前三种形式,除了最后一层不同以外,其他六层都是相同的。


目前的三层与七层的总结,就先告一段落。因为我要去实践,我发现自己很多次的知识总结都是在看完理论知识后进行的,在网络中获取了显性知识后因为没有经历所以无法结合自己的经历将显性知识转化成自己的隐性知识,也就无法将自己的隐性知识转化成属于自己的显性知识。现在终于明白是哪里出了问题了,没有自己的隐性知识那怎么可以总结出好的博客呢?所以,现在要去实践了。

本博客未完待续…

评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值