随着软件应用领域的急剧扩大,已从传统的科学计算
和事务处理扩展到了诸如人工智能、计算机辅助设计
和辅助制造等等很多方面,所需处理的数据也已从简
单的数字和字符串发展为多种格式的多媒体数据,如
数字、文本、图形、声音和影像等。数据量和数据类
型的空前激增导致了许多程序的规模和复杂性难以承
受。为了最大限度地使用已有的资源和减少程序开发
的工作量,需要有一种比传统的程序设计方法抽象能
力更强的新方法。
非过程性语言
面向对象( Object Oriented,OO)技术起源于
二十世纪六十年代,八十年代后开始逐渐成为
一种有效的软件开发方法。所谓的对象 (object)
是指对客观事物的一种抽象的表示形式,是将
事物的属性和对属性的相关操作封装在一起而
形成的有机体。其中属性用来描述事物的性质,
属性的值体现了对象可能具有的状态。
操作是对象的外部行为。如果我们把汽车作为
一个对象,则其大小、颜色、形状等可定义为
属性,而启动、加速、加油等是对对象的操作。
多个对象所具有的共同属性,可用类来描述。
而对象就是该类( class)中的一个实例
(instance)。面向对象语言的特点是:封装性、
多态性和继承性。
体现面向对象思想的 C++语言继承了 C语言
的所有优点,如简洁性和高效性,同时引
入了如类、封装、继承、多态等。 C++语言
的这些特性使得 C程序员在学习面向对象思
想的同时不必放弃已有的知识和经验,原
有的软件积累同样可以利用,同时面向对
象的设计开发方法使软件的分析、设计、
构造更为合理。
C++借助 C语言的基础, 成为主流的面向对象语
言, 并促使面向对象的思想被普遍接受 。 C++是
一种混合型的面向对象语言 。 像任何人类的自
然语言一样, C++语言提供一种表达思想和概念
的方法, 当问题变得大而复杂时, 使用 C++语言
来解决问题将会比使用其它语言更加容易, 更
加灵活 。 有关这部分的详细内容, 在面向对象
的程序设计课程中将深入研究 。
在 Web技术的发展过程中,得到极大普及的是
Java语言。 Java是面向对象的网络语言,它的
独特的网络特性包括:平台独立性、动态代码
下载、为多媒体功能而设计的多线程、为通过
Internet快速传送而设计的紧凑的代码格式。
Java的工作方式与现有的桌面软件应用程序的
工作方式不同。 Java程序不需要存储在自己的
PC机上,而是存储在中央网络服务器。
通过浏览器访问到一个带有 Java小程序的 Web页
面时,Java小程序会自动被下载运行。因为 Java
程序通常都很小,因此下载运行就会比大程序快
得多。此外,版本控制在 Java小程序这样的中央
存储模式下更为容易。可以从任何一台具有 Java
虚拟机的机器上访问任何服务器上的 Java程序。