软件的设计模式
PP面向过程编程
OOP面向对象编程
高內聚:描述了模块内部的一系列功能的相关程度,对于功能之间相关度不高或者根本没有相关性的功能包含在模块中的做法是不可取的。
低耦合:描述了模块直接的依赖、感知程度,耦合的衡量标准是从低到高,一般来说耦合度越低越好。
扩展性、可读性、可维护性、极高的可复用性
功能分离的设计准则,通过分离关注点的方式。我们把功能称之为关注点。
按模型来划分,模型划分分为概念模型与物理模型
按层次来划分,层次可以简单的分为分层分离的方式与横切分离的方式
介绍的二种编程方法是面向对象的编程方法实现分层方式的分离关注点与面向切面的编程方法实现横切分离关注点的方式。
(SRP)单一职责原则:简单来说就是一个类只提供一种功能和仅有一个引起它变化的因素
(OCP)开发封闭原则:简单来说就是不能修改现有的类,而需要在这个类的功能之上扩展新的功能
(LSP)替换原则:简单的来说就是基类出现的地方,扩展类都能够进行替换
(DIP)依赖倒置原则:简单来说就是依赖于抽象而不应该依赖于实现
(ISP)接口隔离原则:简单的来说就是客户不关心细节的东西,他就只关心自己能够得到的服务
企业应用架构
针对于企业应用,依据不同的关注点,架构可以分为如下几类:
业务架构(Business Architecture):关注于业务及其流程;
应用架构(Application Architecture):关注于应用系统设计;
基础架构(Infrastructure Architecture):关注于基础技术;
数据架构(Data Architecture):关注于数据存储及其规划;
这里所说的企业应用架构,即属于应用架构,包括如下几个部分:
1.目标和愿景。即应用系统所面临的问题域。
2.评价指标。从哪些纬度和指标来评价和度量解决方案。
3.原则和方法论。为解决这些问题,所采用的原则及其方法论。
4.技术架构。架构的技术层面,给出相应的设计以及结构,描述应用系统。
5.组织因素。架构的组织层面,组织的各个部分如何参与。