[day-8] 凡事都有第一次,撰写程序前的必要步骤!

程序设计的步骤

一个产品在最初设计的时候总是会有准备工作


第一步:提出问题

  设计一个程序是为了解决问题,提出问题才能快速拟定计画与进行研究分析。

第二步:分析问题

  厘清问题发生的主因,并对现有的资讯进行整理,再根据需求调整 输入及输出 的资料格式,并订下各种规则。

第三步:设计演算法

  根据输入及输出的需求,详细规划解决问题的步骤,考虑各种可能发生的逻辑问题,并加以改善。

挑选使用的演算法有五大要件

  1. 有限性:演算法必须能在有限的步骤内解决问题。
  2. 明确性:演算法中的每一个步骤都必须明确地表达出来。
  3. 有效性:规划的演算法必须能在有限的时间内完成。
  4. 输入资料:包含零个以上的输入资料
  5. 输出资料:至少一个输出结果。

第四步:撰写程序

  首先,依照规划的演算法,选择适当的程序语言,再根据演算法步骤撰写程序码。如果演算法过於复杂时应适时加入注解或是额外编写说明手册。

  养成注解的习惯对於日後的维护可提升效率,也对其他开发人员比较友善。

第五步:程序的测试与维护

  在程序测试与维护阶段中,包含程序验证、测试、除错(debug)与维护。
首先我们要先验证功能性,如果无法达到指定的目标,就必须重新排除错误。
测试程序的时候必须完整测试所有功能,包含每个判断点,True and false 都要测试。
常见的错误有两种:语法错误、逻辑错误、执行阶段错误。

执行阶段错误:执行时期才会发现的错误,也是同时是很难察觉的错误,通常是由其余特殊因素导致的。因此需要善用例外处理程序和设定程序故障测试点,以便後期开发。


<<:  [常见的自然语言处理技术] 文本相似度(IV): 建立自己的Word2vec模型

>>:  Day 18: To DI ? Or not DI? 依赖注入的存在意义

菜鸟新人第七十五天

当小菜渣也好一阵子了, 来记录一下 铁人赛结束後,也顺利的录取心目中满意的公司 十一月报到後就开始当...

Fortran 语言和你 SAY HELLO!!

第二十四天 各位点进来的朋友,你们好阿 小的不才只能做这个系列的文章,但还是希望分享给点进来的朋友,...

XML Parsers

在讲 annotation processor 的实作之前,我们要先了解一般的处理方式,通常是写 X...

[Day 13] Reactive Programming - Reactor(Processors & Sinks)

前言 这个主题花了我好多的时间查资料,之前提到动态的产生publisher其实就有sink的概念,但...

Day14 主动情蒐-nmap 与 Wireshark 的实验内容

利用 Wireshark 观察 nmap 传输封包,点选左下角【Menu】输入【wireshark...