你好,我是程序员雪球,接下来与你一起学习面向对象比面向过程编程有什么优势?
首先我们来了解面向过程编程是什么?面向过程编程也是一种编程风格,它以过程(可以理解为方法,函数,操作)作为组织代码的基本单元,以数据(可以理解为成员变量,属性)与方法相分离为主要特点。面向过程风格是一种流程化的编程风格,通过拼接一组顺序执行的方法来操作数据完成一项功能。
面向对象编程比面向过程编程的优势主要有三个:
优势1:oop更加能够应对大规模复杂程序的开发开发,能够清晰的,模块化的组织代码。比如我们开发一个电商交易系统,业务逻辑复杂,代码量很大,可能要定义好数百个函数,数百个数据结构,那如何分门别类这些函数和数据结构,才能不至于看起来比较凌乱呢?类就是一种非常好的方式。
优势2:oop风格的代码易复用,易扩展,易维护。因为oop具有更加丰富的特性(封装,抽象,继承,多态),利用这些特性编写出来的代码,更加易扩展,易复用,易维护。
优势3:oop语言更加人性化,更加高级,更加智能,从编程语言跟机器打交道的方式的演进规律中可以总结出。
日常工作中违反面向对象编程风格的典型代码设计有哪些?
1、滥用getter,setter方法;
在设计实现类的时候,除非真的需要,否则不要给属性定义setter方法。此外尽管getter方法相对setter方法要安全些,但是如果返回结果的是集合容器,那也要防范集合内部数据被修改的风险。
2、constants类,utils类的设计问题;
对于这两种类,我们尽量做到职责单一,定义一些细化的小类。此外,如果能够将这些类中的属性和方法,划分归并到其他业务中,能极大提高类的高内聚和代码的可复用。
我的分享完毕。
喜欢编程技术的请关注我,点赞,收藏,后期持续更新更多编程技术。