所谓的面向过程就是:强调的是步骤、过程、每一步都是自己亲自去实现的。这些都是以什么正在发生为主要目标进行编程,与面向对象明显的不同就是封装、继承、类。简写为POP
。
所谓的面向对象其实就是找一个专门做这个事的人来做,不用关心具体怎么实现的。所以说,面向过程强调的是过程,步骤。而面向对象强调的是对象,也就是干事的人。
面向对象编程 | 面向过程编程 | |
---|---|---|
中心 | 以对象为中心 | 以过程为中心 |
知识点 | 类的创建和调用 | 函数的创建和调用 |
程序组成 | 一组对象的集合 | 一系列过程的集合 |
适用场景 | 较复杂,尤其是持续更新的代码 | 较简单,且功能较为稳定的代码 |
面向对象的好处就是封装、继承、多态。
1、面向过程
package main
import (
"fmt"
)
func add(a, b int) (c int) {
c = a + b
return
}
func main() {
a, b := 1, 2
fmt.Println(add(a, b))
}
2、面向对象
package main
import (
"fmt"
)
type myint int
func (a myint) add(b myint) (c myint) {
c = a + b
return
}
func main() {
var a myint = 1
fmt.Println(a.add(2))
}