No.13 程序开发

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了No.13 程序开发相关的知识,希望对你有一定的参考价值。

1. 扎实的基本功  (基本功很重要)

  • 快速的输入能力
    • 避免   编程懒惰。光看不练是不行的,危险的
    • 编程最大的奥秘在 编码
    • 理想的输入方式(学习时,照着代码)
      • 整体看看程序,试图理解
      • 将其分为几个小的段落
      • 逐段逐段的理解程序,并将其输入电脑
    • 学习过程三个阶段
      • 吸收(学渣在此)
      • 大脑中归纳整理(我在此)
      • 输出:系统、条例化、文档、程序、讲解、传授等等(到此阶段基本能理解到位了)(加强这个阶段,把自己带到这个阶段,并且这个阶段会督促自己完成前两个阶段)
      • 对某个小的知识点也可以采用这种方法
        • 看书、理解
        • 合上书,在大脑中条理的整理出这个知识
        • 将这段代码输出到计算机,整理成文档、讲解、传授等
    • 学习编程,从编码开始,代码量的积累
  • 编程实现能力(翻译伪码的能力)
    • 还是代码量的作用
    • 不要小瞧简单的程序(只有简单的写好了,复杂的才能会。基本功)
      • 尝试注释、修改部分代码,看运行结果是否与预期相符
      • 尝试着去完善,添加一些新功能
    • 对看上去复杂的代码,勇于下手去做,多尝试
    • 不要陷入  简单的不想弄,复杂的弄不出来的  危险境地;简单的要掌握的非常熟练,这之后就可以去挑战跳跳能解决的难度的复杂代码了
  • 快速排错
    • 正视错误,它是编码的一部分,只有不编码的人才不会出错
    • 锻炼自己 快速定位、快速排出错误的能力(多练,多编码才会有机会给你练啊)

2. 程序开发之前

  • 分析软件的组件模型
    • 计算机思维,站在计算机的角度上,知道计算机能够做什么事情,站在这个角度去考虑事情
  • 建立软件的数据模型
    • 软件的本质是一种处理信息的工具,信息是以数据的形式存在的
    • 将信息数据化(数据表示)

3.弄清程序的具体实现

  • 各组件间如何通信
    • 顺序图
  • 人机交互的实现 
    • 软件处理的信息,绝大多数都是来自于用户的操作
  • 复杂算法的分析
    • 业务逻辑是系统的核心
    • 算法,应该尽量接近“计算机思维”,方便翻译成程序代码
    • 计算机只是一个忠实的执行者,按既定步骤干活,既不会多做,也不会少做;如果自己对流程步骤不清楚,计算机就更懵逼了,一点也不智能

4. 编写开发文档

  • 绘制建模图、流程图
    • 图形化
    • 不会遗忘
    • 方便沟通
  • 提供简要说明
  • 复杂业务逻辑、处理流程等,可以考虑使用伪码描述
    • 突出业务实现,不用考虑语法细节
    • 可读性好
    • 突出重点,简单部分省略
    • 与语言无关,方便转换成各种编程语言

5. 编码实现和开发心态

  • 开发是复杂的
    • 要意识到开发是复杂的,不要对它的复杂性估计不足,在遇到问题的时候浅尝辄止,坚持不下来;遇到问题是正常的,是正常态,不丢人
  • 开发过程是漫长的
    • 良好的心态:每增加一个模块,添加一个功能,都是一次“完成”,都应该获得“完成”的成就感;这种心态能够保持激情

以上是关于No.13 程序开发的主要内容,如果未能解决你的问题,请参考以下文章

NO.13 利用Matlab对MSP432采集到的数据进行处理

No.13 成绩排序

NO13 Linux的基础优化

LeetCode刷题:No13罗马数字转整数

麒麟软件OS课堂No.13: nginx站点发布

学习系统编程No.13文件系统