发信人: connor()
整理人: majorsun(1999-11-19 15:00:48), 站内信件
|
发信人: waterbird (waterbird), 信区: SoftEng 标 题: OO, OO以后, 及其极限<1> 发信站: BBS 水木清华站 (Tue Apr 28 21:06:29 1998) WWW-POST
OO, OO以后, 及其极限<1>
1. 什么软件开发?
软件开发的过程就是人们使用各种计算机语言将 人们关心的现实世界映射到计算机 世界的过程;
现在的计算机的数学理论基础是由计算机的开山鼻祖,大名鼎鼎的图灵于1937年提出 的图灵机模型. 随后不到十年,电子计算机就诞生了(1945).(埃尼亚克)
我们都知道,它当时的主要任务之一就是用于导弹弹道轨迹的计算. 当时的软件开发(如 果可以称之为软件开发的话)与现在的大不相同.为了算一道题,要有人事先把完成加减乘 除等各类运算的部件像搭积木那样搭起来,如果换一道题,则要把这些部件分解开来,根据 新的要求重新搭建,效率极低(与现在比).
现代电子计算机的体系结构及实际计算模型来自冯.诺依曼的思想. 1946年他和他的 同事们发现了埃尼亚克的缺陷, 发表了一份报告, 提出了提出了程序放入内存,顺序执行 的思想,这样,当算一道新题时就只需采取改变计算机中的程序的 "软"的方法.
英国的科学家维尔克斯实现了冯.诺依曼的思想, 领导研制了'艾克萨克', 在技术上比 埃尼亚克来了个大的飞跃.
因此, 现在的计算机通常被称为冯.诺依曼计算机.
软件开发的历史也从此正式开始.
早期程序员们使用机器语言来进行编程运算; 随着编译技术的出现, 人们设计了许多 更高级别的语言; 这些语言摆脱了机器语言繁琐的细节,更接近于人的自然语言,迅速流行 开来.
据统计, 全世界的高级语言起码有几千种, 但从可计算性的角度看, 它们的计算能力 都等价于图灵机. 已经证明, 一个计算机语言, 只要除了赋值语句之外, 还包括顺序语 句,条件语句和循环语句, 它的计算能力即相当于图灵机. 这里当然要排除其他技术因 素的影响, 如程序长度,变量个数,数据精度等.
由于图灵机的想法是把问题转化为一步一步按规则执行的机械求解过程, 各种计算机 早期程序员们使用机器语言来进行编程运算; 随着编译技术的出现, 人们设计了许多 更高级别的语言; 这些语言摆脱了机器语言繁琐的细节,更接近于人的自然语言,迅速流行 开来.
据统计, 全世界的高级语言起码有几千种, 但从可计算性的角度看, 它们的计算能力 都等价于图灵机. 已经证明, 一个计算机语言, 只要除了赋值语句之外, 还包括顺序语 句,条件语句和循环语句, 它的计算能力即相当于图灵机. 这里当然要排除其他技术因 素的影响, 如程序长度,变量个数,数据精度等.
由于图灵机的想法是把问题转化为一步一步按规则执行的机械求解过程, 各种计算机 语言也不过都是某种形式语言, 因此软件开发的过程实质上就是程序员们对客观世界问 题域的形式化的过程.
程序员们先建立问题的模型(形式化), 再用计算机语言加以合适的表达, 最后再输入计 算机里进行计算.
-- ※ 来源:.网易 BBS bbs.netease.com.[FROM: 202.96.152.112]
|
|