图书:大话设计模式
视频:b站 黑马程序员 c++设计模式
软件建模
写代码前:要做什么?做成什么样?怎么做?
软件建模作用:现实世界的问题转化为计算机可以理解和实现的过程。
需求-》模型-》代码
代码设计原则:可维护(修改功能涉及少量代码)、可复用、可扩展、灵活性好
高内聚、低耦合
单一职责原则:Single Responsibility Principle,SRP
开闭原则:Open-Closed Principle,OCP
里氏代换原则:Liskov Substitution Principle,LSP
依赖倒转原则:Dependence Inversion Principle,DIP
接口隔离原则:Interface Segregation Principle,ISP
合成复用原则:Composite Reuse Principle,CRP
迪米特法则: Law of Demeter,LoD
UML(United Modeling Language)建模语言
用例图(Use Case Diagram)
从客户角度描述系统功能
参与者(Actor):使用该系统的人或事物 人形图表示
用例(Use Case):系统的某项完整的功能 椭圆表示
关系:
泛化关系:同一业务目的的不同技术实现,如支付的不同支付方式;
包含关系:一个用例可以包含其他用例的行为,如更新数据包含添加修改数据;
拓展关系:在完成某功能时偶尔会执行另外一个功能(可选择)如保存成绩《extend》打印成绩
类图(Class Diagram)
用来显示系统中的类,接口以及它们之间的关系。
类
接口
关系:
泛化关系
实现关系
依赖关系
关联关系
聚合关系
组合关系
软件设计模式
GoF(Gang of Four四人组)23个设计模式包括:创建型(Creational)、结构型(Structural)、行为型(Behavioral)
简单工厂不属于23种之一