百度一下 藏锋者 就能快速找到本站! 每日资讯归档 下载藏锋者到桌面一键访问

当前位置:主页 > 云计算 > 给计算机嵌入灵魂——软件

给计算机嵌入灵魂——软件

所在栏目:云计算 时间:07-31 11:17 分享:

人的魅力在于思想和灵魂,计算机的魅力在于软件,计算机是软件的载体,没有软件的计算机就只是一个空壳硬件,没有灵魂的独立体,软件与硬件是相互依存的。早在ENIAC 问世的时候,软件就出现了,但是那时的软件很小、很片面,人们还没有意识到软件能发展的这样迅速。

随着晶体管的出现,电子计算机逐渐深入到了各个领域,使用计算机的人多了,需求自然也就更多了,所以,人们常常为了满足自己的需要,而编写适合自己使用的程序。但是程序也并不是每一个人都会写,于是慢慢开始出现了一群以写软件为生的人,他们大多是数学家和电子工程师,在1960年,美国的大学里开始出现了一门新兴的学科,那就是软件学科,毕业后颁发计算机专业的学位。这些因素都推动了软件技术的发展。

软件技术的发展,大致分为5个历程。

1.以Algol、Fortune等语言为标志的第一代算法技术

随着软件的广泛使用,其中的一些问题就出现了。人们编写软件大多是个体化开发,软件并没有一个固定的语法,也没有约定的写作方式,人们都按照自己的意志去编写软件,通常一些软件里面充满了程序技巧,很难被别人看懂,有时候,经过太长时间,连编写者自己也不清楚自己写的是什么,此时的软件数量急剧膨胀,软件需求日益增大,这样就使得维护难度大大增加,连编写者自己都看不懂的程序,要怎样去维护呢?这就是软件发展史上的“软件危机”。“软件危机”的出现,使人们不得不对当时的软件模式进行思考,后来,人们改变了对软件的一些不正确的看法,约定了软件的一些书写规范,并且认为一个优秀的程序,除了性能优良之外,还应该易懂、易用、易维护、易修改。

 2.以Pascal、Cobol 等编程语言和关系数据库管理系统组成的结构化软件技术

这类技术强调数据结构、程序模块的结构化,采用自上向下逐步求精的方法和单入单出的控制结构,使得程序的可读性加强。随着结构化技术的发展而出现的软件工程方法,使软件工作范围从只考虑程序的编写扩展到从定义、编码、测试到使用、维护等整个生命周期。

软件的开发不仅仅只是编程这一个环节,它还包括了开发、使用、维护与文档等,真正的编程工作只占到软件全部开发的1/5。结构化软件技术加强软件开发团队协作性,从而加强了软件本身的质量与可读性,可维护性,并且大大减少了软件的开发成本。

3.以Smaltalk、C++等语言为代表的面向对象(OO)技术

面向对象,就是指以对象为基本元素,将整个软件系统看做是很多离散的对象的集合。

对象可以是数据结构,也可以是行为。对象可以帮助设计者与分析软件的人员更直观、更形象地了解软件需求,更能方便工作人员之间的交流,并作为描述、分析和建立文档的一种手段。正因它直观形象,从而使得整个软件的可读性、可维护性与重用性大大增强,不仅减少了生产成本,也让工作人员更轻松。

4.以CORBA为代表的分布式面向对象(DOO)技术

面向对象技术对软件的重用,只限于单台计算机上、同操作系统与同编程语言环境下软件重用(软件重用:在构造新的软件系统的过程中对已存在的软件源代码片段、子系统设计结构、模块的详细设计、文档和某一方面的规范说明等重用的技术)。分布式面向对象技术是一个中间件技术,通过在系统软件与应用软件之间提供一个统一的软总线来屏蔽不同操作系统、不同语言环境下的差别,实现多台计算机,不同操作系统与不同编程语言间的软件重用。分布式面向对象技术不仅保留了面向对象技术的优点,更是大大简化了软件开发工作的复杂性。

 5.以COM、COR-BA3、EJB、WebService等为代表的软件构建技术

相比于OO与DOO,软件构建技术可以将软件以最终的二进制码形式进行重用。在使用OO或者DOO重用时,要求使用者理解原来程序的设计风格、底层技术,有时候重用比重新编写更麻烦,软件构建技术的出现,使一个软件可被切割成一些构件,这些构件相互独立,能自主参与开发与编译,甚至可以单独参与调试与测试。当所有构件完成后,将它们组合起来,就可以得到一个完整的应用系统。计算机为软件的发展提供了平台,软件的发展又促使硬件进一步进步。软件为硬件注入了灵魂,带来了思想;硬件为软件找到一个栖身之地,使之有用武之地。

给计算机嵌入灵魂——软件 免费邮件订阅: 邮件订阅

图片推荐

热点排行榜

CopyRight? 2013 www.cangfengzhe.com All rights reserved