仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 778|回复: 7
打印 上一主题 下一主题

[学习教程] 发布一篇AOP@Work: 用Contract4J举行组件计划-用左券式计划和AspectJ改善软件 ...

[复制链接]
若相依 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:06:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。
简介:左券式计划(DesignbyContract)是实在可行的手艺,能够分析组件计划的细节、为客户纪录准确的组件用法,并用编程的体例测试组件利用的适应性(compliance)。在AOP@Work的最初一篇中,DeanWampler先容了Contract4J,这是左券式计划的工具,它用Java™5标注(annotation)指定合约,并在运转时用AspectJ方面盘算合约。在成为AOP工具包中新增的一个无足轻重的工具的同时,Contract4J投合了面向方面计划的新趋向。
假定您方才到场一个构建银行使用程序的项目。在扫瞄代码时,您发明(已经简化的)BankAccount的上面这个接口:
interfaceBankAccount{
 floatgetBalance();
 floatdeposit(floatamount);
 floatwithdraw(floatamount);
 ...
}
下面这个接口固然简便,但遗留了很多成绩没有回覆。deposit()或withdraw()的amount参数能够是正数或零么?同意负余额(透支)么?假如指定了毛病的amount,deposit()或withdrawal()中会产生甚么情形呢?
明显,关于该接口的完成者和利用公然该接口的组件的人来讲,可以回覆这些成绩是主要的。一种隐式地指定举动的办法是利用以JUnit(请参阅参考材料)编写的单位测试。利用JUnit测试,能够用各类正当和分歧法的参数挪用这些方法,并作出有关预期了局举动产生的断言。另外一种办法是左券式计划,这是分析组件计划细节的一项实在可行的手艺。
在AOP@Work系列的最初这篇文章中,我将先容Contract4J,这是一个基于AspectJ的工具,撑持左券式计划。我将先容怎样用Contract4J隐式地指定组件举动,为用户纪录组件的准确用法,并用编程的体例测试组件利用的适应性。在这篇文章最初,我将会商Contract4J怎样投合面向方面计划中正在呈现的趋势。
左券式计划概述
利用左券式计划,能够用可编程表达式指定关于组件输出和前往了局的请求。在开辟职员和QA测试时代,对表达式举行盘算,假如测试失利,程序实行当即停止。程序的停止带有有效的诊断信息,迫使开辟职员当即修复bug。
强迫当即停止看起来大概有点贫苦。为何要放不对误动静还持续运转呢?虽然持续运转看起来大概对照有临盆效力,但实践上不是的。起首,假如没被强迫请求当即处置bug,就会推延修复bug,如许bug就会积累。其次,失利的测试应该代表产生了料想以外的事(比方,援用为空),一般的实行不克不及持续。固然能够放进“不测处置”代码,可是这反而大概会把完成庞大化,呈现永久不会产生的情形,从而增添代码的庞大性和更多bug的风险。
<p>
你对java乐观有点盲目。java的关键就是在服务器上表现优异,而且它提供了整个开发所需要的工具。应该是说,看哪天。net有没有机会赶上java。
admin 该用户已被删除
沙发
发表于 2015-1-20 14:28:48 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
飘灵儿 该用户已被删除
板凳
发表于 2015-1-25 14:23:06 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
若天明 该用户已被删除
地板
发表于 2015-2-1 16:12:01 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
变相怪杰 该用户已被删除
5#
发表于 2015-2-21 04:13:45 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
若相依 该用户已被删除
6#
 楼主| 发表于 2015-3-6 19:34:05 | 只看该作者
是一种突破用户端机器环境和CPU
飘飘悠悠 该用户已被删除
7#
发表于 2015-3-13 06:35:34 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-20 15:19:00 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 23:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表