技术开发 频道

AOP-新一代的Java语言


IT168技术文档】 
    在Microsoft C#开始广泛收获市场的时候,Java社区也正在紧追不舍。除了提供更加易用的开发工具来和Visual Studio .NET竞争之外,他们也在考虑让Java拥有一个更加高级的开发语言。这就是AOP-Aspect-oriented programming(面向方面编程)。现在IBM和JBoss已经开始活动试图建立一个AOP的标准,然而整个过程很可能要耗时一年才行。他们预计如果AOP成为了Java的标准功能,那Java就能够成为比微软的.Net根据吸引力的开发语言了。 

    AOP得到了包括IBM在内的公司的高度重视,不得不归结于C#的成功。而事实上,C#模仿了大量的Java的特性,微软多年来用C#赶超Java的努力终于如愿以偿。现在Java也必须要改进自己了,这就是让Java开发工作有更高的生产力。AOP就是为了满足这一要求。AOP可以通过集中控制会在一个程序多个地方使用的特定功能的策略来简化开发过程。比如一个程序员能够指定一条规则来告诉WebServer如何处理人们登录到网站上的事件。AOP可以一次性处理完成,而不是需要针对每一个个人来编写多次规则。程序员也能够生成他们自己的“Aspects”来控制特定的功能。分析人士认为AOP很好的补充了面对对象的变成技术。 

    很多java软件提供上都已经在研究AOP Java了。IBM研究所有AspectJ,他们也资助了另一个OpenSource的项目AspectJ-一种为AOP定制的语言,还有另一个OpenSource计划AspectWerkz。BEA公司上个月同样介绍了他们的WebLogic Aspect Framework,能够让开发者在WebLogic上试验AOP技术。不光是Java社区,就连微软阵营也有公司在研究AOP。一家有微软的前官员创建的软件公司Intentional Software也在从事这方面的研究,并且在开发商业产品。他们和微软签署有首先商讨协议。 

    据说微软的.NET Framework已经借鉴了AOP的很多技术,只不过微软没有使用AOP这个名词(而是称作为UserControl/ServerControl)。 

    AOP是OOP之后的又一次编程语言的重要创新,不过和当初一样,AOP面临的还是不同的标准和想法。只有业界统一AOP之后,它才能快速发展。至于现在大家只能通过各种项目来稍微领略一下其风采。
0
相关文章