面向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)
一命二运三风水四积功德五读书六名七相八敬神九交贵人十养生十一结婚()
可能等下还有补充
面向XX程序设计到底是个啥的更多相关文章
- 面向XX编程
[一篮饭特稀原创,转载请注明出自http://www.cnblogs.com/wanghafan/p/5033186.html ] 基于面向XX编程的个人理解 面向过程编程 Procedure Or ...
- “面向对象"和"面向过程"到底有什么区别?
链接:http://www.zhihu.com/question/27468564/answer/101951302 当软件还非常简单的时候,我们只需要面向过程编程: 定义函数函数一函数二函数三函数四 ...
- 你好,C++(31)我终于找到对象啦!6.1 从结构化设计到面向对象程序设计
第6章 当C++爱上面向对象 很多第一次进入C++世界的人都会问:C++中的那两个加号到底是什么意思啊? C++是由C语言发展而来的,它比C语言多出的两个加号,实际上是C语言的自增操作符,表示C++语 ...
- 201521123076 《JAVA程序设计》第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容 初步了解了接口的概念,学会使用接口,强化面向对象思想 Comparable,Com ...
- C++程序设计
C++程序设计 之前学过C++课程,但是时间有点久,忘了很多,这里做一个简单的回顾. 网站推荐: C++在线编译器 学习C++之前,您可以先了解C语言. c++的扩展名一般为cpp(cplusplus ...
- Python基础(16)_面向对象程序设计(类、继承、派生、组合、接口)
一.面向过程程序设计与面向对象程序设计 面向过程的程序设计:核心是过程,过程就解决问题的步骤,基于该思想设计程序就像是在设计一条流水线,是一种机械式的思维方式 优点:复杂的问题的简单化,流程化 缺点: ...
- spring入门(四)【面向切面编程】
开发过程中很多时候会用到日志.事务等操作,这些操作如果要写在业务代码中会相当麻烦,这时就会用到面向切面编程(AOP),AOP作为一种编程思想,和OOP有着不同的侧重点,面向对象侧重于万事万物皆对象,而 ...
- 2016-2017-2 《Java程序设计》预备作业2总结
2016-2017-2 <Java程序设计>预备作业2总结 古希腊学者普罗塔戈说过:「头脑不是一个要被填满的容器,而是一束需要被点燃的火把.」 在对计算机系的学生情况的调查中,我说: 最近 ...
- 对面向对象程序设计(OOP)的认识
前言 本文主要介绍面向对象(OO)程序设计,以维基百科的解释: 面向对象程序设计(英语:Object-oriented programming,缩写:OOP),指一种程序设计范型,同时也是一种程序开发 ...
随机推荐
- H. GSS and Simple Math Problem--“今日头条杯”首届湖北省大学程序设计竞赛(网络同步赛)
题目描述:链接点此 这套题的github地址(里面包含了数据,题解,现场排名):点此 题目描述 Given n positive integers , your task is to calculat ...
- 机器学习技法笔记:Homework #5 特征变换&Soft-Margin SVM相关习题
原文地址:https://www.jianshu.com/p/6bf801bdc644 特征变换 问题描述 程序实现 # coding: utf-8 import numpy as np from c ...
- 2-vim-打开和新建文件-01-打开/新建文件/打开定位到文件指定行
1.新建或打开文件 命令: vim 文件名 在终端中输入vi在后面跟上文件名即可. 如果文件已经存在,会直接打开文件. 如果文件不存在,会新建一个文件. 2.打开文件并定位到文件指定行. 命令: vi ...
- 「SNOI2019」通信 分治优化费用流建图
题意: n 个排成一列的哨站要进行通信.第 i 个哨站的频段为 ai. 每个哨站 ii 需要选择以下二者之一: 1.直接连接到控制中心,代价为 W:2.连接到前面的某个哨站 j(j<i),代价为 ...
- mysql数据库 --表查询
今日内容: 一.单表查询 1.语法执行顺序 2.where约束条件 3.group by 4.having 5.distinct 6.order by 7.limit 8.正则 二.多表查询 1.表查 ...
- 目录文件的操作函数 mkdir ,opendir,readdir,closedir
1. int mkdir(const char *pathname, mode_t mode); 头文件 :<sys/stat.h> <sys/types.h> 功能: ...
- Charles使用技巧
过滤不必要请求 有些时候会抓取到很多自己不需要的请求 ,看起来不直观 只想抓包自己关心的地址 在外部设备抓包 比如你的手机设备 电脑模拟器等 本质就是你通过Charles开启一个代理端口,无论是外部设 ...
- 利用VUE-CLI脚手架搭建VUE项目
前言 在学习完vue基础语法之后,学着利用vue-cli脚手架搭建一个项目,本篇随笔主要记录搭建的过程,供大家一起学习. 具体内容 搭建vue项目的准备工作 1.安装Nodejs.NPM以及VSCod ...
- 安装 Confluence6.7.1 笔记
安装 Confluence6.7.1 我是使用命令行进入mysql的mysql -uroot -p123456 创建数据库 CREATE DATABASE confluence DEFAULT CHA ...
- vue v-for 组件传值 enter传值
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...