python面向对象编程的优缺点

1、编程的复杂性远高于面向过程。如果不了解面向对象,可以立即启动基于设计程序,很容易出现过度设计的问题。

在一些扩展性要求较低的场景中,使用面向对象会增加编程难度。比如管理linux系统的shell脚本不适合用面向对象设计,面向过程更适合。

2、无法面向过程的程序设计流水线可以准确预测问题的处理过程和结果。

面向对象的程序一旦开始,对象之间的交互就会解决问题,甚至上帝也无法准确预测最终结果。所以我们经常看到战斗类游戏,增加一个游戏角色,在战斗过程中很容易出现阴霸的技能,一刀砍死三个人,这种情况是无法准确预测的,只有对象之间的互动才能准确地知道最终的结果。

实例

# here put the import lib
 
 
#创建类,该类的特征和功能是相似的
class teacher(object):
    def __init__(self, name, age, course):
        self.name = name
        self.age = age
        self.course = course
 
    def intro(self):
        print("%s is %s years old." % (self.name, self.age))
 
    def attend_class(self):
        print("%s teach %s" % (self.name, self.course))
 
 
#创建具体的对象,该对象的具体特征和功能。
t1 = teacher("sunny chen", 21, "python")
t1.attend_class()
 
#这就是Python中面向对象编程,通过定义类对一类事物的特征和功能进行整合,然后在通过对象具体到某一个事物的具体特征和功能。
#即类就相当于 印钞机 ,而对象就相当于人民币

Python 编程技术、程序设计 和 源码范例:Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python 由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。像 Perl 语言一样, Python 源代码同样遵循 GPL(GNU General Public License) 协议。官方宣布,2020 年 1 月 1 日, 停止 Python 2 的更新。