一、软件架构、开发框架

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的任何操作都要通过切面来完成。



作者:꧁执笔小白꧂