zoukankan      html  css  js  c++  java
  • 面向XX程序设计到底是个啥

    面向过程编程:面向(对着)--》过程(流程步骤)--》编程(码代码)

    IPO是啥

    input(输入)--》process(过程处理)--》output(输出)

    未来码代码的目的:输入一些变量,然后会通过一系列的步骤改变变量,然后得到你想要的结果。

    面向过程编程

    面向过程编程:一步一步(一个函数一个函数),上一个函数的输出是下一个函数的输入

    编程:控制变量不断的变化

    优点:代码独立性※提高了,流程清晰

    缺点:一个错误,让程序直接崩掉(~ ̄(OO) ̄)ブ

    debug的来源

    1.定位bug,不一定是哪一行出错了

    2.打印变量变化的状态,判断该流程是否有问题

    面向对象

    面向(对着)对象object(一个孙悟空就是一个对象,一个猪八戒也是一个对象)--》物体()编程(码代码)

    优点:孙悟空的变换不会对其他对象早餐影响

    缺点:异常复杂

    面向对象编程:对象与对象之间交互

    类和对象

    类:

    (模板/类别)划分了对象,通过具有相同属性特征的技能的对象属于同一类(自己控制)#1000个对象,类小于1000种

    对象:

    一系列特征和技能(方法)的结合体

    函数的定义阶段只检测语法,不换行

    类定义阶段:执行代码

    # stu1 = Student()
    # stu1.name = 'yutong'
    # stu1.height = 160
    # stu1.weight = 170
    # print(stu1.name)
    # print(stu1.height)
    # print(stu1.weight)
    #
    # stu2 = Student()
    # stu2.name = 'dapao'
    # stu2.height = 100
    # stu2.weight = 300
    # print(stu2.name)
    # print(stu2.weight)
    # print(stu2.height)
    class Student():
        school = 'oldboy'
    
        def choose_course(self):
            print('正在选课')
    
    
    # def init(obj, name, height, weight):
    #     obj.name = name
    #     obj.weight = weight
    #     obj.height = height
    #
    #
    # stu1 = Student()
    # init(stu1, 'yutong', '170', '140')  # init是你用来给对象添加独有特征的函数
    # print(stu1.name)
    # print(stu1.weight)
    # print(stu1.height)
    #
    # stu2 = Student()
    # init(stu2, 'dapao', 100, 300)
    # print(stu2.name)
    # print(stu2.weight)
    # print(stu2.height)
    
    
    class Student():
        school = 'oldboy'
    
        def __init__(self, name, height, weight):
            print(self)
            self.name = name  # self = stu1 --> stu1.name = 'dapao'
            self.height = height
            self.weight = weight
    
        def choose_course(self):
            print('正在选课')
    
    
    stu1 = Student('yutong', 170, 140)
    print('stu1:',stu1)
    print('stu1.name:',stu1.name)
    
    stu2 = Student('dapao', 100, 300)
    print('stu2.name:',stu2.name)
    print('stu2:',stu2)
    

    自动排序系统

    def sort(lis):
        print(1, lis)
        for i in range(len(lis)):  # 3
            for j in range(len(lis)):  # 3 # 2
                if lis[i] < lis[j]:
                    lis[i], lis[j] = lis[j], lis[i]
    
        print(2, lis)
    
    
    lis = [3, 2, 1]
    sort(lis)
    
    

    一命二运三风水四积功德五读书六名七相八敬神九交贵人十养生十一结婚()

    可能等下还有补充

  • 相关阅读:
    Asp.net2.0页面执行顺序 朱燚:
    通过对比学Python(2):集合对象 朱燚:
    通过比较学python(3):字典类,字符串 朱燚:
    [模版项目]怎样用企业服务实现跨进程缓存 朱燚:
    [轻松一下]世界上至少有10種東西是你不知道的 朱燚:
    评:我从编程中悟出八个字(不算原创,不过希望让大家能看看) 朱燚:
    从追MM谈Java的23种设计模式 朱燚:
    学习笔记_Redis 数据类型02
    MongoDB.Driver 中通过管道(Aggregate)实现分组功能查询出符合条件的数据
    MongoDB.Driver 中实现参数动态查询
  • 原文地址:https://www.cnblogs.com/jimGraymane/p/11453766.html
Copyright © 2011-2022 走看看