第二周 - 总结

发布于: 2020 年 06 月 18 日

软件开发简史

从编程的历史看编程的本质和未来

 

德国人莱布尼兹

人类的第一位程序员: Ada

 

分析抽象 设计, 抽象, 开发, 实现

面向对象的对象,面向领域问题 ----------> 模型 --------------------> 软件系统

 

ddd: 领域驱动设计

 

汇编: 对机器的抽象

非结构化的高级语言: 计算处理逻辑抽象

面型对象: 问题领域

 

面向数据编程: ai

面向函数编程适合面向数据编程

 

无状态对象: 没有数据~没有行为

 

没有利用多态,就是没有真正的使用面向对象进行编程,只是用了面向对象语言而已

 

框架设计

框架VS工具

框架调用应用程序代码

应用程序代码调用工具

 

架构师用框架保证架构的落地

架构师用工具提高开发效率

 

所有软件的目的

强内聚, 松耦合

好处: 易扩展 、 更强壮 、 可移植 、 更简单

软件坏处: 僵硬 、脆弱、 不可移植、导致误用的陷阱、晦涩、过度设计、牢固性、粘滞性、不必要的复杂、不必要的重复

 

OOD 原则1 : 开闭原则(OCP)

  • 对扩张是开放的

  • 对更改是封闭的

如何做到不修改? 关键是抽象!

 

DIP 原则2 : 依赖倒置原则,底层按高层的抽象来实现

 

OOD原则3: 里氏替换原则

子类型必须能够替换它们的基类型

解决办法,1、抽取共性到基类

2、 改成组合

 

OOD原则四: 单一职责原则(SRP)

方法: 区分职责

 

OOD原则五: 接口分离原则(ISP)

 

慎用继承,不要为了使用方法而继承

用户头像

JI

关注

还未添加个人签名 2019.07.19 加入

还未添加个人简介

评论

发布
暂无评论
第二周-总结