怎样理解与培养程序结构分析的习惯与能力

怎样培养程序结构分析的习惯与能力--基本结构与顺序结构

为什么要养成程序结构分析的习惯

学生是从什么时候开始对语文课中的文章进行结构分析的。段落大意、中心思想、关键字、词与句子等。写作文的时候,又是如何构思结构的(按时间顺序写-倒叙、按事情发生的逻辑写、插叙插议、……)。

有分析小说结构的爱好吗?有分析绘画作品结构的爱好吗?有分析音乐作品结构的爱好吗?

有观察房屋结构的意识吗?有分析机器(包括家电等)结构的意识吗?

语数物化生等课程有结构问题吗?

太多的结构问题。那么作为计算机语言的程序—给计算机说话,当然也有结构问题。关键是:计算机语言描述的计算机的硬件行为,本来就是逻辑式的。

研究发现--底层程序都由三种基本结构组成。它们是:顺序结构、循环结构、分支结构。那就是说,这是普遍原则,和是那种名称的语言,没有关系。matlab、python、fortran、C、C++、C#、java、R等语言都遵循这个原则,都拥有这样的结构形式。只不过具体的字词符号有区别而已。顺序结构、循环结构、分支结构这三种形式就是语言无关性原则-具有通用性。学会一门语言,其它门门都会用了。

现在跳级来说。火箭、飞船、飞机、高楼大厦、工厂布局、城市规划、……。都有一个总师。什么意思啊?

就是总体设计师,总体方案提供者。软件产品也是这样,有一位系统架构师。就像音乐指挥,开闭幕式总指挥那样的人。

是不是这样。程序员要会从最基础、最底层、最简单的程序开始,有意识地养成结构分析的习惯。逐步形成分析、提供复杂软件结构框架的能力。

下面先来看一下,不同语言在所拥有的开发平台上的基本结构。

顺序结构

MATLAB

functionarithmetic()

变量输入

数据处理

结果输出

end

python

importmath

变量输入

数据处理

结果输出

Fortran

programArithmetic

变量声明

变量输入

数据处理

结果输出

EndprogramArithmetic

C

#includestdio.h

voidmain()

{

变量声明

变量输入

数据处理

结果输出

}

C++

#include“stdio.h”

voidmain()

{

变量声明

变量输入

数据处理

结果输出

}

怎么回事?好像有点一样。是的。不!C++是从C发展改造或说升级而来。为啥叫加加吗。C从汇编语言改造而来(自动控制、单片机、嵌入式系统广泛使用就是此道)。用了自然语言的词汇或缩写。而随着程序复杂性的快速提升,随着商业软件的需求猛烈增加。也就是—事务处理问题的需求飞速增加。C++语言添加了类—对象的模板。

Csharp(C#)

从C++基础上再改造升级,纯粹的面向对象语言了。它的底层结构是什么为样子呢?猜猜看。

usingSystem;

namespaceCons_arithmetic

{

classProgram

{

staticvoidMain(string[]args)

{

变量声明

变量输入

数据处理

结果输出

}

}

}

java、R等语言的结构,读者可以去阅读本号的相关文章。

java语言的结构R语言的结构

本号在程序阅读的相关文章中,也突出了这个问题。因为人的大脑思考就是这样的。首先建立一个框架和顺序,再去书写指令代码,那就顺畅了,简单了。书写也是一节一节的写,对吧。

有了基本框架—基本结构,就是有了一个模板。在此基础上,添加、扩展其他结构—顺序、循环、分支,多文件等。在逐步扩展中理解、了解各个单结构的功能、用途、数据交换等,逐步扩展到大型、复杂结构。以便可以解决更复杂的问题,有能力给出软件系统架构。

还是那句话:碎步快跑。




转载请注明:http://www.aierlanlan.com/cyrz/2625.html