面向对象、设计原则、设计模式、编程规范、重构

简介: 面向对象、设计原则、设计模式、编程规范、重构

面向对象、设计原则、设计模式、编程规范、重构


面向对象


主流的三个编程风格有:面向对象,面向过程,函数式编程。

面向对象是最主流的风格,面向对象具有丰富的特性(封装,抽象,继承,多态)。


面向对象


  • 面向对象的4大特性:封装、继承,抽象、多态。
  • 面向对象编程与面向过程的区别和联系
  • 面向对象分析,面向对象设计、面向对象编程
  • 接口和抽象类的区别与各自的应用场景
  • 基于接口实现的编程的设计思想
  • 多个组合少用继承的设计思想
  • 多面向过程的贫血模型和面向对象的充血模型


设计原则


设计原则是指导我们代码设计的一些总结,设计原则有 SOLID 原则:

  • SOLID 原则- SRP 单一职责原则
  • SOLID 原则- OCP 开闭原则
  • SOLID 原则- LSP 里氏替换原则
  • SOLID 原则- ISP 接口隔离原则
  • SOLID 原则- DIP 依赖倒置原则
  • DRY  原则、KISS 原则、 YAGNI 原则、LOD 法则


设计模式


设计模式是针对软件开发中遇到的一些设计问题,经典的设计模式有 23 种。但是可以分成 3 大类:创建型,结构型,行为型。

  • 创建型 常见是设计模式有: 单利模式、工厂模式(工厂方法和抽象工厂)、建造者模式 不常见的有:原型模式
  • 结构型 常用的有:代理模式,桥接模式,装饰器模式,适配器模式。不常用的有:门面模式、组合模式、享元模式
  • 行为型 常用的有:观察者模式、模板模式、策略模式、职责链模式、迭代器模式、状态模式 不常用的:访问者模式、备忘录模式、命令模式、解释权模式、中介模式


编程规范


编程规范主要解决的是代码可读性的问题。编程规范相对于设计原则,设计模式,更加具体,更加偏重代码细节。

编程规范《重构》《代码大全》《代码整洁之道》是非常好的参考资料


代码重构


没有一劳永逸的设计,需要随着需求的变化,不断迭代。重构的工具是面向对象设计思想,设计原则,设计模式,编码规范。


  • 重构的目的(why)、对象(what)、时机(when)、方法(how)
  • 保证重构不出错的技术手段:单元测和代码可测试性。
  • 两种不同规模的聪哥:大重构额小重构

面向对象、设计原则、设计模式、编程规范、代码重构 本质上都是服务于编写高质量代码的。面向对象编程因为具有丰富的特性(封装,抽象,继承,多态),可以实现很多复杂的设计思路,很多设计原则,设计模式等编码实现的基础。

相关文章
|
26天前
|
设计模式 存储 关系型数据库
「全网最细 + 实战源码案例」设计模式——六大设计原则
本文介绍了面向对象设计中的六大原则,旨在提高软件系统的可维护性、可复用性和可拓展性。这些原则包括:开闭原则(OCP)、里氏代换原则(LSP)、依赖倒转原则(DIP)、接口隔离原则(ISP)、迪米特法则(LoD)和合成复用原则(CARP)。每项原则通过具体示例展示了如何通过抽象、多态、组合等方式降低耦合度,增强系统的灵活性与稳定性,从而提升开发效率并降低成本。
38 10
|
6月前
|
设计模式 数据库连接 PHP
PHP编程中的面向对象与设计模式
在PHP编程世界中,掌握面向对象编程(OOP)和设计模式是提升代码质量和开发效率的关键。本文将深入浅出地介绍如何在PHP中应用OOP原则和设计模式,以及这些实践如何影响项目架构和维护性。通过实际案例,我们将探索如何利用这些概念来构建更健壮、可扩展的应用程序。
|
5月前
|
设计模式 Java 测试技术
Java设计模式-UML与设计原则(1)
Java设计模式-UML与设计原则(1)
|
6月前
|
设计模式 Java
重构你的代码:探索Java中的混合、装饰器与组合设计模式
【8月更文挑战第30天】在软件开发中,设计模式为特定问题提供了结构化的解决方案,使代码更易理解、维护及扩展。本文将介绍三种常用的 Java 设计模式:混合模式、装饰器模式与组合模式,并附有示例代码展示实际应用。混合模式允许通过继承多个接口或抽象类实现多重继承;装饰器模式可在不改变对象结构的情况下动态添加新功能;组合模式则通过树形结构表示部分-整体层次,确保客户端处理单个对象与组合对象时具有一致性。
64 1
|
6月前
|
前端开发 C# 设计模式
“深度剖析WPF开发中的设计模式应用:以MVVM为核心,手把手教你重构代码结构,实现软件工程的最佳实践与高效协作”
【8月更文挑战第31天】设计模式是在软件工程中解决常见问题的成熟方案。在WPF开发中,合理应用如MVC、MVVM及工厂模式等能显著提升代码质量和可维护性。本文通过具体案例,详细解析了这些模式的实际应用,特别是MVVM模式如何通过分离UI逻辑与业务逻辑,实现视图与模型的松耦合,从而优化代码结构并提高开发效率。通过示例代码展示了从模型定义、视图模型管理到视图展示的全过程,帮助读者更好地理解并应用这些模式。
166 0
|
6月前
|
设计模式 前端开发 JavaScript
React开发设计模式及原则概念问题之什么是HOC(Higher-order component),HOC遵循的设计原则都有哪些
React开发设计模式及原则概念问题之什么是HOC(Higher-order component),HOC遵循的设计原则都有哪些
|
7月前
|
设计模式 算法
交易链路设计原则&模式问题之中介者(Mediator)方法设计模式是什么,如何解决
交易链路设计原则&模式问题之中介者(Mediator)方法设计模式是什么,如何解决
|
2月前
|
设计模式 前端开发 搜索推荐
前端必须掌握的设计模式——模板模式
模板模式(Template Pattern)是一种行为型设计模式,父类定义固定流程和步骤顺序,子类通过继承并重写特定方法实现具体步骤。适用于具有固定结构或流程的场景,如组装汽车、包装礼物等。举例来说,公司年会节目征集时,蜘蛛侠定义了歌曲的四个步骤:前奏、主歌、副歌、结尾。金刚狼和绿巨人根据此模板设计各自的表演内容。通过抽象类定义通用逻辑,子类实现个性化行为,从而减少重复代码。模板模式还支持钩子方法,允许跳过某些步骤,增加灵活性。
137 11
|
3月前
|
设计模式 安全 Java
Kotlin教程笔记(51) - 改良设计模式 - 构建者模式
Kotlin教程笔记(51) - 改良设计模式 - 构建者模式
|
24天前
|
设计模式
「全网最细 + 实战源码案例」设计模式——模式扩展(配置工厂)
该设计通过配置文件和反射机制动态选择具体工厂,减少硬编码依赖,提升系统灵活性和扩展性。配置文件解耦、反射创建对象,新增产品族无需修改客户端代码。示例中,`CoffeeFactory`类加载配置文件并使用反射生成咖啡对象,客户端调用时只需指定名称即可获取对应产品实例。
86 40

热门文章

最新文章