当前位置:论文网 > 论文宝库 > 信息科技类 > 软件开发论文 > 正文

探讨计算机应用与软件开发

来源:UC论文网2016-06-27 10:43

摘要:

当前,计算机应用已涵盖了人们的吃,穿、住、用、行等各方面,成为人们曰常生活中不可缺少的組成部分。因此,程序员需要对软件的架构设计进行更进一步研究,以提供更优质的计算

  随着社会的进步和科技的发展,计算机越来越广泛的应用于社会的各方面。人们对计算机应用的需求越来越大,质量要求越来越高,这推动了计算机应用往大型化、复杂化发展。计算机应用的大型化、复杂化,对应的计算机软件也趋于大型化、复杂化,这就造成了软件开发难度的增加,特別是作为软件核心的软件架构。因此,要开发出优质的软件,其架构的实用性、安全性、稳定性等都要考虑到并且兼顾好。
 
  1.计算机软件的发展历程
 
  50年前,计算机只能应用在科学研究中,使用者是高素质的专家,而今天,计算机应用已深入到社会的毎一个角落;40年前,文件不能方便地在两台计算机之间进行传输,如今,即使相隔遥远的两台计算机也可以利用互联网通过应用软件实现文件的无损传输;30年前,数据共享还只是一个设想,在不同的应用软件之间能共用相同数据的设想,如今,数据库技术的发展使得不同的用户能在不同时间、不同地点共享的使用相同的数据;计算机给日常生活带来的巨大改变使拥有想要进一步去了解的渴望,让它在生活中带来更多的方便,要想更好的发展这项技术,先了解它的发展历史以及结构特点是非常有必要的,只有深入的了解它才能更好的掌握它。
 
  1.1机器语言与汇编语言
 
  最初的计算机软件是用一种低级的编程语言携程,这种编程语言是基于二进制编码来进行编程的,编出的程序全是由0、1组成,直观性差,容易出错,而且不同型号的计算机使用不同的机器语言,某一型号计算机的机器语言编制的软件,不能在另一型号的计算机上执行。因此,程序员必须记住各种不同型号计算机的机器语言指令的二进制数字组合,这种编程语言对于程序员的要求很髙,没有一定的专业能力根本不能进行这项工作,高起点对于计算机的发展起到了很大的限制作用,只有很少的专业人员能对计算机进行应用,因此,推广和应用并不广发。为了便于学习和编程,技术人员使用助记符来表示每条机器语言指令,这就是汇编语言。助记符的使用,使汇编语言相对于机器语言来说简洁了很多,编写软件也容易了许多。
 
  1.2高级程序设计语言
 
  汇编语言虽然在易用性上进步了很多,但仍需程序员记住大量的汇编指令,而且汇编语言的指令形式依旧是偏向于机器形式,与人们日常使用的自然语言仍有较大的差距。为了能更容易的学习和编程,提髙程序的可阅读性,髙级程序设计语言被研发出来。高级语言的指令形式更类似于人们日常使用自然语言和数学语言。
 
  在这两个时期,计算机软件技术并不发达,能利用的资源较少,人们对计算机软件的认识也不够,导致了计算机软件的编写者编写开发了这个程序之后使用者就是自己的这种尴尬状况。另外由于软件的使用规模小,在编写开发的过程也不需要投入太多的人力、财力和物力,通常凭一己之力也能完成这项工作,因此,也就没有形成一套规范系统来指导这项工作的操作,对于这个开发过程就更加没有人来进行监督管理。这个能仅凭一己之力就完成的开发工作的编程环境只需要在开发者的脑海中有一个大概的结构框架就够,编程者没有必要将其全都记录下来,归档供以后翻阅查询,因此,除了编程者留下的程序清单外,并没有其他的可供查询的资料。
 
  1.3软件工程和结构化程序设计
 
  随着计算机的日益普及,人们对计算机应用的要求也日益提高,其规模、复杂程度逐渐增加,导致了对应计算机软件的规模、复杂程度也随之增加。由于软件的规模和复杂度的增加,其开发和维护出现了一系列严重问题,不仅是工作量的增加,更严重的是,因为没有规范的流程,程序员在开发软件时让软件具有个体化特性,应用软件在开发出来并正式投入使用之后,软件出现问题后的维护问题日益凸显,由此衍生出了“软件危机”。为了解决这个严重的问题,国际上顶尖的计算机科学家在联邦德国召开了异常国际会议,会议上讨论了软件维护困难的问题,同时,在这次会议上“软件工程”这个词语正式被提出来,它获得了重视并被投入研究。将软件开发工程化,开发人员按照规范的流程开发软件,不仅有效避免主观失误,更重要的是使软件规范化、通用化,可维护性大大提高。
 
  到了20世纪70代,出现了结构化程序设计技术,这是软件发展的一个重要的里程碑。结构化程序是一种面向数据流的设计方法,它主要是以处理过程进行详细设计以及对模块化功能进行加强的原则进行编程的原则。其中,模块化是把软件要解决的总目标分解为若干子目标,然后,再进一步分解为具体的小目标,把每一个小目标称为一个模块。
 
  基于模块之间的独立性,在设计出总体的结构之后,将每个模块进行分开设计,这样就算将复杂的问题简单化,将原来复杂的系统分开成为简单的模块来进行编程开发对于模块功能的维护、拓展和开发都有很大的帮助,不至于在解决一个小问题的时候带动整个系统都发生变化,还可以利用这个现有的模块进行积木式的新功能的开拓。
 
  1.4面向对象程序设计
 
  面向对象程序设计解决了前面的计算机软件设计中出现的一系列问题,追溯这个概念的来源,最早应该要追溯到麻省理工学院,这是一个基于容量架构的实际系统里出现的对象以及实例的最早的时期。自从对这些进行深一步的研究之后,计算机专家就意识到了面向对象程序设计的优点,在面向对象程序设计出现之前结构化程序设计是软件开发界的宠儿,基于它是面向过程进行编程这一特点它为计算机软件开发历程做出了很大的贡献。而面向对象设计的出现解决了面向过程程序设计过程中的函数的不稳定性,函数在程序中很容易被改变造成系统的不稳定的性。
 
  面向对象程序设计改变了面向过程程序设计中的一些不好的方面,为此引进了不少的新概念以及方法,形成了它自身的独特性,面向对象的特征之一就是封装性,也就是说内部的状态以及算法对用户是隐蔽的,只有开发者利用特定的接口才能使用该对象;面向对象还有一个特点是继承性,继承性是指在一个公共类中,各自是封闭的,避免了数据和方法的大量重复,面向对象还有一个特点是多态性,也就是说同一个消息被不同的对象接受可以产生不同的结果,所有的细节由接收消息的对象来处理。
 
  2.计算机软件开发系统结构设计
 
  2.1结构化设计思想
 
  首先,根据系统分析的要求以及可以利用的资源对软件的总体结构进行大致的功能设计。这是宏观的、全局的规划和设计,要充分考虑各方面情况。接着,将功能复杂、繁多的总体结构按功能分解为子结构,各子结构功能总和为上层结构的总的功能。如果分解得到的子结构比较复杂,功能较多,可将子结构再分解为结构更简单,功能更单一的子结构,以此类推,直至分解出的子结构功能比较容易实现,分解的子结构也容易实现。
 
  2.2模块化设计思想
 
  将系统设计成由若干模块组成的方法称为模块化。各模块之间相对独立,实现功能单一,彼此间通过接口进行相互调用。每个模块可以单独的被理解、编写、调试、查错与修改。这样一来,可以简化开发、维护工作,防止错误蔓延,提高软件的可靠性。
 
                                                                                                                              李英华
                                                                                                       (广西日报传媒集团有限公司印刷厂)

核心期刊推荐