软件体系结构论文:一种面向方面软件体系结构模型
摘 要: 为了分离软件系统中的核心关注点和横切关注点,通过引入面向方面软件开发的思想设计了一种面向方面软件体系结构模型,并详细分析了该模型的三个基本构成单元,即构件、连接件和方面构件。最后通过一个网上支付实例验证了该模型具有一定的理论意义和实用价值。
关键词: 面向方面软件体系结构;横切关注点;构件;连接件;方面构件
20世纪60年代的软件危机使得人们开始重视软件工程的研究。起初,人们把软件设计的重点放在数据结构和算法的选择上,然而随着软件系统规模越来越大,对总体的系统结构设计和规格说明变得异常重要。随着软件危机程度的加剧,软件体系结构(software architecture)这一概念应运而生。软件体系结构着眼于软件系统的全局组织形式,在较高层次上把握系统各部分之间的内在联系,将软件开发的焦点从成百上千的代码上转移到粒度较大的体系结构元素及其交互的设计上。与传统软件技术相比,软件体系结构理论的提出不仅有利于解决软件系统日益增加的规模和复杂度的问题,有利于构件的重用,也有利于软件生产率的提高。面向方面软件开发(AOSD)认为系统是由核心关注点(corn concern)和横切关注点(cross-cutting concern)有机地交织在一起而形成的。核心关注点是软件要实现的主要功能和目标,横切关注点是那些与核心关注点之间有横切作用的关注点,如系统日志、事务处理和权限验证等。AOSD通过分离系统的横切关注点和核心关注点,使得系统的设计和维护变得容易很多。
Extremadura大学的Navasa等人[1]在2002年提出了将面向方面软件开发技术引入到软件体系结构的设计中,称之为面向方面软件体系结构(aspect oriented software architecture,AO-SA),这样能够结合两者的优点,但是并没有给出构建面向方面软件体系结构的详细方法。
尽管目前对于面向方面软件体系结构这个概念尚未形成统一的认识,但是一般认为面向方面软件体系结构在传统软件体系结构基础上增加了方面构件(aspect component)这一新的构成单元,通过方面构件来封装系统的横切关注点。目前国内外对于面向方面软件体系模型的研究还相对较少,对它的构成单元模型的研究更少,通常只关注方面构件这一构成单元。方面构件最早是由Lieberherr等人[2]提出的,它是在自适应可插拔构件(adaptive plug and play component,APPC)基础之上通过引入面向方面编程(AOP)思想扩展一个可更改的接口而形成的,但它关于请求接口和服务接口的定义很模糊,未能给出一个清晰的方面构件模型。Pawlak等人[3]提出了一个面向方面的框架,该框架主要包含了一个方面构件模型———Java方面构件(Java aspect component,JAC),但该方面构件模型仅包含了切点(pointcut),并把AOP中装备(advice)集成到了切点的表达式中,它主要从实现的角度进行了阐述,并没有给出详细的方面构件模型。本文没有只关注面向方面软件体系结构中方面构件这一构成单元模型,还详细分析了它的另外两个构成单元,即构件和连接件,因为面向方面软件体系结构各部分之间是相互关联的。
1面向方面软件体系结构相关概念
面向方面软件体系结构涉及诸多概念,以下将分别介绍。软件体系结构在软件工程领域有着广泛的影响,但当前仍未形成一个统一的、标准的定义。目前国内外普遍认可的看法是软件体系结构包含构件、连接件和约束[4]。其中约束描述了体系结构配置和拓扑的要求,确定了体系结构的构件与连接件的连接关系。这样就可以把软件体系结构写成
软件体系结构(software architecture)=构件(components)+
连接件(connectors)+约束(constraints)
构件是软件体系结构的基本元素之一。一般认为,构件是指具有一定功能、可明确辨识的软件单位,并且具备语义完整、语法正确、有可重用价值的特点,然而目前对于构件的具体结构及构成并没有一个统一的标准[5],而且一些主要的构件技术也没有使用相同的构件类型。另外,当前被广泛接受的构件定义并不包含具体的软件构件模型(software component model)。例如,Szyperski等人[6]给出了软件构件一个很有名的定义:软件构件是一个仅带特定契约接口和显式语境依赖的结构单位,它可以独立部署,易于第三方整合。但是关于软件构件模型有一个被普遍接受的观点是:软件构件是一个具有服务提供和服务请求功能的软件单元[7]。
连接件是软件体系结构另一个基本的构成元素,是用来建立构件间交互以及支配这些交互规则的构造模块。连接件最先是由Shaw[8]提出来的,她建议把连接件作为软件体系结构中第一类实体,用来表示普通构件之间的交互关系。目前对于连接件尚未形成统一的认识,尽管在软件体系结构中强调了连接件存在的必要性,但是关于连接件模型的研究还很少,连接件的实际应用还不成熟。
面向方面软件体系结构在传统软件体系结构的基础上增加了方面构件单元。通常认为,方面构件是封装了系统横切关注点的一类特殊的构件。目前关于方面构件模型的研究还处于起步阶段。
2面向方面软件体系结构模型
由于传统软件体系结构模型包含构件、连接件和约束,而面向方面软件体系结构是在传统软件体系结构的基础之上扩展了方面构件,所以面向方面软件体系模型结构包含构件、连接件、方面构件和约束。其中约束描述了面向方面体系结构配置和拓扑的要求,确定了体系结构的构件、连接件和方面构件之间的连接关系,而构件、连接件、方面构件是它的三个基本的构成单元。以下对这三个构成单元的模型进行详细的设计。
2.1构件模型
构件模型由以下几个要素构成(图1):
(a)端口。
构件的服务请求和服务提供功能是通过端口来实现的。端口是构件与外部环境进行交互的惟一通道。一般的构件模型通常采用两种端口,即双向端口和单向端口。在使用双向端口的构件模型中,服务请求和服务提供功能可以在同一个端口中实现。本文中的构件模型使用单向端口,此种端口分为请求端口和服务端口两种类型。
(a)服务端口。构件通过服务端口向其他构件提供服务。构件通过服务端口向其他构件的请求消息进行应答,返回响应消息。每个服务端口对应一个接口。
(b)请求端口。构件通过请求端口向其他构件请求服务。构件为了实现自己的业务功能,需要通过请求端口向其他构件发送请求消息。每个服务端口也对应一个接口。
(b)接口。
它定义了一个到多个业务功能。这些业务功能由服务端口进行提供,并由请求端口进行使用。一个接口限定了一个特定端口可以进行的交互功能,接口是构件间交互的契约。通常的接口类型有:Java Interface、WSDL 1.1 portTypes和WSDL 2.0 Interfaces等,也可以自定义接口类型。
(c)属性。
与类或对象相似,构件也具有属性,属性可以在构件使用前进行配置,它能够反映构件在交互过程中状态的变化。
2.2连接件模型
连接件是用来建立构件间交互以及支配这些交互规则的体系结构构造模块。连接件为构件间信息交互提供传输和路由服务。在最简单的情况下,构件之间可以直接完成交互,这时体系结构中的连接件就退化为直接连接。在更为复杂的情况下,构件间交互的处理和维持都需要连接件来实现。对于构件而言,连接件是构件的粘合剂,是构件交互的实现,也可以看做是一种特殊的构件[8]。与构件相似,连接件也具有端口。连接件的端口可分为两种类型,即源端口(source port)和目标端口(target port)。源端口用于接收构件请求端口中的消息,目标端口用于向构件服务端口中输入消息。连接件通常需要使用一种合适的绑定(binding)机制,构件的请求端口使用这种绑定机制来描述服务请求的方法,构件的服务端口也使用这种机制来描述构件进行请求的方式。常用的绑定机制有:WebService Binding和JMS Binding等,也可以自定义绑定机制。与构件一样,连接件也具有属性,来表示构件间交互的状态变化,如图2所示。
2.3复合构件模型
构件可分为两种,即原子构件和复合构件。前者是不可再分的构件。后者是可再分构件,它封装了若干个子构件。子构件间通过连接件相互连接,且子构件的端口也可以暴露成为复合构件的端口,子构件也可能是复合构件。如图3所示:复合构件A包含两个子构件B和D,子构件B和D通过连接件C进行相连,构件B的服务端口E暴露成为复合构件A的服务端口F,其请求端口G暴露成为A的请求端口H。
2.4方面构件模型
方面构件是面向方面软件体系结构的一个核心的构成单元,它封装了横切关注点,这是与传统软件体系结构最大的不同之处。图4给出了方面构件模型,与普通构件一样,方面构件也有服务端口和请求端口以及属性,但是它还有普通构件所没有的方面端口。当一个构件具有一个方面端口时,即可认为此构件就是方面构件。一个方面端口中包含若干个方面,这与一般面向方面编程(AOP)技术中方面概念有所不同。面向方面编程具有以下四个基本概念:方面(aspect)、连接点(joinpoint)、通知(advice)和切点(pointcut)。连接点是应用程序执行过程一个定义明确的位置,如方法调用是一种典型的连接点。切点是一系列连接点的集合,是方面的作用点。通知表述了在切点所选定的连接点处要执行的动作,常见通知类型有before、around和after等,分表代表在连接点之前、连接点附近和连接点之后执行相应的通知代码。方面是用来描述和实现横切关注点的基本单位,由切点和通知构成。方面端口中的方面横切关注的是构件,这与一般AOP(如AspectJ)横切关注的对象(object)不同,由于构件能够表达对象所不能表达的请求服务的能力[9],这使得方面端口中方面所采用的连接点模型和切点语言具有很大的不同。
2.4.1连接点模型
该连接点模型包含两种不同类型的连接点,即构件服务端口中的服务提供操作和请求端口的服务请求操作。由于构件的内部结构通常被视为黑盒,因此连接点模型应该仅考虑构件的外部可见元素,如构件请求端口和服务端口中的服务操作。如果连接点模型包含构件的属性,那么它将会破坏构件的分装性。
2.4.2切点语言
用来选用连接点的切点语言基于切点表达式,表1给出了切点的五个组成部分,即component、jp_type、port、interface和service,然后分别对其进行了说明。其中,jp_type代表选用的连接点类型,可以是请求端口中的服务、服务端口中的服务或所有端口中的服务,详细如表1。表2给出了切点语言的一些例子,其中正则表达式基于java.util.regexp包。
2.5面向方面软件体系结构模型
面向方面软件体系结构由构件、连接件、方面构件组成,详细请参见图6。
3基于面向方面软件体系结构模型的网上支付实例
近年来,网上购物发展迅速,网上支付是消费者主要的支付手段之一,图7给出了基于面向方面软件体系结构的网上支付模型,它由四个原子构件,即一个复合构件、两个方面构件和三个连接件组成。其中WebClientComponent代表客户端构件,它可以向网上银行构件WebBankComponent请求AccountService()服务,该服务有三个参数,即username、password、cost,分别对应于用户的网上银行账户名、密码及购买商品的消费金额。
〈component name="WebClientComponent"〉〈required.port name="WebClientRequest"〉
〈java.interface interface="AccountServiceInterface"〉〈service name="AccountService()"〉
〈param name="username"type="string"/〉
〈param name="password"type="string"/〉
〈param name="cost"type="float"/〉
〈/service〉〈/java.interface〉
〈/required.port〉
〈/component〉
连接件AccountServiceConnector用于连接客户端构件和网上银行构件,它采用WebServiceBinding绑定机制。
〈connector name="AccountServiceConnector"binding="WebServi-ceBinding"/〉
〈source name="S"/〉〈target name="T"〉
〈/connector〉
〈connect.source from="WebClientComponent.WebClientRequest"to="S"/〉
〈connect.target from="T"to="WebBankComponent.Bank-Re-sponse"/〉
网上银行构件是一个复合构件,由账户服务构件Account-ServiceComponent、账户数据库连接件AccountDBConnector和账户数据库构件AccountDBComponent组装而成。其中该复合构件的服务端口也使用接口AccountServiceInterface,这是为了兼容客户端构件请求端口使用的接口。
身份验证构件AuthenticationComponent用于验证用户的身份信息,它通过UserInfoConnector连接件访问用户信息数据库构件UserInfoDBComponent。
pointcut="WebBankComponent;BankResponse;AccountServiceInterface;AccountService()"
是该方面构件的方面端口中使用切点的表达式。
为了保证数据库构件UserInfoDBComponent和AccountDB-Component的安全性,方面构件SecurityComponent使用方面端口Security监视这两个构件的服务端口,使得在这两个构件服务调用之前增加日志和事务功能,而日志和事务功能在系统中通常表现为横切关注点,面向方面软件体系结构能够对它进行很好的封装,便于设计和维护。
〈aspect.component name="SecurityComponent"〉〈aspect.port name="Security"〉〈aspect〉〈pointcut="UserInfoDBComponent;UserInfoResponse;*;*|Ac-countDBComponent;AccountDBResponse;*;*"/〉〈advice.role="before"action="Log()"/〉〈advice.role="before"action="Transaction()"/〉〈/aspect〉〈/aspect.port〉〈required.port name="UserInfoRequest"/〉〈/aspect.component〉
4结束语
本文给出了一种面向方面软件体系结构模型,详细设计了它的三个基本构成单元模型,即构件、连接件和方面构件;最后通过一个网上支付实例验证了该模型有效性和实用性,为面向方面软件体系结构的实际应用奠定了一定的基础。笔者将继续完善该模型的相关理论,研究面向方面软件体系结构的工程化应用方法。
参考文献:
[1]FABRESSE L,DONY C,HUCHARD M.Foundations of a simpleand unified component-oriented language[J].Journal of ComputerLanguages,Systems&Structures,2008,34(2-3):130-149.
[2]LIEBERHERR K,LORENZ D,MEZINI M.Programming with as-pectual components,T R NU-CSS-99-01[R].[S.l.]:NoutheastamUniversity,1999.
[3]PAWLAK R,SERNTURIER L,DUCHIEN L D,et al.JAC:an as-pect-based distributed dynamic framework[J].Software Practiceand Experiences,2004,34(12):1119-1148.
[4]李千目.软件体系结构设计[M].北京:清华大学出版社,2008.
[5]马亮,孙春艳.软件构件概念的变迁[J].计算机科学,2002,29(4):28-30.
[6]SZYPERSKI C,GRUNTZ D,MURER S.Component software:be-yond object-oriented programming[M].2nd ed.[S.l.]:Addison-Wesley,2002.
[7]LAU K K,WANG Z.Software component models[J].IEEE TransSoft Eng,2007,33(10):709-724.
[8]SHAW M.Procedure calls are the assembly language of software in-terconnection:connectors deserve first-class status[C]//Proc of InICSE Workshop on Studies of Software Design.1993:17-32.
[9]NAVASA A,PREZ M A,MURILLO J M,et al.Aspect orientedsoftware architecture:a structural perspective[C]//Proc of Workshopon Early Aspects.2002.
随着我国现代化程度的不断提高,计算机软件被应用的领域愈发广泛,其本身的创造程度也越来越高,计算机产业现在已经成为一个规模庞大的产业。下面是我为大家整理的计算机软件论文,供大家参考。
计算机软件论文 范文 一:计算机软件开发中分层技术研究
摘要:在信息化建设水平不断提高的情况下,计算机软件在这一过程中得到了十分广泛的应用,此外,计算机软件开发在这一过程中也越来越受到人们的关心和关注。软件开发技术最近几年得到了很大的改进,这些技术当中分层的技术是非常重要的一个,所以,我们需要对其进行全面的分析和研究。
关键词:计算机;软件开发;分层技术
当前信息化时代已经悄然到来, 网络技术 的发展也使得人们越来越关注软件开发行业,计算机软件从原来的二元结构模式逐渐向多层结构模式发展,中间件也成为了应用层质量和性能非常重要的一个问题,此外,其也成为了计算机软件开发应用过程中非常关键的一个技术,其与数据库, 操作系统 共同形成了计算机基础软件。这一技术的应用能够使得软件系统扩展性更强,灵活性和适应性也在这一过程中得到了显著的提升,所以,分层技术也已经在现代计算机软件开发的过程中得到了越来越广泛的应用。
1计算机层次软件及其优点
计算机软件工程的最终目标就是研发质量和性能更好的软件产品,而在这一过程中基础构建和开发可以十分有效的为计算机软件的应用提供非常好的条件,构件是高内聚度软件包,其能够当作独立单元进行更加全面的开发处理,同时,其也为构件的组合提供了非常大的便利,对软件系统进行搭建可以很好的缩短软件开发的时长,同时还能十分有效的获得更多的质量保证。构件开发最为重要的一个目的就是广泛的应用,应用层次化软件结构设计 方法 的一个非常重要的目的就是可以更为科学合理的去应用构件技术。软件系统在进行了分解之后,形成了不同的构件模块,高层次构件通常被人们视为指定领域的构件。低层次构件只是与数据库或许是和物理硬件产生联系。层次划分是一个相对比较宽泛的概念,所以在层次关系方面并没有一个相对统一和规范的标准。不同构件内部的层次关系通常是上下层依附的关系。站在某个角度上来看,计算机软件的系统层次化就是指多层次技术的广泛应用,而根本原因是为了软件能够大范围的应用。采用分层模式可以非常好的展现出软件的可扩展性,系统某一层在功能上的变化仅仅和上下层存在着一定的关系,对其他层并不会产生非常明显的影响。分层模式也比较适合使用在一些标准组织当中,此外,其也是通过控制功能层次接口来保证其不会受到严重的限制。标准接口的应用能够使得不同软件可以自行开发,同时后期更新的产品也能够和其他软件具有良好的融合性。
2软件开发中多层次技术分析
2.1两层与三层结构技术分析
在两层模式当中,一般都是由数据库的服务器和客户端构成,其中,客户端能够为客户提供一个操作界面,同时,其还具备非常好的逻辑处理功能,同时还要按照指令去完成数据库的查询,而服务器主要是接收客户端的指令,同时还要按照指令对数据库完成查询,同时还要返回到查询结果当中。这种逻辑处理结构就被人们称作Fat客户,这种二层技术的客户端类型在应用的过程中能够完成非常多的业务逻辑处理工作,随着客户端数量的增加,其扩充性和交互作业以及通信性能等等都会受到影响,此外还存在着非常明显的安全问题及隐患。而计算机技术在不断的完善,传统的二层技术已经不能适应系统应用的具体要求。在这样的情况下就出现了三层结构技术类型,这种技术主要是客户端、应用服务器交换机和应用服务器构成。其中,客户端主要是用来实现人机交互,数据服务器可以让操作人员完成数据信息的访问、存储以及优化工作,服务器的应用主要是能够完成相关业务的逻辑分析工作,这样也就使得客户端的工作压力有了非常显著的下降,我们一般将这样的客户称作瘦客户。三层结构和二层结构相比其具有非常强的可重复性、维护方面更加方便,同时其安全性和扩展性也明显增强,但是在用户数量并不是很多的时候,二层结构的优势则更加的明显,所以,在软件开发的过程中,我们一定要充分的结合实际的情况和要求。
2.2四层结构技术
当前,计算机应用的环境在复杂性上有了非常显著的提升,客户对软件系统也提出了越来越高的要求,其主要表现在了软件开发周期不是很长,系统的稳定性很好,扩展性更强等方面,为了满足用户提出的更高要求,我们在开发的过程中将用户界面、业务逻辑个数据库服务器根据其功能模块进行全面的处理,将不同的模块分开,这样也就将相互之间的影响降到了最低水平。这个时候,如果使用三层分层技术就无法很好的实现这一功能,很多软件的开发人员会在数据库和逻辑层交互的过程中,增加一层数据库接口封装,这样也就实现了三层向四层的进化。四层结构体系主要包含web层、业务逻辑层、数据持久层与存储层。其中,web层可以使用模式1或模式2开发。在模式1中,基本是由JSP页面所构成,当接收客户端的请求之后,能直接给出响应,使用少量Java处理数据库的有关操作。模式1实现较为简单,可用于小规模项目快速开发,这种模式的局限性也很明显,JSP页面主要担当了控制器与视图View两类角色,其表现及控制逻辑被混为一体,有关代码重用功能较低,应用系统的维护性与扩展性难度加大,并不适合复杂应用系统开发。模式2主要是基于1vlvc结构进行设计的,JSP不再具有控制器职责,由Sen}let当作前端的控制器进行客户端请求的接收,并通过Java实施逻辑处理,而JSP仅具有表现层的角色,将结果向用户呈现,这种模型主要适合大规模项目的应用开发。业务逻辑层在数据持久层与web层间,主要负责将数据持久层中的结果数据传给web层,作为业务处理核心,具有数据交换的承上启下功能,业务逻辑层的技术依据业务及功能大小不同,能够分成JavaBean与EJB两种封装的业务逻辑,其中EJB简化了Java语言编写应用系统中的开发、配置与执行,不过EJB并非实现J2EE唯一的方法,支持EJB应用的程序器能应用任何分布式的网络协议,像JRMP.IIOP与专有协议等。
3结论
当前,我国计算机应用的过程中面临的环境越来越复杂,同时在客户的要求方面也有了非常显著的提升,为了更好的满足软件应用者的要求,在软件开发工作中,分层技术得到了十分广泛的应用,以往的两层技术模式已经无法适应当今时代的建设和发展,在对两层和三层结构优缺点的分析之后,多层结构系统在应用的过程中发挥了非常大的作用,这样也就使得软件开发技术得到了显著的提升,从而极大的满足了客户对计算机软件的各项要求。
参考文献
[1]金红军.规范化在计算机软件开发中的应用[J].物联网技术,2016(01).
[2]赵明亮.计算机应用软件开发技术[J].黑龙江科技信息,2011(26).
[3]林雪海,吴小勇.计算机软件开发的基础架构原理研究[J].电子制作,2016(Z1).
计算机软件论文范文二:分层技术在计算机软件开发中的使用
【摘要】近年来,计算机技术和网络技术已经在人们的日常生活和工作中得到普遍应用。计算机开发技术已经得到了相关从业人员的普遍关注。笔者对计算机软件开发中分层技术的应用进行论述,以期提升计算机软件开发水平。
【关键词】计算机;软件开发;分层技术
1前言
科学技术快速发展,现代化进程逐渐加快,计算机软件开发也逐渐由传统二层结构开发模式转化为多层结构。其已经成为计算机软件开发过程中的重要内容和组成部分。近年来,网络环境日趋复杂,将分层技术应用到计算机软件开发中,能够提升软件系统的整体清晰度和辨识度,为人们提供一个灵活的软件应用环境,促进计算机研发技术又好又快发展。
2分层技术相关概述
2.1分层技术的概念及应用计算机开发过程中要确保软件的灵活性和可靠性,实现软件的多功能应用。分层技术基于计算机软件内部结构原理,促进计算机软件应用过程中各种不同功能的实现。因此,将分层技术应用到计算机软件开发中具有一定的优势。同时,其能够改变传统的计算机软件单项业务处理模式,实现多层次技术的开发和应用[1]。
2.2分层技术的特点在计算机软件开发中应用分层技术具有相应的特点和优势。首先,分层技术能够依据相关功能需求,对计算机软件进行扩展和计算机系统进行分解,实现对计算机软件的改造和更新,并对系统中功能层和上下层进行变革和修改。其次,分层技术能够提高计算机软件的开发质量和效率,也能够提高其软件运行的可靠性。通过对原有计算机系统的改造和变更,缩短复杂软件的开发时间,提高新产品的质量。第三,在计算机软件开发中应用分层技术,能够让计算机软件得到充分利用,并对功能层次的接口进行定义,实现软件的自动化开发,促进标准接口的应用和其端口的无缝隙对接[2]。
3分层技术在计算机软件开发中的应用
近年来,随着生活理念的革新,人们对计算机软件开发普遍关注。同时,计算机软件开发也对传统计算机软件单项业务处理模式进行变革,使其向多层次计算机软件开发转变。目前,计算机软件开发技术已经由原来的二层和三层技术转化为多层技术。
3.1双层技术的应用
双层技术在计算机软件开发中的应用,能够提升计算机软件开发的质量和效率。双层技术是由客户端和服务器两个端点组成。客户端的功能是为用户提供相应的界面,并对计算机日常应用过程中的相关逻辑关系进行处理。服务器主要用来接受客户信息,并对用户相关信息进行整合,传递给客户端。
3.2三层技术的应用
三层技术是对计算机开发过程中的双层技术进行不断完善。相较于传统的双层技术,三层技术能够确保在一定程度上增加应用服务器,同时也能够提高用户数据存储质量和效率。在计算机软件开发过程中应用三层技术,能够提高计算机信息访问效率,也能够确保计算机与人之间构建和谐的共性关系,确保计算机整体运行质量的提升,为人们提供一个良好的计算机应用环境。三层技术包括业务处理层次、界面层次和数据层次。业务处理层次主要目的是了解用户的需求,并结合用户需求对相关数据进行处理。界面层主要是搜集用户的需求,并对其进行加工,将相关结果传递给业务处理层次。数据层次主要用来对业务处理层的相关请求进行审核,并应用数据库对相关信息资源进行查询和整合。加之科学的分析,将其传递给业务层。三层技术能够提升计算机使用性能,但其用户环境比较复杂,增加了信息和数据处理难度[3]。
3.3四层技术的应用
四层技术是基于三层技术进行完善的,其包括业务处理层、web层、数据库层和存储层。其在计算机软件开发过程中的应用原理是应用业务处理层分析用户需求,并将数据层处理结果传递给web层,应用数据交换和数据访问代码来反映数据库和计算机对象之间的关系。
3.4中间件技术的应用
中间件技术被作为面向对象技术进行开发。中间件主要以分布式计算环境为背景,以实现互通和互联及资源共享应用功能,其是一种独立系统软件。它能够对异构和分布集成所带来的各种复杂技术的相关细节进行屏蔽,以降低相关技术难度。在操作系统、数据库与应用软件之间应用中间件,能够缩短开发周期,提升系统和软件运行的安全性。中间件的种类比较多。结合其相关技术特性,能将其划分为DM、MOM、OOM中间件和RPC与TPM中间件等,其已经被普遍应用到计算机软件实际开发中。
3.4.1面向消息中间件信息同步传送和异步传送都可以应用MOM中间件技术。MOM能够实现异步通信、消息传递列队化和传递过程中的安全性和可靠性。MOM分层技术在计算机软件技术开发中应用很普遍。应用消息列队中间件进行应用编程,其主要通过中间件和对方实现间接通讯。同时,其能够应用队列管理器与远地或者本地应用程序进行通信。通信过程中,通信双方只需要将消息传递给队列管理器,不需要对消息的传递过程和传递安全性进行过多的关注,有利于软件开发过程的简化。
3.4.2远程过程调用中间件在客户和服务器计算层面应用远程过程调用的中间件,其更加具有先进性和实用性。程序员可以结合客户的实际需求对相关应用进行编制。RPC比较灵活,其也能够适应于复杂的计算机环境中,并支持跨平台应用,对远端子程序进行调用,以满足编程过程中的相关细节。但是其在应用过程中仍然存在相应的缺陷,其采用同步通信方式,不利于在大型范围内进行使用,需要对网络故障和流量控制等诸多因素进行考虑。
3.4.3面向对象的中间件基于组件技术在大型应用软件中的使用比较广泛,分布系统对各个节点中不同系统平台的新组件和老版组件进行集成应用。由于其面临各种问题,使用过程中具有一定的局限性,并不能够充分发挥其作用。基于对象技术和分布式技术,面向对象的中间件提供了全新通信机制,能够在异构分布的计算环境中对传递对象的相关请求进行满足。其来源主要是本地或者远程服务器。
4结语
计算机的应用环境越来越复杂,用户的相关要求也逐渐提高,增加了软件开发的难度。在计算机软件开发中应用分层技术,并对其进行不断地优化,能够实现其安全性和拓展性,缩短开发周期,提升其整体处理能力,有效满足了客户的日常应用需求。
参考文献:
[1]李大勇.关于分层技术在计算机软件中的应用研究与分析[J].计算机光盘软件与应用,2014,(20):78~79.
[2]杨博宁.浅谈计算机软件开发中分层技术[J].科技风,2015,(08):95.
[3]贾辉.刍议分层技术在计算机软件开发中的应用[J].中国高新技术企业,2015,(30):59~60.
计算机软件论文参考相关 文章 :
1. 计算机专业毕业论文大全参考
2. 计算机论文范文大全参考
3. 计算机专业毕业论文范文大全参考
4. 计算机专业毕业论文格式范文参考
5. 计算机专科论文范文参考
6. 计算机硕士论文范文参考
一、“软件技术”发展历史
第一是软件技术发展早期(20世纪50和60年代);第二是结构化程序和对象技术发展时期(70和80年代);第三是从90年代到现在,软件工程技术发展新时期。
1、软件技术发展早期
在计算机发展早期,应用领域较窄,主要是科学与工程计算,处理对象是数值数据。1956年在J.Backus领导下为IBM机器研制出第一个实用高级语言Fortran及其翻译程序。此后,相继又有多种高级语言问世,从而使设计和编制程序的功效大为提高。这个时期计算机软件的巨大成就之一,就是在当时的水平上成功地解决了两个问题:一方面从Fortran及Algol60开始设计出了具有高级数据结构和控制结构的高级程序语言,另一方面又发明了将高级语言程序翻译成机器语言程序的自动转换技术,即编译技术。然而,随着计算机应用领域的逐步扩大,除了科学计算继续发展以外,出现了大量的数据处理和非数值计算问题。为了充分利用系统资源,出现了操作系统;为了适应大量数据处理问题的需要,开始出现数据库及其管理系统。软件规模与复杂性迅速增大。当程序复杂性增加到一定程度以后,软件研制周期难以控制,正确性难以保证,可靠性问题相当突出。为此,人们提出用结构化程序设计和软件工程方法来克服这一危机。软件技术发展进入一个新的阶段。
2、结构化程序和对象技术发展时期
从70年代初开始,大型软件系统的出现给软件开发带来了新问题。大型软件系统的研制需要花费大量的资金和人力,可是研制出来的产品却是可靠性差、错误多、维护和修改也很困难。一个大型操作系统有时需要几千人年的工作量,而所获得的系统又常常会隐藏着几百甚至几千个错误。程序可靠性很难保证,程序设计工具的严重缺乏也使软件开发陷入困境。
结构程序设计的讨论导致产生了由Pascal到Ada这一系列的结构化语言。这些语言具有较为清晰的控制结构,与原来常见的高级程序语言相比有一定的改进,但在数据类型抽象方面仍显不足。面向对象技术的兴起是这一时期软件技术发展的主要标志。“面向对象”这一名词在80年代初由Smalltalk语言的设计者开始提出,而后逐渐流行起来。
面向对象的程序结构将数据及其上作用的操作一起封装,组成抽象数据或者叫做对象。具有相同结构属性和操作的一组对象构成对象类。对象系统就是由一组相关的对象类组成,能够以更加自然的方式模拟外部世界现实系统的结构和行为。对象的两大基本特征是信息封装和继承。通过信息封装,在对象数据的外围好像构筑了一堵“围墙”,外部只能通过围墙的“窗口”去观察和操作围墙内的数据,这就保证了在复杂的环境条件下对象数据操作的安全性和一致性。通过对象继承可实现对象类代码的可重用性和可扩充性。可重用性使能处理父、子类之间具有相似结构的对象共同部分,避免代码一遍又一遍的重复。可扩充性使能处理对象类在不同情况下的多样性,在原有代码的基础上进行扩充和具体化,以求适应不同的需要。
传统的面向过程的软件系统以过程为中心。过程是一种系统功能的实现,而面向对象的软件系统是以数据为中心。与系统功能相比,数据结构是软件系统中相对稳定的部分。对象类及其属性和服务的定义在时间上保持相对稳定,还能提供一定的扩充能力,这是十分重要的事情,这样就可大为节省软件生命周期内系统开发和维护的开销。就像建筑物的地基对于建筑物的寿命十分重要一样,信息系统以数据对象为基础构筑,其系统稳定性就会十分牢固。到20世纪80年代中期以后,软件的蓬勃发展更来源于当时两大技术进步的推动力:一是微机工作站的普及应用,另一是高速网络的出现。其导致的直接结果是:一个大规模的应用软件,可以由分布在网络上不同站点机的软件协同工作去完成。由于软件本身的特殊性和多样性,在大规模软件开发时,人们几乎总是面临困难处境。软件工程面临许多新问题和新挑战,而进入一个新的发展时期。
3、软件工程技术发展新时期
自从软件工程名词诞生,历经三十余年的研究和开发,人们深刻认识到,软件开发必须按照工程化的原理和方法来组织和实施。软件工程技术在软件开发方法和软件开发工具方面,在软件工程发展的早期,特别是20世纪70、80年代软件蓬勃发展时期,已经取得了非常重要的进步。软件工程作为一个学科方向,愈来愈受到人们的重视。但是,随着大规模网络应用软件的出现所带来的新问题,使得软件工程中,在如何协调合理预算、控制开发进度和保证软件质量等方面,软件人员面临更加困难的境地。
进入20世纪90年代,Internet和WWW技术的蓬勃发展使软件工程进入一个新的技术发展时期。以软件组件复用为代表,基于组件的软件工程技术正在使软件开发方式发生巨大改变。早年软件危机中提出的严重问题,有望从此开始找到切实可行的解决途径。在这个时期软件工程技术发展代表性标志在三个方面,即:
①基于组件的软件工程和开发方法成为主流。组件是自包含的,具有相对独立的功能特性和具体实现,并为应用提供预定义好的服务接口。组件化软件工程是通过使用可复用组件来开发、运行和维护软件系统的方法、技术和过程。
②软件过程管理进入软件工程的核心进程和操作规范。软件工程管理应以软件过程管理为中心去实施,贯穿于软件开发过程的始终。在软件过程管理得到保证的前提下,软件开发进度和产品质量也就随之得到保证。
③网络应用软件规模愈来愈大,复杂性愈来愈高,使得软件体系结构从两层向三层或者多层结构转移,使应用的基础架构和业务逻辑相分离。应用的基础架构由提供各种中间件系统服务组合而成的软件平台来支持,软件平台化成为软件工程技术发展的新趋势。软件平台为各种应用软件提供一体化的开放平台,既可保证应用软件所要求基础系统架构的可靠性、可伸缩性和安全性的要求;又可使应用软件开发人员和用户只要集中关注应用软件的具体业务逻辑实现,而不必关注其底层的技术细节。当应用需求发生变化时,只要变更软件平台之上的业务逻辑和相应的组件实施就行了。
以上这些标志象征软件工程技术已经发展上升到一个新阶段。这个阶段尚远未结束。软件技术发展日新月异,Internet的进步促使计算机技术和通信技术相结合,更使软件技术发展呈五彩缤纷局面。软件工程技术的发展也永无止境。
二、“软件技术”发展中的问题
(一) 人才结构失衡。随着总量供不应求这一矛盾的缓和,我国软件人才结构不尽合理的问题进一步凸现,成为我国软件人才体系的突出特点,主要体现在如下方面:
1、高端软件人才缺乏。从经济规律来看,一种工业化时代的产业结构,要求是一个金字塔型的人才梯队,软件业需要的不仅仅需要从事基础开发的程序设计员作为智力基础,更需要塔尖的高级人才。目前高级软件人才仍是中国软件企业最紧缺的软件人才类型,在这种背景下,中国软件人才的“金字塔”形的合理结构并未实现。我国软件技术人员约有19万人左右,此外,还有30万人在从事计算机应用、科研与教育工作。但是,我国软件技术人员中70%是从事程序开发、技术支持和服务的人员,软件产业发展所急需的系统分析师、架构设计师、高级工程师、项目经理和技术工人的数量非常匮乏,无法满足软件产业发展对高层次人才的需求。
2、复合型软件人才缺乏。高素质的复合型软件人才正逐渐成为软件人才中的新宠。复合型软件人才有两种类型:一种是既精通软件又精通硬件的基础理论和设计技能的人才;另一种是既精通软件基础理论和设计技能,同时又精通其他专业业务和应用知识的复合型人才,这类人才是软件领域与其他应用领域交叉的复合型人才。目前我国软件产业正处于产业化的进程中,产业化的一个要求就是资本的介入,在一个产业链中,资本是不可缺少的一个环节,这就需要我国培养出大批软件类资本运作人才,为软件企业的发展赢得资金。而产业链的下游是产品的销售环节,又需要大批渠道及销售、公关、宣传人才以及软件售后技术支持人才。另外,由于我国的软件产业主要是发展采取外包模式,这就要求既懂得软件知识,又能娴熟地运用外语的复合型人才。
(二)自主知识产权的主流软件产品较少,产品多为低端产品。我国的软件产品,主要集中在产业链的低端、辅助型和外挂式的产品阶段;在核心技术上有创新、自主设计的“重量级”软件产品还比较缺乏;许多基础性、关键性软件还处于空白状态。中国的软件产业从上世纪八十年代开始发展,到今天虽然取得了长足的进步,但是国内很少有企业能够达到承揽国际项目所需的严格的内部流程及质量控制。虽然有众多优秀的软件工程师,但多数外包企业尚未建立起正确的流程,也未能培养出准确掌握这些流程的开发人员。在中国软件市场,国外品牌的产品仍然占据高端系统软件、数据库软件的绝大部分市场份额,占据中间件、行业应用软件、ERP软件的大部分市场份额;国内品牌产品则在ERP和财务管理软件、防杀毒软件、中文信息处理软件及部分行业应用领域占据优势。
(三)核心技术缺乏,创新能力不足。我国大部分软件生产企业在较低层面上进行着大量重复性的工作,是一种小作坊式的生产,这种生产方式为了眼前的生存,根本无力开展软件技术创新,再加上盗版泛滥成灾,企业缺乏技术创新的动力,很多企业几乎没有研发投入。软件产业中发展较快的产品领域主要是游戏、财务及商务管理、教育领域,而技术含量较高的大型数据库系统、管理信息系统的开发及发展较为缓慢。软件企业创新能力不足,软件产品的生命周期很短、产品更新升级频繁、换代速度很快,软件产品高利润、高回报的主要源泉,应该来自于持续不断的创新。而目前中国软件企业的创新能力不足,特别是对软件产业链上游产品的原始创新力不足。
三、“软件技术”发展中问题的解决办法及措施
1、改进教育模式培养人才,面向市场吸引人才。调查发现,教育体制的落后导致了软件专业毕业生缺乏实际编程能力,无法适应企业的实际需要。而软件企业自身又不愿提供相应的培训,这样一来编程人员的数量几乎是处在一种“净减”状态。所以,我们要从教育抓起,多为学生提供实践机会,不断加强学生的实际编程能力。同时,也应该提供专业的培训,不断提高员工的理论水平和实际操作水平,有助于满足企业各层次的人才需求。由于我国的软件外包发展模式,在人才培训方面,要积极扩大国内软件高级人才与国际软件市场的联系和交流,扩大面向出口的专业化二次培训规模,重在加强项目经理和程序员的外语能力和过程管理能力,为软件出口提供更广泛的人才基础。要将引进面向国际市场的人才作为我国引进人才的重点领域,使我国成为软件国际化人才的高地。在吸引海外留学人员回国发展的工作中,重点吸引一批优秀的项目经理、系统分析师和软件工程师。
2、不断研发拥有自主知识产权的关键技术与核心技术。软件产业必须强调自主知识技术,强调知识产权,这是因为它在很大程度上决定着一个国家信息安全和综合国力。要发展具有自主知识产权的软件产品,应该在软件研究与开发上加大投入,注重跟踪和模仿,独立从事软件自主核心技术的研发,逐步在操作系统、数据库管理系统和关键应用软件方面形成完整、系统的自主版权软件产品。同时加快核心软件技术和产品制度创新及产业化。集中支持核心技术软件,基础软件工具和嵌入式软件的开发和自主的软件创新信息产业化。
3、推行软件园建设。作为加快发展软件技术、有效推进软件产业发展而兴起的软件园,在研发与引进软件新技术、创新开发软件新产品、加速软件成果转化等方面,具有典型的示范与带动作用。软件园区集中提供了理想的软件研发场地、良好的成果孵化环境、相当规模的软件流通市场、完善的人才培训场所、便利的交通与生活设施、良好的休闲娱乐场所,能充分发挥软件园区的群体优势和规模效应。
总之,软件是信息产业的灵魂。我们应该加强人才培养,提高自主研发能力,不断掌握核心技术,继续做大软件产业规模,使我国立足于世界信息强国之列。
软件技术与硬件技术相比较,其发展的空间更为广阔、应用的领域更为广泛,因此计算机软件技术得到了关注和发展。下面是我为大家整理的计算机软件技术毕业论文,供大家参考。
摘要:目前,高职软件技术专业的教学改革势在必行,本文介绍了问题研究的必要性和Moodle平台的功能,探讨了基于Moodle平台进行混合式教学的教学过程。
关键词:Moodle平台;混合式教学模式
1概述
目前,高职学院主流的教学主体为教师的教学模式早已不能满足社会对人才的需求。这要求我们积极进行教学改革开展以学生为主体的教学模式的探索。混合式教学模式是教育信息化发展而出现的一种新教学模式。其意义在于将学生在网络上的自主学习和传统课堂上的教学相融合,是多种教学方式、学习方式和教学媒体的整合。因此,基于Moodle平台的高职软件技术专业混合式教育模式研究具有十分重要的意义。
2Moodle平台简介
Moodle是一个开源课程管理系统(CMS),是一个免费开放源代码的软件,以社会建构主义为其主要的理论基础。Moodle是ModularObject-OrientedDynamicLearningEnvironment的缩写,即模块化面向对象的动态学习环境。在基于Moodle平台的教学活动中,教师和学生都是主体,彼此相互协作,共同建构知识。Moodle平台有主要三个方面的功能:课程管理、学习管理和系统管理,其中课程管理包括课程教学组织、教学资源组织、学生学习活动组织、学生评价组织等管理;学习管理包括:记录学习情况、下载学习资源、开展协作活动、测验与作用等;系统管理包括系统模块管理、课程管理、模块管理、用户管理和系统参数设置。Moodle平台有系统管理员、教师和学生三种用户角色。其中,系统管理员主要负责搭建Moodle平台的软硬件环境,可分为课程管理员和网站管理员。课程管理员负责课程的创建和管理,网站管理员负责对Moodle平台进行配置和维护。教师角色中的主讲教师和辅导教师是按照权限不同来分的。主讲教师可以组织教学活动,建设教学资源,进行日常教学管理。可以为学生分组,添加或注销学生,可以授权辅导教师,可以设置课程“密钥”。辅导教师不能参与课程设计,只能组织学生的管理成绩、课外讨论、查看日志等,在日常教学过程中监督学生的学习活动。在指定教师时,如果不特定教师编辑权限,该教师就默认为辅导教师。学生角色可以在线学习网络课程资源,参加在线测试,在线进行讨论,并将自己的学习历程以及学习心得写在自己的博客上。学生可以建立一个在线档案,包括照片和个人描述。
3基于Moodle平台的高职软件技术专业混合式教学模式的教学过程设计
混合式教学是指融合不同的教学模式和不同的应用方式来进行教学的一种策略,它结合了课堂教学和网络教学的优势。下面以《Java程序设计》这门课程为例来介绍如何基于Moodle平台进行混合式教学模式的教学过程设计。
3.1混合式教学模式的教学资源设计
教学资源是混合式教学模式的基本保障,主要指与所授课程相关的教学材料,包括课程的教案、课程的课件、实训指导、教学大纲、复习题、拓展资料等。随着慕课的兴起,在《Java程序设计》课程的教学资源设计中,教师可将课程的教学内容制作成慕课放在Moodle平台上供学生课余时间观看。既方便了课堂上未听懂的学生进一步学习,也为基础好的学生提供了预习的资源,增强了学生对知识的掌握程度。
3.2混合式教学模式的教学课程内容设计
《Java程序设计》课程的操作性强,采用任务驱动的教学方式能督促学生课前预习、课后复习,提高动手能力,从而激发学习的兴趣。下面以《Java程序设计》中《类和对象实现》一节为例,说明教学内容的设计。
3.2.1教学目标
3.2.2知识目标
①类与对象概念与特征、属性和方法;②类与对象的关系;③定义类的语法;④创建类的对象,使用对象的步骤。
3.2.3能力目标
①运用面向对象程序设计思想分析类和对象特征;②会创建和使用类和对象。a教学任务“人”是社会主体,日常生活中要想描述一个人主要包括姓名、年龄、性别、体重、家庭地址等信息。任务要求在计算机中使用Java语言对“人类”进行描述,并用Java代码实现,最后打印出人的信息。b实训任务第一,编写一个电脑类,属性包括品牌、型号,方法为显示电脑信息,并测试类;第二,编写一个手机类,属性包括手机品牌、手机型号,方法为显示手机信息,并测试类。
3.3混合式教学模式的课堂教学活动设计
课堂教学活动设计是混合式教学模式的关键。Moodle为教师和学生的互动提供了很好的平台,学生可以针对教学内容展开讨论或者提出问题,也可以发表自己的心得体会。教师可以在教学过程中设置测试来及时检验学生的学习效果,还可以创建一些趣味性话题,鼓励学生参与并给予加分奖励,同时还要在Moodle平台中跟踪学生的发言,并及时给出反馈。下面以《Java程序设计》中《类和对象实现》一节为例,说明教学活动的设计。课前:将教学课件上传至Moodle平台,供学生预习。课中:①(10分钟)利用Moodle平台中的“测验”功能,针对上创建一套试题来考查学生对上节课知识的掌握情况。②(30分钟)利用课件和案例演示讲解本次课知识点。③(35分钟)布置并指导学生完成实训任务。④(15分钟)总结并布置作业。课后:创建讨论话题,鼓励学生积极参与。
4总结
基于Moodle平台的混合式教学模式,能够激发学生学习的兴趣,提高学生的自主学习能力,营造良好的学习环境。同时也存在一些问题,可根据每个学校的需求,进行二次开发,增加功能,更好地为教学服务。
参考文献:
[1]李明,胡春春.基于Moodle平台的“合作—探究”式网络教学平台研究[J].吉林省教育学院学报,2011(3).
[2]熊小梅.基于Moodle平台的网络课程设计及应用[J].教育与职业,2014(02).
[3]唐春玲,蔡茜,张曼.基于Moodle平台的远程教育的实践与研究[J].网友世界,2014(5).
[4]赵俞凌,鲁超.基于Edmodo平台的高职写作课程混合式教学设计[J].金华职业技术学院学报,2015(1).
【摘要】近年来,在社会经济快速发展的同时,一定程度上带动了科学技术的进步。而在此过程中,智能手机与个人电脑得到了发展,并且逐渐融入到人们日常的生产生活当中,被广泛地应用。其中,在智能操作系统当中,安卓操作系统占据重要地位,并且其开放性相对明显,这样一来,智能手机与个人电脑应用的优势就更大。由此可见,在安卓操作系统的基础上开发软件具有重要的现实意义。本文对安卓操作系统的开发平台进行了全面分析,并重点阐述了在安卓操作系统基础上的应用软件开发。
【关键词】安卓操作系统;应用软件;开发;分析
众所周知,信息技术在其自身的发展过程中,电子产品的丰富性与多样性充分地展现出来,并且使得人们生活方式有所改变,一定程度上为人们日常生产与生活带来了便利。正是因为安卓操作系统自身独特的开放性特征,使其同电子设备实现了有效地沟通,并且始终能够满足用户不同需求。现阶段,安卓手机已经被广泛使用,并且已经普及,在此背景下,使人们开始重视其便携性问题,希望能够时刻进行操作,所以,在安卓操作系统的基础上,应该积极开发出相应的应用软件,这是当前安卓操作系统工作领域中亟待解决的问题。
1安卓操作系统开发平台
在安卓操作系统平台中,其主要的构成部分就是应用软件、中间件以及用户界面和操作系统,给予平台各层分离有力的支撑与保障,使得各层中间都能够保证分工的明确性[1]。通常情况下,安卓操作系统中的应用程序框架可以有效地提供API,同时还能够合理地设计出其自身特有的功能模块,这样一来,还可以实现为其他应用程序提供有价值的使用依据。在安卓操作系统当中,其最核心的应用程序就是联系人、网络浏览器、日历、SMS应用程序以及电子邮件等等。在编写并设计应用程序的过程中,开发工作人员需要对Java语言进行充分地利用,这样才能够确保系统程序和开发程序所包含的资源实现共享。在此基础上,安卓操作系统还能够向组件提供相应的C/C++库集合,然而,开发工作人员不能够对其进行直接调用,一定要根据上层的应用程序框来实现C/C++库的应用[2]。通常情况下,安卓操作系统库的构成内容是媒体库、FreeType、界面管理和SQLite等多种系统。
2基于安卓操作系统应用软件开发的重要意义
随着科技发展与人们生活水平的提升,始终对个人电脑与智能手机在社会经济当中的发展情况产生影响。现阶段,我国智能手机市场始终处于爆炸式增长的趋势,而截至到2013年,智能手机的普及率也迅速上升,将近2/3的国民都已经拥有智能手机[3]。然而,国民拥有智能手机的技术水平也处于上升的阶段,其中,智能手机终端CPU处理能力以及存储和用户交互等方面的能力都出现了明显的提高,以上内容也同样是智能手机关键性的指标,所以,一定程度上对于安卓操作系统应用软件的开发工作提供了有力的硬件基础。基于安卓操作系统的应用软件开发能够保证使用者手中安卓智能操作系统同社会各行业经济发展过程中所使用的电子设备实现有效连接,进而能够为使用者提供更具特色与专业化的服务。若安卓智能操作系统应用软件能够得到广泛地应用,必然会为人们的生产与生活带来便利与实用价值,进而更方便人们的工作与生活。
3安卓操作系统概述
3.1安卓发展史
安卓股份有限公司位于美国加州,公司成立于2003年,并在2005年被谷歌所收购。谷歌公司的主要目标就是要创建标准化与开放化的安卓系统移动客户端平台[4]。同其他智能手机的操作系统相比,安卓操作系统的开放性更加明显,并且能够在其实际运行的过程中始终处于开放状态,同时还能够同其他电子设备实现数据链接,在此基础上,更好地实现高级操作。安卓系统是智能手机当中的一种智能操作系统,所以,其更新的速度相对较快,当前最新版本已经是Android6.0.1(M)操作系统
3.2安卓开发平台结构与特征
(1)应用程序层。
智能手机操作系统中的安卓系统,其自身就能够为智能手机的运行提供相应的应用软件,而且,其基本的应用软件都是操作系统本身所配置的,主要的表现形式就是系统应用[5]。然而,在智能手机实际运行的过程当中,这些应用软件同其他的应用软件共同享受同等资源的支配权利。
(2)应用程序框架。
在智能手机操作系统当中的安卓操作系统,本身明显的特征就是能够支持使用者的软件运行,但是,需要基于应用程序框架。而且在安卓智能操作系统当中,各应用软件都能够设计出特有功能模块,只要保证功能的设置与应用程序框架的具体需求相吻合,就能够获取安卓系统有力的支持,最终同其他的功能模块实现信息的交互。
(3)内核设置。
安卓系统是基于Linux3.0发展起来的,所以,该系统的核心就已经集成了Linux的绝大多数特点[6]。而且,其中主要部分就涉及到安卓系统安全认证及网络协议栈等等内容。但是,也正是这种智能集成,使得安卓系统得到了全面发展,也确保该系统实现了层叠式体制结构的构建,积极地提高了安卓系统实际运行的效率。
3.3安卓应用系统基本组件
(1)应用表示层。
在应用软件实际运行的过程中,该组件能够有效地保证应用软件系统同用户的交流,并且在运行时,表示代码需要以特定形式表现,这样能够合理地缓解了系统内部设置的压力。
(2)无可示界面。
该组件同应用表示层的地位同等,都是单独安卓组件,但是最主要的差异就在于,该徐建使用者根本不能够在系统后台运行,而且不能够看到实际的运行状态[7]。同时,由于无可示界面自身的设计特征,无需同用户信息交互,但是却始终为其提供服务,因此,也可以将其当作无形用户界面。
(3)接收广播通知组件。
该组件同事件监听器相似,属于事件推送机制,而在其内部,将安卓应用当中的其他组件作为事件来源信息来进行推送,这就是该组件具体的服务内容。
(4)安卓开发环境搭建。
安卓智能操作系统是开放型的操作平台,所以,在安卓操作系统基础上所开发设计的应用软件,仅对系统原有安卓系统加装系统开发软件即可,这样就能够实现安卓系统应用软件开发。
4Java多线程编程
要想实现Java多线程,就需要积极地运用Thread类子类,使用覆盖方法,即run()[8]。把所要执行代码添加至上述方法当中。但是,这种实现方法存在自身不足,如果该类已经继承另一类,那么就无法对该类继续继承。其次,可以建立Java程序接口,利用该接口用户命令信息能够通过运行命令的方式重新编写命令,并且在重写以后沿数据接口能够直接送至电子设备命令执行阶段,进而有效地提升电子设备命令执行的效率。
5基于安卓操作系统手机遥控PPT播放软件的开发
5.1实用性分析
由于PPT演示实际应用简单,并且图文并茂,所以,在报告或者是会议当中被广泛使用,是一种信息展示的有效形式。然而,传统PPT的展示需要会议的主持人员或者是演说者使用鼠标对PPT的文件播放进行控制。这种方法在实际的应用过程中,为了确保PPT资料的展示具有一定的匹配性,所以,演讲者与会议的主持者始终在电脑旁边,这样就会影响到演讲者个人发挥。在科技快速发展的背景下,激光笔代替原有鼠标,对演讲者来说是一种解放。然而,在PPT书写与绘画要求方面并未得到满足,因此,导致控制方式与演示需求间存在一定的供需矛盾,所以,必须要设计出能够脱离鼠标的一种演讲方式。正因为安卓智能手机系统具有一定的开放性,并且,其处理器的效率较高,所以,大尺寸高分辨率的屏幕都能够在手机中显示并书写。
5.2系统设计
这种PPT播放软件通常被使用在个人电脑中,其架构与系统相吻合,可以被划分为两部分:①客户端;②服务器端。客户端就是在用户电脑中所运行的PPT程序,然而,服务器端则是网络架构服务器的一种链接形式[9]。在此范围内,客户端可以利用网络通信以及其服务器来实现通信。由于这种应用软件相对成熟,所以,其架构与操作系统都十分完善,可以同其他电子信息系统实现链接,并且实际的开发环境十分优秀。设计应用软件的时候,可以将其分成服务器的子系统与终端的子系统。在PPT应用软件当中,服务器端子系统的应用是一种有效地改进,并且被集中于软件系服务器端,可以在服务器端加装自己设计的手机遥控PPT播放软件服务器端。这种方法能够保证PPT系统当中的服务器端同移动终端子系统实现命令信息交互,并且实现移动终端子系统更好地控制手机遥控PPT播放软件。服务器的子系统,其主要的任务就是实现终端PPT文件发送的接收与解析,并且接受终端的控制命令等等。而移动终端的子系统,其主要的工作内容就是发出系统运行命令,同时需要对服务器子系统反馈PPT页面信息予以接受。另外,还应该不断强化移动终端的子系统,使其画板功能更丰富,确保其在手机遥控该软件的过程中,能够有效地下达命令,确保使用者能够以多种方式操控PPT展示。
5.3软件测试与运行结果的展示
完成手机遥控PPT播放软件的编程设计工作后,必须要对其实际的运行状态予以检测,进而确保该软软件具有一定的实用性,同时,还需对其设计效果予以客观地评价。文章对手机遥控PPT播放软件及PPT的展示能力进行了实际检测,并且真实地验证了该软件的功能与效果。在实际的测试过程中,以不同移动数据终端同手机遥控PPT播放软件的服务器子系统实现链接,并且在测试的过程中确保软件自身链接的安全,在移动数据终端处输入相对复杂的信息内容,并且,该软件仍然可以在电脑的页面中快速反应出智能手机具体的指令信息内容。由此可见,站在客观的角度上来看,手机遥控PPT播放软件的设计是成功的,同时也证明了在安卓系统基础上开发应用软件的可行性,实际所开发的应用软件是具有现实应用意义的。
6结束语
综上所述,在智能手机发展和更新的背景下,很多人开始意识到随身通信工具的重要作用,所以对于智能手机更加重视。因为智能手机内置处理器处理能力极强,并且应用程序相对丰富与多样,因此,在人们的日常生产生活当中被广泛应用。当前,安卓操作系统是智能手机重要的操作平台,并给在市场中占据较大份额,所以对于社会发展具有积极地推动作用。由此可见,在安卓操作系统基础上开发应用软件并及时进行更新具有重要的积极作用。
参考文献
[1]杨潇亮.基于安卓操作系统的应用软件开发[J].电子制作,2014(19):45~46.
[2]饶润润.基于安卓操作系统的应用软件开发[D].西安电子科技大学,2013.
[3]王子榕.浅谈基于安卓操作系统的应用软件开发[J].通讯世界,2015(14):220.
[4]李帅.浅论基于安卓操作系统的应用程序开发[J].电子制作,2015(2):87.
[5]乔頔.Android系统应用软件3D界面的设计和开发[D].中国人民大学,2012.
[6]朱婷婷.基于Android平台的PKM软件的研究与设计[D].浙江师范大学,2012.
[7]尚忠阳.一种基于安卓手机的定位服务应用软件的设计与实现[D].北京邮电大学,2014.
[8]伍贤珍.基于Android平台的智能电话应用软件模块设计与开发[D].哈尔滨工业大学,2013.
你的论文准备往什么方向写,选题老师审核通过了没,有没有列个大纲让老师看一下写作方向?
老师有没有和你说论文往哪个方向写比较好?写论文之前,一定要写个大纲,这样老师,好确定了框架,避免以后论文修改过程中出现大改的情况!!
学校的格式要求、写作规范要注意,否则很可能发回来重新改,你要还有什么不明白或不懂可以问我,希望你能够顺利毕业,迈向新的人生。
(一)选题
毕业论文(设计)题目应符合本专业的培养目标和教学要求,具有综合性和创新性。本科生要根据自己的实际情况和专业特长,选择适当的论文题目,但所写论文要与本专业所学课程有关。
(二)查阅资料、列出论文提纲
题目选定后,要在指导教师指导下开展调研和进行实验,搜集、查阅有关资料,进行加工、提炼,然后列出详细的写作提纲。
(三)完成初稿
根据所列提纲,按指导教师的意见认真完成初稿。
(四)定稿
初稿须经指导教师审阅,并按其意见和要求进行修改,然后定稿。
一般毕业论文题目的选择最好不要太泛,越具体越好,而且老师希望学生能结合自己学过的知识对问题进行分析和解决。
不知道你是否确定了选题,
确定选题了接下来你需要根据选题去查阅前辈们的相关论文,
看看人家是怎么规划论文整体框架的;
其次就是需要自己动手收集资料了,
进而整理和分析资料得出自己的论文框架;
最后就是按照框架去组织论文了。
你如果需要什么参考资料和范文我可以提供给你。
还有什么不了解的可以直接问我,希望可以帮到你,祝写作过程顺利
毕业论文选题的方法:
一、尽快确定毕业论文的选题方向 在毕业论文工作布置后,每个人都应遵循选题的基本原则,在较短的时间内把选题的方向确定下来。从毕业论文题目的性质来看,基本上可以分为两大类:一类是社会主义现代化建设实践中提出的理论和实际问题;另一类是专业学科本身发展中存在的基本范畴和基本理论问题。大学生应根据自己的志趣和爱好,尽快从上述两大类中确定一个方向。
二、在初步调查研究的基础上选定毕业论文的具体题目在选题的方向确定以后,还要经过一定的调查和研究,来进一步确定选题的范围,以至最后选定具体题目。下面介绍两种常见的选题方法。 浏览捕捉法 :这种方法就是通过对占有的文献资料快速地、大量地阅读,在比较中来确定论文题目地方法。浏览,一般是在资料占有达到一定数量时集中一段时间进行,这样便于对资料作集中的比较和鉴别。浏览的目的是在咀嚼消化已有资料的过程中,提出问题,寻找自己的研究课题。这就需要对收集到的材料作一全面的阅读研究,主要的、次要的、不同角度的、不同观点的都应了解,不能看了一些资料,有了一点看法,就到此为止,急于动笔。也不能“先入为主”,以自己头脑中原有的观点或看了第一篇资料后得到的看法去决定取舍。而应冷静地、客观地对所有资料作认真的分析思考。在浩如烟海,内容丰富的资料中吸取营养,反复思考琢磨许多时候之后,必然会有所发现,这是搞科学研究的人时常会碰到的情形。 浏览捕捉法一般可按以下步骤进行: 第一步,广泛地浏览资料。在浏览中要注意勤作笔录,随时记下资料的纲目,记下资料中对自己影响最深刻的观点、论据、论证方法等,记下脑海中涌现的点滴体会。当然,手抄笔录并不等于有言必录,有文必录,而是要做细心的选择,有目的、有重点地摘录,当详则详,当略则略,一些相同的或类似的观点和材料则不必重复摘录,只需记下资料来源及页码就行,以避免浪费时间和精力。 第二步,是将阅读所得到的方方面面的内容,进行分类、排列、组合,从中寻找问题、发现问题,材料可按纲目分类,如分成: 系统介绍有关问题研究发展概况的资料; 对某一个问题研究情况的资料; 对同一问题几种不同观点的资料; 对某一问题研究最新的资料和成果等等。 第三步,将自己在研究中的体会与资料分别加以比较,找出哪些体会在资料中没有或部分没有;哪些体会虽然资料已有,但自己对此有不同看法;哪些体会和资料是基本一致的;哪些体会是在资料基础上的深化和发挥等等。经过几番深思熟虑的思考过程,就容易萌生自己的想法。把这种想法及时捕捉住,再作进一步的思考,选题的目标也就会渐渐明确起来。