开头先自己我描述一下,本人是超大龄 40+的初次从业务人员,仍然尝试在IT这个年轻人聚集的地方来讨饭吃。
借助这里平台记录我学习过程的点点滴滴。
第一:java基础我是跳跃学习。比如循环,判断这些都是基础概念,这是理解的。所有语言都是这两个概念。
第二:给予特定语言的框架学习。 不可否认众多java开发者都在是基于Spring-boot的开发。模块发开,微服务开发,大数据等等是必不可少的扩展点。
第三:云服务部署已经深入人心,中小企业几乎没有不是云上开发的。
今天我第一次学习设计模式,我在此做下记录。
可维护性
1. 不破快原有问题的情况下,新增代码
--过大函数, 过大的类
可扩展性
1. 在不修改或少修改,通过扩展的方式,进行代码的功能的增加。 修改、关闭 对扩展开放。
2.
灵活性
1.是否有预留的扩展点
2.在实现功能模块,是否有抽象的类或模块。 在使用模组接口时,判断接口是否是否新的场景。
简洁性
1.识别人理解的时间,最小化,代码要尽可能的简单。--
面向对象 -- 编码规范--设计原则--重构 --设计模式
设计原则
单一职责原则,开闭原则, 里时代换原则 依赖颠倒原则 接口隔离原则 迪米特原则
设计模式(解决代码的可扩展性的问题)
代码设计经验的总结
编码规范--代码中一直强调的--代码整洁之道
--图解设计模式,大话设计模式
创建型,结构型,行为型
创建型,
2.灵活性-复用性
单利模式,工厂方法,抽象工厂,创造者
结构型,对象和类组装成较大的结构 灵活和高效
代理,桥接,装饰,适配器
外观,组合,享元
行为型 负责对象间高效沟通和职责委派
观察者,模板方法,测量,责任链,迭代
UML 可视化建模语言, 简单,统一,图形化,
静态结构图(类图)。动态行为图。
类图--类结构,类之间的关系的。 + - 表示访问修饰符 public private # protected default
抽象类-抽象方法,实现类
接口表示-- interface
接口 -接口
对象-对象(继承)
实现关系,泛化关系,
关联关系-单项关联。双向关联,自关联
3.聚合关系,组合关系,依赖关系。
1.表示弱的拥有关系{空心,菱形的实线}
2.表示强拥有的关系【实心菱形的实线】
3.对象间耦合度最弱的关系-关联关系
单一职责原则,开放封闭,里氏替换原则,接口分离原则、依赖倒置原则、迪米特法则 solid
单一职责原则, 制作一件事情
开放封闭, 对开发和封闭
里氏替换原则、
接口分离原则、
依赖倒置原则、
迪米特法则 solid