某种意义上,程序设计的出现甚至早于电子计算机的出现。英国著名诗人拜伦的女儿Ada Lovelace曾设计了巴贝奇分析机上解伯努利方程的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。
任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。在计算机技术发展的早期,由于机器资源比较昂贵,程序的时间和空间代价往往是设计关心的主要因素;随着硬件技术的飞速发展和软件规模的日益庞大,程序的结构、可维护性、复用性、可扩展性等因素日益重要。
另一方面,在计算机技术发展的早期,软件构造活动主要就是程序设计活动。但随着软件技术的发展,软件系统越来越复杂,逐渐分化出许多专用的软件系统,如 *** 作系统、数据库系统、应用服务器,而且这些专用的软件系统愈来愈成为普遍的计算环境的一部分。这种情况下软件构造活动的内容越来越丰富,不再只是程序设计活动了,还包括数据库设计、用户界面设计、接口设计、通信协议设计和复杂的系统配置过程。
程序设计(Programming)是指设计、编制、调试程序的方法和过程。它是目标明确的智力活动。由于程序是软件的本体,软件的质量主要通过程序的质量来体现的,在软件研究中,程序设计的工作非常重要,内容涉及到有关的基本概念、工具、方法以及方法学等。
按照结构性质,有结构化程序设计与非结构化程序设计之分。前者是指具有结构性的程序设计方法与过程。它具有由基本结构构成复杂结构的层次性,后者反之。按照用户的要求,有过程式程序设计与非过程式程序设计之分。前者是指使用过程式程序设计语言的程序设计,后者指非过程式程序设计语言的程序设计。按照程序设计的成分性质,有顺序程序设计、并发程序设计、并行程序设计、分布式程序设计之分。按照程序设计风格,有逻辑式程序设计、函数式程序设计、对象式程序设计之分。
程序设计的基本概念有程序、数据、子程序、子例程、协同例程、模块以及顺序性、并发性、并行性、和分布性等。程序是程序设计中最为基本的概念,子程序和协同例程都是为了便于进行程序设计而建立的程序设计基本单位,顺序性、并发性、并行性和分布性反映程序的内在特性。
程序设计规范是进行程序设计的具体规定。程序设计是软件开发工作的重要部分,而软件开发是工程性的工作,所以要有规范。语言影响程序设计的功效以及软件的可靠性、易读性和易维护性。专用程序为软件人员提供合适的环境,便于进行程序设计工作。
计算机程序或者软件程序(通常简称程序)是指一组指示计算机每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语的人(体系结构)来做这个菜。 通常,计算机程序要经过编译和链接而成为一种人们不易理解而计算机理解的格式,然后运行。未经编译就可运行的程序通常称之为脚本程序。
1. 确保产品的 使用逻辑合理顺畅
2. 向项目组其他成员 清晰的传达需求 ,用流程图来更好地表达产品逻辑
3.流程图可以帮助 梳理模块,业务流程和使用路径
举例,我们在电商平台中,对于用户下单这一流程,通常用文字来描述如下:
将上述流程描述转化为流程图的格式:
从图可以看出,相对于文字描述,流程图更加清晰,各流程节点之间的关系更加直观,便于理解。
分类: 业务流程图,功能流程图,页面流程图
业务流程图:用来描述业务流程,通过一些特定的符号和连线来表示具体某个业务的实际处理步骤和过程,详细描述任务的流程走向。
业务流程图的作用:1.对于一些相对复杂的业务,如果产品经理对于业务本身还没有清晰的认识,就开始设计产品,就很容易导致陷入一些细节而忽略了整体,导致出现产品开发完以后才发现有业务上的漏洞,而不得不重新设计;2.业务流程图还可以用于向相关人员介绍大致的业务形式,作为辅助工具。
功能流程图:通过图形化的表达,阐述产品在功能层面控制的图表。
功能流程图的作用:1.帮助我们在设计时,理清对于产品具体功能层面的设计思路;2.在需求文档中,为了帮助开发理解某个功能具体的流程设计。
页面流程图:指产品具体所呈现的页面跳转流程图,其承载了业务流程图所包含的业务流转信息。
一幅完整的流程图,必须包含 唯一 一个“开始”和唯一一个“结束”。
流程箭头不能回调, 所有执行不得回退前一步骤 。如果有需要,可以在添加适当判断,然后重新调用某一步骤。
对于菱形判断框,必须包括两个及以上的条件走向注释(条件写在箭头线上),对应执行结果。
流程图可以很长,也可以有多个异常处理,但整体必须是从上而下的、清晰的。
如果逻辑功能比较繁多,必要时可以分开绘制(整体的)功能设计流程图和(子功能)执行流程图。
过程中是否存在某些环节,删掉它们后能够降低成本或减少时间?
还有其他更有效的方式构造流程吗?
整个过程是否因为过时而需要重新设计?
顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。
条件结构是高中数学中学习的算法中的一种基本逻辑结构;在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向,条件结构就是处理这种过程的结构。
循环结构是指在程序中需要反复执行某个功能而设置的一种程序结构。
1.应遵循从左到右、从上到下的顺序排列;
2.从开始符开始,以结束符结束。需要注意:开始符只能出现一次,但是结束符可以出现多次;如果流程足够清晰,可省略开始和结束符号;
3.需要认真检查各个步骤或判定结果,避免出现漏洞,导致流程无法形成一个闭环;
4.连接线要避免交叉,可以重合;
5.必要时可以用标注,以便更加清晰地说明流程;
6.流程图中,如果有参考其他已经定义的流程,不需要重复绘制,直接用子流程符号代替。
泳道图也叫跨职能(多角色)流程图,用来展示工作流中每个步骤涉及的流程和职能部门(多角色).
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)