程序设计基本方法

基本概念

计算机是根据指令操作数据的设备,它具备功能性和可编程性。

  • 功能性:对数据的操作,表现为数据计算、输入输出处理和结构存储等。
  • 可编程性:根据一系列指令自动地、可预测地、准确地完成操作者的意图。
计算机发展遵照摩尔定律

摩尔定律是计算机发展史上最重要的预测法则,由Inter公司创始人之一戈登-摩尔在1965年提出,计算机硬件所依赖的集成电路规模参照摩尔定律发展,计算机运行速度因此也接近几何指数快速增长,计算机所能高效支撑的各类运算功能不断丰富发展,如单位面积集成电路上可容纳晶体管的数量大约每两年翻一番,如CPU/GPU、内存、硬盘、电子产品价格等都遵循摩尔定律。

判断 有没有摩尔纹 python python验证摩尔定律_python


计算机的发展参照摩尔定律,表现为指数方式,当今世界,唯一长达50年有效且按照指数发展的技术领域,计算机深刻改变人类社会,甚至可能改变人类本身,可预见未来三十年,摩尔定律还将持续有效。

计算机与程序设计

程序设计
  • 程序设计是计算机可编程性的体现
  • 程序设计,亦称编程,深度应用计算机的主要手段
  • 程序设计已经成为当今社会需求量最大的职业技能之一,很多岗位都将被计算机程序接管,程序设计是生存技能
程序设计语言
  • 程序设计语言是一种用于交互(交流)的人造语言
  • 程序设计语言,亦称编程语言,程序设计的具体实现方式
  • 编程语言相比自然语言更简单、更严谨、更精确
  • 编程语言主要用于人类和计算机之间的交互

编程语言种类有超过600种,但生命力强劲的不多,绝大部分都不再被使用,C语言诞生于1972年,它是第一个被广泛使用的编程语言,Python语言诞生于1990年,它是最流行最好用的编程语言之一。

编译和解释

编译

编译就是将源代码转换成目标代码的过程,执行编译过程的程序叫做编译器。

  • 编译:一次性翻译,之后不再需要源代码(类似英文翻译)

判断 有没有摩尔纹 python python验证摩尔定律_人工智能_02

解释

解释就是将源代码逐条转换成目标代码同时逐条运行的过程,执行解释过程的程序叫做解释器。

判断 有没有摩尔纹 python python验证摩尔定律_python_03

  • 解释:每次程序运行时随翻译执行(类似同声传译)

编程语言的执行方式有源代码和目标代码的区分。

  • 源代码:采用某种编程语言编写的计算机程序,人类可读,例如:result = 2 +3
  • 目标代码:计算机可直接运行,人类不可读(专家除外),例如:11010010 00111011
静态语言和脚本语言

根据执行方式不同,编程语言分为静态语言和脚本语言,

  • 静态语言:使用编译执行的编程语言,如C/C++语言、Java语言,编译器一次性生成目标代码,优化更充分,因此程序运行速度更快
  • 脚本语言:使用解释执行的编程语言,如Python语言、JavaScript语言、PHP语言,执行程序时需要源代码,维护更灵活,可以跨多个操作系统平台。

程序的基本编写方法

IPO方法

IPO是程序的基本编写方法及理解

  • -I(Input)输入,程序的输入,比如:文件输入、网络输入、控制台的输入、交互界面输入、内部参数输入等,输入是一个程序的开始;
  • -P(Process)处理,程序的主要逻辑,处理是程序对输入数据进行计算产生输出结果的过程,处理方法统称为算法,它是程序最重要的部分,算法是一个程序的灵魂;
  • -O(Output)输出,程序的输出,比如:控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等,输出是程序展示运算结果的方式;

所以我们要理解输入、输出,理解如何从输入 到 输出的过程;

问题的计算部分

计算部分是一个待解决问题中,可以用程序辅助完成的部分,

  • 计算机只能解决计算问题,即问题的计算部分,
  • 一个问题可能有多种角度理解,产生不同的计算部分,
  • 问题的计算部分一般都有输入、处理和输出过程,
编程问题的解决步骤
  • 1 分析问题:分析问题的计算部分,想清楚
  • 2 划分边界:划分问题的功能边界,规划IPO
  • 3 设计算法:设计问题的求解算法,关注算法
  • 4 编写程序:编写问题的计算程序,编程序
  • 5 调试测试:调试程序使正确运行,运行测试
  • 6 升级维护:适应问题的升级维护,更新完善

为什么学习编程

计算机编程

编程能够训练思维
  • 编程体现了一种抽象交互关系,自动化执行的思维模式,
  • 计算思维:区别逻辑思维和实证思维的第三种思维模式
  • 能够促进人类思考,增进观察力和深化对交互关系的理解,
编程能够增进认识
  • 编程不单纯是求解计算问题
  • 不仅要思考解决方法,还要思考用户体验、执行效率等,
  • 能够帮助程序员加深用户行为以及社会和文化认识
编程能够带来乐趣
  • 编程能够提供展示自身思维和能力的舞台
  • 让世界增加新的颜色,让自己变得更酷,提升心理满足
  • 在信息空间里思考创新,将创新变为现实
编程能够提高效率
  • 能够更好的利用计算机解决问题
  • 显著提高工作、生活和学习效率
  • 为理想的实现提供一种借助计算机的高效手段
编程带来就业机会
  • 程序员是信息时代最重要的工作岗位之一,国内外缺口都很大
  • 计算机已经渗透于各个行业,就业前景非常广阔

如何学习编程

线上线下相结合,手机电脑相结合,长短时间相结合

  • 线上线下:线上看视频/做练习,线下都教材/看资料
  • 手机电脑:视频/作业用手机,编程实践用电脑
  • 长短时间:视频/作业用零碎实践,编程用1小时长时间
  • 首先,掌握编程语言的语法,熟悉基本概念和逻辑
  • 其次,结合计算思考程序结构,会使用编程套路,
  • 最后,参照案例多练习实践,学会举一反三。
  • 实践、认识、再实践、再认识…这就是辩证唯物论的全部认识论,这就是辩证唯物论的知行统一观-----毛泽东《实践论》,编程就是实践、实践、实践。

记录学习《python语言程序设计》的笔记