File tree 3 files changed +195
-197
lines changed
3 files changed +195
-197
lines changed Original file line number Diff line number Diff line change @@ -18,14 +18,26 @@ head:
18
18
19
19
### 面向对象和面向过程的区别
20
20
21
- 两者的主要区别在于解决问题的方式不同:
21
+ 面向过程编程(Procedural-Oriented Programming,POP)和面向对象编程(Object-Oriented Programming,OOP)是两种常见的编程范式, 两者的主要区别在于解决问题的方式不同:
22
22
23
- - 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。
24
- - 面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。
23
+ - ** 面向过程编程(POP) ** : 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。
24
+ - ** 面向对象编程(OOP) ** : 面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。
25
25
26
- 另外,面向对象开发的程序一般更易维护、易复用、易扩展。
26
+ 相比较于 POP,OOP 开发的程序一般具有下面这些优点:
27
27
28
- 相关 issue : [ 面向过程:面向过程性能比面向对象高??] ( https://github.com/Snailclimb/JavaGuide/issues/431 ) 。
28
+ - ** 易维护** :由于良好的结构和封装性,OOP 程序通常更容易维护。
29
+ - ** 易复用** :通过继承和多态,OOP 设计使得代码更具复用性,方便扩展功能。
30
+ - ** 易扩展** :模块化设计使得系统扩展变得更加容易和灵活。
31
+
32
+ POP 的编程方式通常更为简单和直接,适合处理一些较简单的任务。
33
+
34
+ POP 和 OOP 的性能差异主要取决于它们的运行机制,而不仅仅是编程范式本身。因此,简单地比较两者的性能是一个常见的误区(相关 issue : [ 面向过程:面向过程性能比面向对象高??] ( https://github.com/Snailclimb/JavaGuide/issues/431 ) )。
35
+
36
+ ![ POP 和 OOP 性能比较不合适] ( https://oss.javaguide.cn/github/javaguide/java/basis/pop-vs-oop-performance.png )
37
+
38
+ 在选择编程范式时,性能并不是唯一的考虑因素。代码的可维护性、可扩展性和开发效率同样重要。
39
+
40
+ 现代编程语言基本都支持多种编程范式,既可以用来进行面向过程编程,也可以进行面向对象编程。
29
41
30
42
下面是一个求圆的面积和周长的示例,简单分别展示了面向对象和面向过程两种不同的解决方案。
31
43
You can’t perform that action at this time.
0 commit comments