计算机软件开发语言问题

点赞:5385 浏览:19477 近期更新时间:2024-03-18 作者:网友分享原创网站原创

摘 要:计算机软件开发语言成为计算机爱好者和计算机软件开发者探究讨论的热点.结合自身经验,对面向过程、面向对象、面向方面的计算机软件开发语言的发展及其存在的问题和解决方案展开分析和阐述.

关 键 词:计算机软件开发语言;面向过程;面向对象;面向方面;问题;解决

中图分类号:TP312

谈及计算机的发展升级,就必然要讨论计算机软件的开发,而计算机软件开发中最为重要的环节即为软件开发语言,它是计算机软件开发的根本支撑.从计算机兴起发展至今,计算机软件开发语言也经历了由低级到高级的不断完善成熟的过程.总体看来,计算机软件开发语言的成熟依次经历了以下三个阶段:面向过程、面向对象、面向方面的计算机软件开发语言.由于各方面因素的限制,在上述计算机软件开发语言中还存在一定的问题.本文笔者便逐一对这三个发展阶段存在的及其存在的不足和解决方案展开了分析和阐述.

1面向过程的计算机软件开发语言

1.1面向过程的计算机软件开发语言概述

对于原先局限性较大的软件语言来说,面向过程编程语言确实是计算机软件开发语言的一项重大突破.面向过程的计算机软件开发语言对使用者的技术及专业知识要求降低,使用者不需要全面了解计算机的各硬件特性就可以进行程序编写,这样就能够扩大应用范围,减少操作的技术性失误.此外,这种语言使得计算机软件与硬件相互分离开来,并成为一个新兴的独立行业.

1.2存在的问题

面向过程的计算机软件开发语言是通过逐步细化设计的方式产生的模块,因此其结果具有针对性,只适用于特定的应用条件,而不能够面向所有的计算机软件开发进行广泛推广.

C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等.指针是C语言的一大特色,可以说C语言优于其它高级语言的一个重要原因就是因为它有指针操作可以直接进行靠近硬件的操作,但是C的指针操作也给它带来了很多不安全的因素.从应用的角度,较其他高级语言来说,C语言在掌握与应用上具有较大难度.

1.3解决方案

对于C语言的缺陷,要想在学习和应用的过程中加以克服,就要掌握其核心概念,例如,结构化、三个执行流程、指针、重载、文件、优先级、函数、共用体、作用域等概念.从宏观角度分析,C语言编程的思想基础是结构化,C语言的每一个功能模块就是一个结构,每一个结构实现一个运算或一个算法,这个结构就用大括号表示,尤其要注意大括号的位置,其直接就决定结束算能的步骤.从微观角度来看,函数是C语言的驱动机制,由函数驱动来实现所有语句,熟练掌握函数命令和相关的配置参数就可以有效利用C语言的优势.如果能学会调试,就可以对函数功能的作用有更进一步的了解.

2面向对象的计算机软件开发语言

2.1面向对象的计算机软件开发语言概述

面向对象的计算机软件开发语言概念的实质在于,在一个问题空间中客观存在的实体称为对象,形色不一的对象以及对象之间相互作用、通信组成了客观世界这一个统一的整体,其核心特征即为对象的多态性和继承性.多态性指的是以多种形式呈现相同的界面.在使用函数编程时,软件设计人员只需要明确施加在对象上的动作,而不必关注此动作的实现方法等细节;继承性指的是一个对象获得另一个对象特征的过程.继承性可以利用层次分类的方式对大部分知识进行管理,实现了一次性定义不同对象的共同特征.面向对象的软件语言不要求使用者全面熟悉对象在工作状态下的细节,使用者只要明确对象的相关作用并且能够对其进行访问就可以实现软件开发.一般认为,较典型的面向对象语言有:Simular67、Smalltalk、EIFFEL、C++、Ja等.

2.2存在的问题

我们利用某些数据把一个特定图画的信息储藏起来,应该通过什么方式实现相应的显示、缩放等操作呢?方法是将以模块的形式对已经储存到源文件中的图画的相关数据和函数进行处理.其具有一个明显的缺陷,即没有明确数据和函数之间的具体关系,对这一状况不同的程序编写员有不同处理方式.有的程序员把数组用链表来代替,还有的程序员根据具体的使用需求编写特定的函数.这就可能导致整个程序在调试的过程中出现混乱及其他各种错误.

此外,面向对象的编程语言,例如C++,Ja等都提供了对RTTI的支持,并从而操作被subsumption遗忘的属性和方法,这种方法一般被叫做RTTI(RunTimeTypeIdentification).RTTI指的是在程序运行时保存其对象的型态消息的行为.某些语言实现仅保留有限的型态消息,例如继承树信息,而某些实现会保留较多信息,例如对象的属性及方法消息.但由于理论及方法论上的原因,很多人认为它破坏了面向对象的纯洁性.第一,它破坏了抽象,使人们不正确地使用了本来不应该被使用的方法和属性;其次,运行时类型具有不确定性,它使程序变得更脆弱;第三,消除了程序的扩展性.


2.3解决方案

总体看来,应该设计相应的标准来明确数据和函数的关系,提供切实的管理方法,使得程序编写元能够按照统一的方法来对数据和函数进行处理.此外,对于RTTI,其看来好像不可避免,所以由于其存在方法论上的一些缺点,从而必须被非常谨慎的使用.今天面向对象语言的类型系统中的很多东西就是产生于避免RTTI的各种努力.比如有些复杂的类型系统中可以在参数和返回值上使用Self类型来避免RTTI.当加入一个新类型时,需要仔细阅读dynamic_cast或instanceof的代码,必要时作出相应的改动,以保证这个新类型不会导致程序的混乱.特别是dynamic_cast常用于从多态编程基类指针向派生类指针的向下,它可以保证程序在运行时进行正确的转换.

3面向方面的计算机软件开发语言

3.1面向方面的计算机软件开发语言概述

面向方面软件开发语言的适用对象通常是面向对象的顾客产生的问题.面向方面软件语言是从“方面”这一角度编写程序.面向方面语言可以通过引进联结点、告知切入点等重要机制,在各独立的方面之间设置特定的联系,使各方面在运行中产生相互作用,形成一个系统的整体.

计算机软件开发语言问题参考属性评定
有关论文范文主题研究: 关于计算机软件开发的论文范文素材 大学生适用: 专升本论文、函授论文
相关参考文献下载数量: 27 写作解决问题: 本科论文怎么写
毕业论文开题报告: 文献综述、论文总结 职称论文适用: 职称评定、中级职称
所属大学生专业类别: 本科论文怎么写 论文题目推荐度: 优质选题

3.2存在的问题

以基于用例的面向对象开发为例进行分析.用例能够实现需求与关注的分离,但是在从需求到实现的映射过程中缺乏一个有效的支持方法.面向对象方法封装、继承和多态机制能够以相对容易的方式实现用例的包含关系和泛化关系,但是对于用例之间的扩展关系缺乏切实的实现方案.基于用例的面向对象方法在处理扩展用例时会经常引发代码的纠结或分散,以至当改变需求时,就会影响其他模块.

3.3解决方案

目前有一种名为Encase的轻量型框架,其在整体上不会影响系统的正常运行,系统的不同部分仍然受面对方面编程语言的影响,但是,选择轻量型框架并应用良好的编程实践在相当程度上可以减轻大部分负面问题.Encase框架的用途是简化切点、混入和方面组合.开发人员能够通过代码在Encase中应用方面,从而代替大多数其他轻量型AOP框架使用的配置文件(例如XML).

4结语

综上所述,在计算机技术不断发展的同时,相应的计算机软件开发语言也克服了各种阻力,应不同时代对计算机操作的需求,先后经历了由面向过程、面向对象、面向方面的逐渐升级.通过上文的论述,我们可以看到计算机软件开发语言具有广阔的发展前景,此外,我们也应该注意到,其在原理和操作上也存在一定的问题,这就要求软件开发人员提高自身能力,在实践中探究对其加以改进完善,为计算机及其软件开发的发展贡献力量.