昨天整理了下我常用的Eclipse快捷键,今天看了下别人整理的,发现还有些需要掌握的:
最后是一个可能不会常用的快捷键,如果掌握了这些想掌握的快捷键的话:CTRL+SHIFT+L:列出快捷键列表。
有人整理了Eclipse的全部快捷键,但是要记住全部的快捷键也没有必要,下面的这些是我最常用的快捷键,和大家交流下:
这个问题可能是很多做Java的人最关心的,特别是新手,而且我原来也写过一些东西,现在我再简单的列举一些简单但是行之有效的方法:
如果你有信心并且确实可以在一个月之内找到一份满意的工作,你基本上可以算是高手(高手不一定高薪,但是温饱应该问题不大)了
最后是关于时间,众所周知,新手都会面临一个先有鸡还是先有蛋的问题,公司都要求你有经验,但是新手没有,所以你一定是一个蛋,你要把你的全部时间都花在提高自己上,少看些新闻,多看些书、看些帖子吧,当然,要花一些时间在锻炼身体上(呵呵,这个是我现在最大的感受)。关于加班,尽量避免,有两个方法,一个是提高自己的效率(使用合适的工具辅助,工欲善其事必先利其器),另外一个就是多思考你的那些工作是重复性的,怎么样可以少写一些代码。
进行运行全部的测试用例的时候发现不能运行完了,到了后面的一些测试用例的时候出现OutOfMemoryError,程序并没有什么大内存消耗,上网查了一下,发现可能是junit导致的,因为teardown并没有清理掉使用过的内存,没有办法,只能修改Run的时候的参数,把内存加大,问题解决。
Eclipse启动JUnit的时候设置的值大概是64M左右,而我加大内存后监控内存使用的结果表明全部的测试用例需要使用100M内存。
方法为:Run->Run…->JUnit->AllTests->(x)=Arguments->VM Arguments: -Xmx500m
注意上面的AllTests为自己要修改的那个包含全部测试用例的Test suite的类。
简单的推荐几本我认为Java工程师应该看的书。
程序设计实践:
这个不是Java的书,应该是所有的软件工程师都应该看的,可以培养良好的编程习惯。
Think In Java:
不多说,学习Java必看的。
SL275:
这个是SCJP认证的教材,对于学习Java的一些细节性的语法点或者特性非常的有帮助,现在很多的Java面试题似乎也喜欢出这些相关的问题。
Java高效编程指南:
这个是SUN出的书,比较全面的介绍了Java基础编程应该注意的一些问题。
Java技术精髓:
这个也是SUN出的书,比高效编程指南更全面的介绍了Java编程应该注意的一些问题,包括EJB方面的内容。
Java Pitfalls:
介绍了很多Java编程容易遇到的陷阱以及解决方法。
设计模式:
就是GOF的那本,比较难懂,但是还是必看的,结合一些Java的实际例子看比较好,或者看完以后看看老版本的Jive的源代码(2.0及以前)
重构:
代码应该经常的重构以不断的提升程序的结构,让代码更好维护、更可读、更灵活、扩展性更好。特别是要和设计模式结合。
对于新手而言,最大的问题可能就是遇到问题完全没有头绪,特别是程序出错的时候,简单的说一下我解决问题的方式。
在完成这个EJB单元测试框架的CMP的时候,核心应该就是成功使用Command模式,框架在初始化的时候会自动初始化需要使用的Entity Bean,包括Entity Bean之间的依赖关系,但是如果在初始化的时候,一个Entity Bean依赖另外一个还没有初始化的Entity Bean,而所依赖的那个Entity Bean又依赖这个Entity Bean,就会形成循环依赖。我使用Command模式,讲这个依赖关系放到一个Command里面,然后在一个Entity Bean的基本属性初始化完成以后再执行Command队列初始化那些关系,就不会形成循环依赖了。
代码如下:
阅读全文
经过一段时间的努力,我总算是初步完成了这个EJB单元测试框架,现在运行那些测试用例(183个,难易不等)只需要60秒左右,我挑选出来的一个做为样例的Session Bean的代码行覆盖率达到94%,而Branch覆盖率为100%。
明天计划说服其它的人使用这个框架辅助他们的开发,虽然这个是单元测试,但是因为不用启动JBoss也可以调试Session Bean和Action,我想使用它辅助开发也是个不错的主意(我们的JBoss启动需要至少2分钟,一般都是在3分钟以上)。另外一个进行辅助开发的原因是我们的时间很紧,原本计划在这个版本中要求新的功能必须有单元测试的要求可能也要取消了,那我辛辛苦苦完成的框架可能要拖到至少明年3月以后才可能被使用了,夜长梦多啊。
另外一个考虑就是他们写的测试用例越多,可能发现的问题也越多,也好帮助我更加完善这个框架。另外就是可能会要求我增加更多的功能辅助他们的验证工作。
© 2024 解惑
本主题由Anders Noren提供 — 向上 ↑