一、软件架构、开发框架
1、两层架构:
界面层(UI)、数据访问层(DAL)。
2、三层架构:
经典架构思想;界面层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
3、MVC:
多用于网站开发;模型(Model)、视图(View)、控制器(Controller)。
4、MVVM:
WPF后微软的客户端UI框架风格;视图层(View)-模型层(Model)-视图模型层(ViewModel)。
5、MVP:
多用于Android开发;划分为视图层(View)、模型层(Model)、中间层(Presenter)。
6、WebApi:
MVC去掉视图(View),前后端分离的产物。
7、TDD:
测试驱动开发(Test-Driven Development)的英文简称,是"敏捷开发"中的一项核心实践和技术,也是一种设计方法论。TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。
学习文章:《手把手教你实战TDD》
8、BDD:
行为驱动开发(Behavior-Driven Development)的英文简称,是TDD概述的子集。TDD强调测试对象合理,BDD强调对象行为合理。本质上,TDD 是通过BDD来扩展的。
9、DDD:
领域驱动设计(domain-driven design);界面层(Host或UI)-应用层(Application)-数据共享层(Share;数据模型转化)-领域层(Domain;业务核心代码)-数据访问层(Database)。
10、ABP:
ASP.NET样板项目(ASP.NET Boilerplate Project)。ABP不仅仅是一个框架,它还提供了一个最徍实践的基于领域驱动设计(DDD)的体系结构模型,可以支持 .net framework和 .net core两种技术流派。
二、其他概念:
1、OOP:
面向对象程序设计(面向编程思想)。封装的是方法和属性,以对象为最小操作单元,属性和方法都要通过对象才能调。
2、AOP:
切换编程思想。封装的是业务,将主业务和通用业务区分,将通用业务划分为切面。切面又划分为通知和切入点。AOP的最小操作单元是切面,AOP的任何操作都要通过切面来完成。
作者:꧁执笔小白꧂