设计:不论是严格的瀑布模型还是"code it and see"(试翻译为:编码和运行查看)方式,我对设计都有这样一个观点:我做了充分的设计,因此我可以轻松的进入开发阶段。当我确切知道我在建造什么和如何建造时,我认为我的设计阶段完成。另外,在进入开发阶段之前,我使用设计模板来保证我对我自己问了所有正确的问题并且有了建议的解决方法。然而,我在该阶段同样也不害怕写代码;有时,这是回答问题的唯一方式,执行和模块化( performance or modularity)。
在不同平台上Java线程的进度如何(for example, pre-emptive or not)
绿色线程VS本地线程
热点[Hotspot](Hotspot <and why old performance tuning techniques negate Hotspot optimizations>)
JIT以及什么时候好的JITs变差(不安装的Java编译器并且你的代码依然运行良好等)
The Collections API
RMI
解决办法:
你需要提高你的Java知识,尤其是了解它的优势和弱点。Java的存在已经远远超除了一门语言本身,同样重要的是理解这平台(JDK and tools).具体的,你应当具有做一名Java 程序员的资格(假如你还没有的话)??你将对你有如此多不了解的东西感到吃惊。更进一步,将它作为你小组的一部分并向其他人推广,这种方式同样很有乐趣。更进一步,创建一份邮件列表,专心于Java技术并且保持下去。(我曾工作过的公司都有这些列表,大多数由于不更新而变的岌岌可危)向你的同伴学习??他们是你最好的资源。
只有知识能解决这些问题。好的Java 开发者造就好的EJB开发者??一步步地可以完美地成为J2EE领袖的人。你获得越多的Java/J2EE知识,你在设计和实现方面的能力越强.Things will start to slot into place for you at design time.(想了半天也不知道怎么翻译:-{ )
除了上面的解决方式,使用设计模式??它们会显著的提高你的系统设计。EJB模型本身广泛地使用设计模式。如,每个EJB里的Home接口是一个寻找者和工厂模式的例子[Finder and Factory pattern].一个EJB的远程接口担当实际bean的实现的代理,也是容器截取调用和提供服务如透明化负载均衡的能力要害。忽略设计模式的价值是危险的。