一、计算机程序语言的历程
众所周知,计算机所接受的仅仅为一串数字代码,它通过接受人们所编制的语言程序,去命令自己如何执行工作。在计算机专业术语中,将这一串数字代码称之为指令代码,而计算机也正是通过执行这些指令代码,来完成计算机和人类的人机互动。机器语言是指可以由计算接直接接受并处理的语言,而指令代码则是操作码和地址码结合而成,由于各计算机不同的电路系统决定了他们语言之间的差异,因此,同样一个问题被放人不同的机器中执行,就得使用不同的机器语言来发布命令,并编写不同的程序。通过机器语言去编写程序,不仅浪费了许多的时间,更降低了工作效率。随之汇编语言的出现,相对于之前的机器语言来说,汇编语言在程序编写和程序修改方面则显得更简单,但是汇编语言的程序格式与机器语言大致相同,不同计算机的指令系统又不相同,导致不同计算机中使用的汇编程序也不相同,因此,汇编语言的程序还是只能应用在单一种类的计算机中。而除此之外还有一种宏编语言,它的组成高于汇编语言,但低于高级程序语言。
为了提高编制程序的适用性,五十年代初,已经研制出了一种高级程序设计语言,它与计算机本身的指令系统无关,它摒弃了传统的指令代码构成方式,而是由各种词语和数学公式,通过一定的语法规则而联系起来的。由程序语言组成的命令不再叫做指令,而是被称之为语言。之前由机器语言编写的多条指令,可以简化为一条语言,且程序语言可以适用于任何计算机,前提是该计算机中配有翻译程序。
二、计算机的软件危机与SDT的发展
软件技术经历的两个时期的发展历程,即是线性程序设计阶段和模块化设计程序阶段。线性程序设计在整个设计过程中都是由一个人完成的,这种工作模式导致它不能较好地去处理复杂程度较高的问题。因此在线性程序的基础上研制出了模块结构设计,模块程序设计主要包括瀑布型和喷泉型,通过call.do等语言来控制模块间的关系,这种设计方式可以对复杂的问题进行处理。随着经济的快速发展,各行各业对软件的需求量日益上升,供应量逐渐无法满足需求量。国外在研发一系列大型高级软件时也碰到了许多问题,抛开那些成功的案例,即使有些软件系统完成了,但是也没有在计划时间内结束,导致成本大大超出预算。正是这种糟糕的形势导致了软件危机的到来。其中,软件危机主要体现在以下三个方面:首先是软件的需求量已经大大超出了软件生产量;其次是软件开发的成本费用日益上升;最后是软件在质量与可靠性方面的要求也越来越高。
为了解决上述问题,在1968年北大西洋公约组织在会议上提出了软件工程这一说法,将工程的概念引用到了软件开发的过程中。通过工程的基础只是与运作方法对软件进行开发设计,并投入量产管理。在软件工程中,软件开发属于软件生命周期中的某个阶段,对于每个阶段的设计开发均要提出完整有效的文档资料,并对这些资料进行评审、检验、管理。1974年召开的第一次软件工程会议标志着软件开发设计的工作方式从个体手工劳动模式,成功地转化为了集体的劳动工程模式,为软件危机的解决带来了希望,特别是在软件开发工具、管理模式等方面取得了新的进展。在这段时期中,软件业仍然将程序语言作为软件生产率提升的主要工具,因此软件业在高级语言上面投入了更多的精力与资金,用来研发功能更广泛、效率更高的高级语言程序。
三、程序语言设计在软件开发中的应用
(一)程序语言设计在软件开发中的体现
九十年代最杰出的程序时间方法是面相对象的程序设计方法。这种新型的设计方式,在软件工程及智能方面都得到了有效的运用。更多的程序设计语言都被注入了OOP编程技术当中,已经成为了九十年代的主流趋势。大多数人都认为,面向对象的程序设计语言,意味着软件业进入了一个新的革新。OOP是人们通过模仿现实生活建立的模式,而研发出来的程序设计方式,这种研发思想源于人们对自然世界的认识,人们在处理现实世界的复杂关系时,逐步培养了一定的分析能力与抽象感知能力,并在这些能力培养的基础上对程序设计进行应用,从而形成了面向对象的程序设计概念。相对而言,非面向对象的语言编制方式所编织出来的程序,结构性与扩充性均较差一些。面向对象的编制程序,不仅能较好地解决以上问题,还能对传统软件设计中较复杂的问题进行简单的处理,避免之前的缺陷设计方式。
(二)传统程序设计中存在的缺陷
传统的程序设计技术是针对数据而研发出的设计方法,在这种设计方式中,过程和数据是独立存在的个体,数据是问题中的客体,用来阐述问题中存在的信息;过程是用来对这些信息进行处理的,因此编程员在编制程序的时候,必须事先对所有待处理的数据格式有个了解,对于不同的数据格式,需要编制出不同的程序。除此之外,传统的程序设计方式所编织出来的程序,只有很小一部分可以重复使用。另外,若在大型高级软件系统的开发过程中,设计人员随意改变了其中某个数据结构,而没有及时告知所有的开发者,那么其所存在的风险将是不可预知的。
(三)OOP的优势分析
以往传统的程序设计技术在运用中对程序与数据之间的内在关系不够重视,通过计算机所解决的问题都是一些现实中所存在的问题,这些问题的产生原因追溯到根本,无非就是各种事物之间相互联系所造成的。其中每组具体的对象均可用以下两种特质来进行描述:用来描述事物静态过程所需应用的数据结构,及对于以上数据进行有效执行(动态过程)。由此可见,只有将数据与过程有效地结合在一起,才能真实地反应实际存在的问题。数据结构与数据执行实际上是互相制约互相影响的,从这个角度思考的话,可以看出面向对象的程序设计技术与以往传统的数据过程设计技术之间存在着本质的区别。面向对象的程序设计技术是对问题进行一定的划分,通过人们所形成的自然思维去建立不同领域的问题模块,将程序中所碰到的问题模拟为真实世界中所存在的问题,进而得到更加直接与更加自然的设计结果,这种软件开发系统的主体为对象,这里的对象能真实地将实际存在的问题进行折射。
四、结束语
随着经济的日益发展,计算机软件技术行业的发展势头也越来越强烈。原有的人工智能、数据库、程序设计语言之间存在的相互关系,导致他们的研究之间必然存在一定的交融之处。例如,对于知识的描述事发能够通过类体系、数据库语言及程序语言等方式进行一体化等。而面向对象技术的产生,很可能会将三者的聚集并体现在面向对象上。无论一个语言中蕴涵了多少面向对象的基本因素,它开发软件的能力必然比以往的传统方式要更强,这一点早已得到了各业内人士的集体认同。因此对象与信息的程序设计方式将数据结构的设计方式取代,是软件业发展的必然趋势。
参考文献
[1]梁嵩,王建新,蛊羽,在线程序语言评测系统的设计与实现[J]计算技术与自动化,2010(2)
[2]苏锦钿,余珊珊,程序语言中的共归纳数据类型及其应用[J],计算机科学,2011(11)
[3]白洁,李春平,面向软件开发信息库的数据挖掘[J]计算机应用研究,2008(1)
[4]包空军,尚展垒计算机基础教育与创新能力培养[J]计算机教育,2007(2)
|