软件开发进化之路
冯洛伊曼发明人类历史上第一台电脑:冯洛伊曼机,进行简单的四则运算靠电路逻辑的控制。因此,对于占地几间厂房的巨大机器,靠着控制电路逻辑进行加减乘除的运算,由纸带打孔输出最终结果。电路逻辑,是或否,即对或错,则表示为高电和低电,因此,计算机真正能表达和接受的只有0和1,即二进制。计算机CPU包括逻辑器、控制器、运算器三大部分,其在一次运算中所能处理的数据位数,即:一次能运算处理的0和1的个数,亦即0和1组成的数据串的长度,称之为处理多少位,如:32位、64位(即:32bit、64bit)。八进制和十六进制的表达,最终都转化为二进制,被计算机接受和运算。汇编语言诞生,而后高级编程语言:面向过程的C语言和面向对象的Java语言、面向对象的C++语言、面向对象的C#语言,最终编译成二进制,被计算机接受和运算。编译原理作为计算机专业的专业基础课,即来源于此:将高级语言编译成最终的机器语言,即二进制。
汇编语言,从最早的巨大计算机的复杂电路逻辑控制实现运算,而因为技术进步、运算能力提升,因实际需要而诞生易于阅读、理解、编写、维护的编程语言。直至C语言的诞生,高级编程语言开始蓬勃发展,推动整个软件开发的迅速进步。Java语言、C++语言,高级面向对象语言的诞生,更是编程领域的深刻变革,也是自互联网时代开始最具生产力的编程语言。
在中国大陆起自1997年的互联网浪潮时代,特别2000年开始的动态交互网页时代,程序开发或软件开发,已经媲美类似一个小区或城镇建设的土木工程的工程时代。软件工程的理论在软件开发中备受重视,软件工程在软件开发的实际应用中,亦取得更快和更大的进步。软件工程中有瀑布模型,即:开发出最初满足需求的软件产品,然后,在此基础上维护修复错误(即:bug)、在此基础上升级软件功能、在此基础上为其上新功能需求而升级开发新的功能模块。在微服务的软件架构时代,敏捷开发的软件工程模式备受青睐,其正是软件工程瀑布模型的应用和进步。
土木工程建设,城市规划、城市开发,又例:楼盘/小区的规划开发,从商机的获得,到地皮选定/土地征用,以投标获得土地开端。而后,商业计划书,到规划图纸,到施工工程图纸,到施工建设,到装修交付,到工程验收,最后以商品房出售/销售。软件工程的概念,应用于软件开发的工程,类似于土木工程。以用户简单应用为例:获得一个软件应用的信息后,开始软件工程的工作程序。从用户获得用户的实际需要:需求分析;与用户对接、探讨、确认最准确的用户需要,并向用户介绍确定用户的合同意向:概要设计;软公司开始开发流程:详细设计;将软件的详细设计实现为软件产品:编码实现;确定软件满足用户需求且保证可用性及稳定性:软件测试;在用户环境为用户安装调试软件产品,交付用户使用:软件实施;在软件交付用户或上线(即:Web Application在网络上运行)后,由用户确认软件开发是否满足软件需求:软件验收。
大致一九八几年,微软公司推出其第一款操作系统:CMD,黑白屏幕,以cmd命令与电脑交互,应用于最早期的智能PC上。之后,微软推出了windows 1.0(视窗1.0)操作系统,首创图形界面,即今日通过鼠标键盘与电脑交互,丰富的屏幕画面交互及反馈。苹果公司的PC和其独有的苹果操作系统,大致亦诞生于此时。1997年,中国大陆的互联网元年,当微软公司推出窗体操作系统:windows 98时,在全球引起巨大浪潮。至今日,windows 11的时代,windows操作系统,从操作界面、操作功能、界面布局、视觉效果、用户体验,健壮性、稳定性、高效性,已经过漫长的升级与改进。再此过程中,投入巨大的人力、物力、财力及时间。以win 7操作系统为例,以微软公司的实力,仅软件开发阶段已汇聚了全世界大致9000位顶尖的开发人员。Windows操作系统上有丰富的应用软件:如Photoshop/Flash等等,称之为Windows的生态。Photoshop软件从推出,至今日丰富完善的功能,如Windows操作系统之例,亦走过漫长而艰难的路。在软件开发领域,软件工程的理论应运而生,基于对软件工程的认识,一个成熟而完善的软件产品,来自长久的时间、巨大的人力、物力、财力。其中很重要的部分,因为用户的需求而更新迭代软件功能,包括完善用户体验、修复软件缺陷及错误(即:bug)。
因此,在软件开发领域,依然:不积跬步无以致千里,不择细流无以成江海。
一叶知秋 于 古都长安
甲辰年 正月二十四 甲辰
特别说明:
在软件正版化的契机下,有为盗及祸者。本人于此时、于此事,感触颇多。第四次工业革命,即信息技术的革命。普通百姓亦有了解计算机及软件开发相关知识的需要,因此,本人对计算机及软件开发的相关知识,作科普性质的文章。
江郎并未才尽,只因无病呻吟,既无能为力,也无必要。本人,在此次软件正版化的事情里,因优快云网络文章的原因(法治、知识产权保护、软件正版化、CentOS 7操作系统),在质疑中思索,而有以本人计算机科学与技术专业,本科毕业的专业基础,以及15年IT行业工作经验的积累,有相关技术类网络文章。
2024年3月4日 于 西安