• Python 知识要点:面向过程 和 面向对象


    过程和函数

    过程是早期的一个编程概念,类似于函数,只能执行,但是没有返回值。

    函数不仅能执行,还可以返回结果。

    面向过程(怎么做)

    1. 把完成某一个需求的所有步骤,从头到尾逐步实现。
    2. 根据开发需求,将某些功能独立的代码封装成一个又一个函数。
    3. 最后完成的代码即使顺序的调用不同的函数。

    【特点】

    • 注重步骤与过程,不注重职责分工
    • 如果需求复杂,代码会变得很复杂
    • 开发复杂项目,没有固定的套路,开发难度大

    面向对象(谁来做)

    1. 在完成某一个需求前,首先确定职责,即要做的事情。
    2. 根据职责确定不同的对象,在对象内部封装不同的方法。
    3. 最后完成的代码,就是顺序的让不同的对象调用不同的方法。

    【特点】

    • 注重对象和职责,不同的对象承担不同的职责
    • 更能应对复杂的需求变化,是专门应对复杂项目开发,提供的固定套路
    • 需要在面向过程基础上,再学习一些面向对象的语法

    相比函数,面向对象是更大的封装,根据职责在一个对象中封装多个方法

    class Cat:
    
        def eat(self):
            # 哪个对象调用的方法,self就是哪个对象的引用
            print("%s吃鱼" % self.name)
        
        # 方法中没有使用类中的变量
        # 删除括号里的 self ,用 @staticmethod 声明为静态方法
        @staticmethod
        def drink():
            print("喝水")
    
    
    # 创建猫对象
    tom = Cat()
    # 可以使用 .属性名 利用赋值语句 就可以了
    tom.name = "Tom"
    tom.eat()
    tom.drink()
    print(tom)
    
    # 再创建一个猫对象
    lazy_cat = Cat()
    
    lazy_cat.name = "Jack"
    lazy_cat.eat()
    lazy_cat.drink()
    print(lazy_cat)
    从现在开始,种下梦想中的参天大树
  • 相关阅读:
    python自学笔记
    mybatis审查要点
    session和cookie的简单理解
    linux命令
    [个人原创]关于java中对象排序的一些探讨(三)
    [技术翻译]Guava官方文档Ordering
    [个人原创]关于java中对象排序的一些探讨(二)
    [个人原创]关于java中对象排序的一些探讨(一)
    from 2666
    Euler Project question 34 in python way
  • 原文地址:https://www.cnblogs.com/dc2019/p/13179181.html
Copyright © 2020-2023  润新知