面向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),指一种程序设计范型,同时也是一种程序开发 ...
随机推荐
- Java-Class-@I:java.annotation.Resource
ylbtech-Java-Class-@I:java.annotation.Resource 1.返回顶部 2.返回顶部 1.1. import javax.annotation.Resource ...
- 记录解决java.io.IOException: Server returned HTTP response code: 500 for URL:xxxxxxxx
踩坑经历 因为项目需要去对接别的接口,使用URLConnection POST请求https接口,发送json数组时遇到java.io.IOException: Server returned HTT ...
- Centos7.4安装elasticsearch6.3+kibana6.3集群
Centos7.4安装elasticsearch+kibana集群 Centos7.4安装elasticsearch+kibana集群 主机环境 软件环境 主机规划 主机安装前准备 安装jdk1.8 ...
- ollydbg调试PE文件
ollydbg项目地址:http://www.ollydbg.de/ 将exe文件打开到ollydbg项目中,就会直接停到"入口点"地址处,通过View->Memory Ma ...
- Linux启动过程的内核代码分析
参考上文: http://www.cnblogs.com/long123king/p/3543872.html http://www.cnblogs.com/long123king/p/3545688 ...
- docker 详细安装及问题排查
一.安装docker 1.Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 uname -r 命令查看 ...
- js面向对象(一)---基本的概念、属性、方法
一.什么是面向对象编程 1.用对象的思想去写代码,就是面向对象编程 2.我们一直在使用对象,如数组Array 时间Date //我们把系统自带的对象,叫做系统对象 var arr = new A ...
- Kettle 中的循环
说道循环,小伙伴们肯定不陌生,就是重复干一件事:而kettle中的循环一般是发生在job中,因为job是串行执行的: kettle的循环有两种,一种是通过js脚本,另外一种是通过遍历前面步骤返回的每一 ...
- activeMQ的回顾
JMS: JMS基本概念: JMS(Java Message Service) 即Java消息服务.它提供标准的产生.发送.接收消息的接口简化企业应用的开发.它支持两种消息通信模型:点到点(point ...
- Java判断链表是否为回文链表
请判断一个链表是否为回文链表. 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 思路:1.通过快慢指针,来遍历链表 ...