Java软件开发

摘要:本文简要介绍了Java软件开发中抽象数据转换的算法类型,程序设计方法,软件开发生命周期、软件开发各阶段的测试以及Java的安全性。

关键词:Java;数据结构;算法;程序设计;测试

中***分类号:TP312 文献标识码:A文章编号:1007-9599(2012)02-0000-02

Java Software Development

Chen Bin

(Hangzhou Normal University,Qianjiang College,Hangzhou310000,China)

Abstract:This paper briefly describes the type of abstract data conversion algorithms in Java software development,programming methodology,software development life cycle,software development phase of the test,and Java security.

Keywords:Java;Data structures;Algorithm;Programming;Test

一、Java数据结构和算法类型

(一)Java数据结构

线性表,链表,哈希表是Java常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。线性表是最基本、最简单、也是最常用的一种数据结构,它的数据元素是一对一的,逻辑结构较简单,便于实现和操作。链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的,相比于线性表顺序结构,链表比较方便插入和删除操作,熟悉了链表结构对Java的描述也就轻而易举了。哈希表也叫散列表,是根据关键码值(Key value)而直接进行访问的数据结构。

(二)算法类型

为实现抽象数据类型的有效转换,需要利用合适的设计策略对它们进行分析,当前最常见的算法有贪婪算法、分治算法、回溯算法。

1.贪婪算法

贪婪算法的原理是所有过程都选择最容易的,它首先考虑的是当前每个步骤的最有利性,没有进行过多的考虑对于将来的影响,贪婪算法虽然比较简易,但往往不能够达到目的。如:从一个城市到另外一个城市,在每个分岔口都选择最容易走的路,如果两个城市间的路程都是由所有最容易走的路组成,那么贪婪算法是一个正确的选择,但如果两个城市之间不能够通过这些最容易走的路到达时,贪婪算法就没有起到原先的目的。

2.分治算法

分治算法的原理是将整个大问题分类为若干个小问题,然后对这些小问题进行单个的解决,使所有小问题的处理结果合成对整个大问题的解决方案,使用这种算法的前提规则是各个小问题的类型需要与大问题相一致。

3.回溯算法

回溯算法实质上就是一种试错法,在数据转换过程中如果存在多种可供选择方法时,随机挑选一种方法进行解决问题,当该种选择无法解决问题时再选择另外一种,以此类推。该种方法不适用于选择性比较多的问题,过于繁杂。

虽然当前实现抽象数据转换的算法类型有很多种,但不是每一种方法都适用,判断某种方法是否适用的主要依据是使用时的简单性,清晰性,时间和空间上的效率性等。

二、程序设计方法

(一)过程式程序设计

过程式程序设计方法就是将整个软件系统分解成多个子层次结构,这些子层次结构由多个子程序组成。它的规则是各个下层子系统为上层子系统提供服务,同时也要为同级的其他子系统提供服务,以此类推,进行逐个解决整个大问题的小方向问题。过程式程序结构的缺点是每个过程的相互依赖性过大,在有一部分出现问题时会涉及到其他的部分,不容易检测出错误,在实际操作中难以维护,容易产生意外的难题。

(二)函数式程序设计

函数式程序设计方法和过程式设计方法的相似之处是同样是将整个软件系统分解为多个子程序,但它的运作过程与过程式设计方法不同,它的各个子程序间是分层工作的,子程序之间不需要相互作用。由此,当面对大型的程序设计时,由于各子程序之间相互的联系和依赖性不强,有利于日常维护和错误检测。

(三)面对对象程序设计

面对对象程序设计方法的原理是将整个软件系统分解成一系列相互通信的对象,对这些对象都包含数据及数据操作方法,而且各个对象之间能够很好的隐藏数据,做到保密性,进而避免产生不必要的失误。而且各个对象的相互作用及影响都不大,在设计和维护中都比较容易进行,当出现内部失误时可以及时的查到问题所在。

面向对象程序在运行时,是各个对象之间相互发送信息,然后各个对象通过自身的执行方法进行响应,在操作运行过程中,各个对象不仅需要包含数据还需要数据操作的方法,发送消息的对象称作客户端,接受消息的对象称作服务器。在发送消息的过程中,客户端对象不需要了解服务器的具体内部细节,只需要对其发送特定的消息就行。

在计算机系统的世界里,是不允许程序中存在任何差错的,计算机能够精确的执行程序中各个任务,细微的错误都有可能造成巨大的灾难,所以程序设计方法的运用是至关重要的。在Java语言和其他语言对字符的描述不同,Java基本的char类型和的是十六位的无符号整数,为使Java能够支持特定语言的字符串显示,在Java的程序设计中需采用不同的程序设计方法相互辅助,当前使用最普遍的程序设计方法就是过程式程序设计,函数式程序设计和面对对象程序设计。

三、软件开发生命周期

软件开发过程一般包括用户需求、分析、设计、实现、集成、维护。

(一)用户需求。软件开发的前提是程序员需要确定用户的需求是什么,即需要明白用户对软件开发的期望是什么。

(二)分析。在分析阶段,程序员需要将各个系统的操作进行精确的描述,让用户能够清晰的了解到整个系统的过程与结果,必要时需要开发出系统原型,易于用户理解,让用户去确认是否与其期望相一致。

(三)设计。在设计阶段,需要确定每个类的变量和方法,在执行Java程序时,计算机必须保存所有用到的类的执行代码和制定的对象。当对象出现时,java会自动跟踪并对对象进行判断,判断其是否被引用。

(四)实现。根据分析和设计的结果进行编写程序,进而完成系统的实现。

(五)集成。把分散的各个部分集合到整个软件中。

(六)维护。在程序的使用年限里,需要进行定期的变更,进而实现程序更好地应用。

Java开发的生命周期与传统的生命周期有些不同,它不是在应用程序开发的时候创建对象,而是在程序的运行过程中根据需求进行建立的,在Java语言的开发中,刚开始的时候无法确定对象及生命周期时间等问题,它存在自身的动态机制,但它最大的缺陷就是会影响到应用程序的执行效率,这需要采取相应的措施进行优化。

四、测试

测试在软件开发的各个阶段都是必需的,而并不单单存在于编码阶段。对程序进行测试时,判断的依据是程序的友好性,健壮性及可靠性等因素。

(一)测试数据的设计:

1.随机测试

随机测试是对程序进行各个测试,直到程序崩溃,确定可用程序,这种方法效率不高。

2.黑箱测试

黑箱测试不是把全部的程序进行测试,而是把整体的程序进行分类,然后有组织的选择输入的数据,这种方法在实际的操作中比较简易,但是在数据比较大的情况下很容易造成忽视一些数据。

3.白箱测试

白箱测试是指在测试中尽量对程序中的所有数据都进行测试,这个测试方法因为需要对程序中的所有代码进行查看,所以这个测试方法运行比较困难,指适用于对小数据程序的测试,当前最好的测试方法是将白箱测试和黑箱测试进行结合。

(二)编码阶段的测试

在编码阶段需要对三个时刻进行数据测试:

1.单元测试

根据目标类型编写一个实例化对象,然后对该对象发送消息,对其进行彻底的测试。

2.集成测试

当把所有的类都单独测试完毕后,然后确认他们是否能够在一起正常工作,在分别单次向测试环境中添加一个类,发现出错的根本来源,使测试达到最完善的程度。

3.验收测试

验收测试也是系统完成后的最后一关测试,需要通过该测试确认系统的功能是否能够在实际环境中运行。

(三)分析和设计阶段的测试

在分析阶段的测试是对分析工作的复查,将所有现实存在的因素都考虑在内,测试是否满足用户的要求。设计阶段的测试是不断的验证是否按照了分析阶段的结论进行工作,是否是根据客户的要求。

(四)代码测试

在测试代码时可采用预排法,虽然比较浪费时间,但是能够有效的发现缺陷获得高质量的软件。

五、Java的安全性

由于Java是面向对象的程序设计语言,信息流的安全性控制需要得到重视,Java虽然利用封装和隐藏机制,在一定程度上保证了信息的安全性,但是仍然不能保证信息流的保密性,可通过以下方法对Java的安全性进行改进,首先对Java中的主要语言成分进行改造,对package语句、类声明语句、变量成员声明及方法声明语句等进行修改。Java平台提供的原始安全模式是沙箱模型,对用户的访问权限进行限制,它由字节码检测器、类装载器和安全管理器三部分组成,它的原理是只信息本地代码,可以完全访问沙箱内的重要信息,对于***的远程代码,只能访问沙箱内的有限资源。Java平台通过使用认证器查看类文件句法的正确性,防止病毒的侵犯。但由于Java是可以从网络上***运行的,这造成了Java面对很多不安全的因素,如一些恶意程序对Java用户进行攻击,Java虚拟机提供的安全管理器和Java类文件认证器担任了防卫本地用户被攻击的任务。

小结:

Java是当前计算机软件开发中不可缺少的一种程序设计语言,很多软件开发工作者对Java进行了多方面的研究与探讨,本文只是通过一些小的方面对Java进行了浅显的概述。

参考文献:

[1]王宏,曹家庆,黄斌,陈琪.基于Java的数据结构算法演示系统[J].南昌航空工业学院学报(自然科学版),2006,2

[2]曹爱增,张慧芬,段春笋,张忠杰.JAVA程序设计方法研究[J].山东轻工业学院学报,2004,1

[3]张雪萍,鲍丹,王家耀.Java多线程测试策略及测试方法探讨[J].计算机应用研究,2006,11

[4]艾丽蓉,赵庆兰,刘西洋等.面向Java语言的进化测试中分支依赖***的构建[J].计算机科学.2006,7

[5]麻孜宁,伊浩,李祥.Java多线程并发系统中的安全性与公平性[J].计算机技术与发展,2006,2

Java软件开发

转载请注明出处学文网 » Java软件开发

学习

国家电网公司企业文化论文

阅读(23)

本文为您介绍国家电网公司企业文化论文,内容包括国家电网公司企业文化论文,国家电网有限公司企业文化word版。1基层供电企业要把握好国家电网公司企业文化建设中的“五统一”

学习

养不教 父之过

阅读(22)

本文为您介绍养不教 父之过,内容包括养不教父之过全文下一句,养不教父之过全文阅读。《通知》在一组“推动、帮助、吸引、避免、促进……”组成的句式中,一如既往地展现了管理部门一片“良苦用心”。简而言之就是为进一步繁荣电视纪录片

学习

解密“食用胶”

阅读(22)

本文为您介绍解密“食用胶”,内容包括食用胶使用方法,食用胶吃法大全。面条掺食用胶,湿面条能燃烧

学习

白润生学术思想探析

阅读(28)

白润生先生的《当代中国少数民族新闻事业调查报告》(以下简称《报告》)出版后,笔者细细拜读一遍。读完后掩卷沉思,总觉得意犹未尽,但那种感觉似乎又无法马上表达出来。两月之后,思绪沉淀,写下本文,权作读后感言。

学习

数据中心PUE解析

阅读(27)

本文为您介绍数据中心PUE解析,内容包括数据中心pue是衡量什么的指标,数据中心pue值标准。摘要本文介绍了数据中心和PUE的基本概念,并对PUE数值及相关因素进行了分析和解读。PUE可作为节能技术衡量工具,是一个逐步调整的过程。所有降低PUE

学习

我是不是该介意老婆和异性上司出差

阅读(16)

本文为您介绍我是不是该介意老婆和异性上司出差,内容包括介意和男上司一起出差吗,已婚男上司介意我和其他异性聊天。我这个事有点复杂,也不太好和别人商量,所以想问问你。我老婆36岁,长得普通,但有种职场女人特有的气质。她干了七、八年

学习

十路弹腿第三路之进步劈砸拳的练与用

阅读(51)

本文为您介绍十路弹腿第三路之进步劈砸拳的练与用,内容包括形意劈拳的实战用法,戳脚翻子拳实战技击解。对于十路弹腿而言,不少拳法均把它作为基础功法,如查拳、八极拳、劈挂拳和翻子拳等都有弹腿的练习。从流派形式而言,弹腿又有临清、少林

学习

社会语言学名词

阅读(40)

本文为您介绍社会语言学名词,内容包括社会学名词大全,社会学名词解释大全。社会语言学sociolinguistics研究语言与社会之间相互关系的学科。有狭义和广义两说。狭义社会语言学又称“城市方言学”,主要研究语言的变异。广义社会语言学除语

学习

《亲爱的汉修先生

阅读(47)

本文为您介绍《亲爱的汉修先生,内容包括亲爱的汉修先生全文免费阅读,亲爱的汉修先生全文多少字。我妈妈一直逼着我回答您那些又蠢又无聊的问题。她说如果我真的想成为作家,就应该照您信里的建议去做。我应该多看书,多观察,多听,多想,多写。她

学习

“臭氧空洞”

阅读(35)

本文为您介绍“臭氧空洞”,内容包括臭氧空洞现状大全,臭氧空洞专业术语。别看这薄薄的3毫米臭氧层在大气中所占比例很小,但对人类的生存环境影响却很大。臭氧层能“吞没”掉99%以上的太阳辐射的紫外线,从而使人类避免受紫外线对人类及地球

学习

生态危机生态文明论文

阅读(25)

本文为您介绍生态危机生态文明论文,内容包括关于生态危机和生态文明的论文,生态文明应对生态危机。一、生态马克思主义的由来及内涵

学习

洛克的《教育漫话》

阅读(26)

本文为您介绍洛克的《教育漫话》,内容包括洛克的教育漫话全文阅读,洛克的教育漫话。摘要:洛克在《教育漫话》中提出的绅士教育思想体系受家庭和学校教育影响,在绅士教育体系中,他重视早期的教育,认为体育是基础,“有健康的身体才有健全的精神

学习

商事主体概念界定

阅读(44)

本文为您介绍商事主体概念界定,内容包括全国商事主体信息公示,商事主体名称怎么填写。摘要:商事主体概念和范围的界定不仅具有理论上的价值,也具有法律实践上的意义。但是多年来我们对商事主体并没有一个清晰的界定。本文从商事主体的内涵

学习

石广生:中国加入WTO签字最多的人

阅读(18)

2001年11月11日,在卡塔尔首都多哈,石广生作为外经贸部部长,代表中国签署了入世议定书,这标志着中国正式加入了世界贸易组织(WTO)。而在中国入世的历程中,1999年11月15日,他和美国贸易代表在北京签署了中美关于中国加入WTO的双边协议;2000年5月19

学习

旅游景区开发中核心利益相关者分析

阅读(16)

本文为您介绍旅游景区开发中核心利益相关者分析,内容包括旅游景区开发风险分析,旅游项目开发各阶段工作重点解读。摘要:文章对旅游景区开发中的核心利益相关者进行了界定,并通过分析各利益主体的利益诉求,发掘他们之间错综复杂的利益冲

学习

未来10年中国制造对"高级蓝领"的开发与培养研究

阅读(16)

本文为您介绍未来10年中国制造对"高级蓝领"的开发与培养研究,内容包括中国制造2025缺蓝领,中国制造呼唤高级蓝领。【摘要】本文通过对中国“高级蓝领”发展现状深入了解和短缺的主要原因地研究分析,论述了未来10年中国制造如何开发培养“

学习

金华经济技术开发区

阅读(20)

本文为您介绍金华经济技术开发区,内容包括金华经济开发区范围,金华经济开发区的建立过程。摘要:金华开发区在成功升级为部级经济技术开发区后,站在新的发展起步线,如何有效拓展空间、提升产业层次、创新管理机制等,率先实现转型升级,为“赶超

学习

资源开发与市场

阅读(20)

本文为您介绍资源开发与市场,内容包括资源开发与市场综述文章投稿,森林资源开发与利用。大蒜脱臭机理及其系列产品的开发张富新,赵丰丽,段香芝

学习

元认知开发:元数学意识的自然启蒙

阅读(16)

【摘要】元认知开发是元数学意识的自然启蒙,是提升小学生数学自我效能感的有效策略。从元数学、元认知与自我效能感优化策略的内在关系出发,优化学生数学学习自我效能感的手段、途径和方法,可以有效地促进学生数学学习质量的提升和数学学习

学习

乡土资源的开发和利用

阅读(19)

本文为您介绍乡土资源的开发和利用,内容包括乡土资源开发与利用论文,乡土资源开发与利用研究。摘要:农村小学语文教师要以新的课程标准为依据,利用多种途径,因地制宜地开发和利用独特的乡土资源,为促进学生全面而有个性的发展服务。

学习

如何做好客户开发

阅读(21)

本文为您介绍如何做好客户开发,内容包括如何做好客户开发,怎么开发新客户最有效。管理学大师彼得・德鲁克曾说过:“评价一家企业是否兴旺,只要回头看其身后的顾客队伍有多长就一清二楚了。”为此很多企业都在大力地发展客户、维系客户。但

学习

课程开发的三个关键

阅读(29)

本文为您介绍课程开发的三个关键,内容包括课程开发与利用的基本原则,论述课程开发的全过程。传授什么、如何传授、怎样评估,是培训课程开发中的三个关键问题,而其中最有难度、最有挑战的是传授什么,即如何提炼作为课程内容的那些最佳工作实