python 程序设计思维

版权声明:转载请注明出处。作者:两仪织,博客地址:http://blog.csdn.net/u013894427 https://blog.csdn.net/u013894427/article/details/80516935

计算思维与程序设计

三种人类思维特征

  • 逻辑思维:推理和演绎,数学为代表,A->B B->C A->C
  • 实证思维:实验和验证,物理为代表,引力波<- 实验
  • 计算思维:设计和构造,计算机为代表,例如汉诺塔递归

计算思维:

抽象的问题的计算过程,利用计算机自动求解

计算思维是基于计算机的思维方式

实例:计算0-100的和

1. 逻辑思维,高斯算法
2. 计算思维
s=0
for i in rang(101):
    s=s+i

实例:汉诺塔问题

# 计算hanoi塔的次数,n是
count=0
'''
n是圆盘总数
src是圆盘原本的位置
mid是圆盘中转的圆柱
dst是圆盘最后的位置
'''
def hanoi(n,src,mid,dst):
    global count
    if n==1:
        print("{}:{}->{}".format(n,src,dst))
        count+=1
    else:
        hanoi(n-1,src,mid,dst)
        print("{}:{}->{}".format(n, src, dst))
        count += 1
        hanoi(n - 1, mid, dst,src)
hanoi(3,'A','B','C')
print(count)

总结:

  • 计算思维基于计算机强大的算力和海量数据
  • 抽象的过程中,关注的是设计构造,而非因果
  • 编程是计算思维变成现实的手段

计算生态与Python语言

计算生态,是以开源项目为组织形式,充分利用“共识原则”和“社会利他”组织人员,在竞争发展,相互依存和迅速更迭中完成信息技术的更新换代,形成了技术的自我演化路径。

特点

  • 竞争发展
  • 相互依存
  • 迅速更迭

python语言

  • 由13万个第三方库
  • 库的建设经过野蛮生长和自然选择
  • 库之间相互关联使用,依存发展
  • 社区庞大,库计数更迭迅速

API是通过顶层设计的接口,没有竞争,并不能形成生态

计算生态的运用

  • 编程的起点不是算法,而是系统
  • 编程如同搭积木,利用计算生态为主要模式
  • 编程的目的是快速解决问题

优质的计算生态

# Recommended
https://python123.io

用户体验与软件产品

提升用户体验是软件到产品的必备步骤

方法一: 进度展示

  • 如果程序需要计算时间,可能产生等待,清增加进度展示
  • 如果程序由若干步骤,需要提示用户,请增加进度展示
  • 如果程序可能存在大量次数的循环,请增加进度展示

方法二: 异常处理

  • 当获得用户输入,对合规性需要检查,需要异常处理
  • 当读写文件时,对结果进行判断,需要异常处理
  • 当进行输入输出时,对运算结果进行判断,需要异常处理

方法三: 打印输出

方法四: 日志文件

方法五: 打印帮助信息

基本的程序设计模式

程序的步骤

  • 确定IPO:明确计算部分和功能边界
  • 编写程序:将计算求解的设计变成现实
  • 调试程序:确保程序按照正确的逻辑能够正确运行

配置化设计

配置化设计就是把程序的实现变成引擎加上配置文件的方式实现

  • 引擎+配置:程序执行和配置分离,将可选参数配置化
  • 将程序开发变成配置文件编写,扩展功能而不修改程序
  • 关键在于借口设计,清晰明了、灵活可扩展

应用开发的四个步骤

  • 产品定义:对应用需求充分理解,和明确定义
  • 系统架构: 以系统方式思考产品的技术实现
  • 设计和实现:结合架构完成关键设计和系统实现、结合可扩展性,灵活性等进行设计优化
  • 用户体验:从用户角度思考应用效果

猜你喜欢

转载自blog.csdn.net/u013894427/article/details/80516935