架构师训练营第 02 周——总结
编程语言实质
利用计算机来解决现实世界的问题。
问题领域
包含与系统所要解决的问题相关的实物和概念的空间。
编程的核心三要素
人
计算机
客观业务领域
对象的特性
状态:表明每个对象可以有自己的数据——对应Java语言类的域
行为:表明每个对象可以产生行为——对应Java语言类的方法
标识:表明每个对象都区别于其他的对象——对应计算机的内存地址
面向对象编程的三要素
封装——使用访问权限限定符完成封装
继承——在Java语言中,使用extends表示继承
多态——在Java语言中,通过重写/实现方法来完成多态
面向对象设计的目标
高内聚
低耦合
易扩展
更强壮
可移植
更简单
设计模式
解决某一类问题的通用的解决方案,GOF设计模式分为:创建模式、行为模式、结构模式三大类。
框架
用来实现某一类应用的结构性的程序,是对某一类架构方案可复用的设计与实现。
框架与工具的区别
框架使用程序员编写的代码,通过框架可以限制程序员编程
程序员使用工具提供的代码,通过工具可以方便程序员编程
软件设计的臭味
僵化性(Rigidity)
脆弱性(Fragility)
牢固性(Immobility)
粘滞性(Viscosity)
不必要的复杂性(Needless Complexity)
不必要的重复(Needless Repetition)
晦涩性(Opacity)
SOLID原则
单一职责原则
开闭原则
里氏替换原则
接口隔离原则
依赖倒置原则
评论