??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美精选一区二区,伊人精品在线,一线天粉嫩在线播放http://www.aygfsteel.com/langds/archive/2006/09/08/68446.html狂h思维·成都狂h思维·成都Fri, 08 Sep 2006 02:15:00 GMThttp://www.aygfsteel.com/langds/archive/2006/09/08/68446.htmlhttp://www.aygfsteel.com/langds/comments/68446.htmlhttp://www.aygfsteel.com/langds/archive/2006/09/08/68446.html#Feedback4http://www.aygfsteel.com/langds/comments/commentRss/68446.htmlhttp://www.aygfsteel.com/langds/services/trackbacks/68446.html

[摘要]

cȝ初始化和对象初始化是 JVM 理的类型生命周期中非常重要的两个环节,Google 了一遍网l,有关c装载机制的文章倒是不少Q然而类初始化和对象初始化的文章q不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见?/p>

本文主要对类和对象初始化全过E进行分析,通过一个实际问题引入,源代码转换?JVM 字节码后Q对 JVM 执行q程的关键点q行全面解析Qƈ在文中穿插入了相?JVM 规范?JVM 的部分内部理论知识,以理Z实际l合的方式介l对象初始化和类初始化之间的协作以及可能存在的冲H问题?br />

本文发表于IBM DW,详细正文误 解析JAVAcd对象的初始化q程
|址:http://www-128.ibm.com/developerworks/cn/java/j-lo-clobj-init/index.html



狂h思维·成都 2006-09-08 10:15 发表评论
]]>
最新消?JRubyl于跨进了标准之?--JRuby Steps Into the Sunhttp://www.aygfsteel.com/langds/archive/2006/09/08/68443.html狂h思维·成都狂h思维·成都Fri, 08 Sep 2006 02:02:00 GMThttp://www.aygfsteel.com/langds/archive/2006/09/08/68443.htmlhttp://www.aygfsteel.com/langds/comments/68443.htmlhttp://www.aygfsteel.com/langds/archive/2006/09/08/68443.html#Feedback1http://www.aygfsteel.com/langds/comments/commentRss/68443.htmlhttp://www.aygfsteel.com/langds/services/trackbacks/68443.html

Headius

http://headius.blogspot.com/2006/09/jruby-steps-into-sun.html

 It's going to be a big news day for JRuby :)

The two core JRuby developers, myself and Thomas Enebo, will become employees at Sun Microsystems this month. Our charge? You guessed it...we're being hired to work on JRuby full-time.

Perhaps some of you may have seen this one coming. For others, it may be a pleasant surprise.

The primary goal is to give JRuby the attention it really needs. The potential for Ruby on the JVM has not escaped notice at Sun, and so we'll be focusing on making JRuby as complete, performant, and solid as possible. We'll then proceed on to help build out broader tool support for Ruby, answering calls by many in the industry for a "better" or "smarter" Ruby development experience. I'm also making it a personal priority to continue growing the JRuby community, foster greater cooperation between the Java and Ruby worlds, and work toward a "whole-platform" Ruby-on-JVM strategy for Sun.

And yes, JRuby will remain as open source as it is today. It just might start moving a bit faster (as if it weren't moving fast already!)

You can imagine how excited I am about this opportunity, and how pleased I am to know that Sun takes Ruby so seriously. Not only will I get to work on the project I've poured my heart into this past year, but I'll be able to do it while helping one of my favorite companies turn a technological corner. Naturally I've been talking with a myriad of folks at Sun over the past several weeks, so believe me when I say these guys really get it. The tide has turned and dynamic languages are on everyone's agenda. It's going to be quite a ride.

Thanks very much to Tim Bray, who has proven a fearless advocate for Ruby and dynamic languages at Sun. Thanks also to Gilad Bracha, Neal Gafter, James Gosling, Peter von der Ahé, and others fighting to improve Java and make the Java platform a dynlang-friendly place. Thanks also to my Sun interviewers for their excellent, thoughtful questions and ideas about the future of JRuby and dynlangs on the JVM. I'm looking forward to working with you all.

And finally, thanks to all you who use, contribute to, and blog about JRuby. You're a huge part of this, and I want you all to join us on this great Ruby adventure. Community involvement has gotten JRuby where it is today, and community involvement is vital to making Ruby on the JVM a reality.



狂h思维·成都 2006-09-08 10:02 发表评论
]]>
最q很?很郁?也很有收?/title><link>http://www.aygfsteel.com/langds/archive/2006/03/27/37666.html</link><dc:creator>狂h思维·成都</dc:creator><author>狂h思维·成都</author><pubDate>Mon, 27 Mar 2006 11:02:00 GMT</pubDate><guid>http://www.aygfsteel.com/langds/archive/2006/03/27/37666.html</guid><wfw:comment>http://www.aygfsteel.com/langds/comments/37666.html</wfw:comment><comments>http://www.aygfsteel.com/langds/archive/2006/03/27/37666.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.aygfsteel.com/langds/comments/commentRss/37666.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/langds/services/trackbacks/37666.html</trackback:ping><description><![CDATA[ <p>q入目׃直忙忙碌?朦胧中已l有q一q没写Blog?放下手中的笔Q体息一下,觉得是乎应该对自己最q的工作ȝ一下,拿v键盘Q却又不知道具体要说些什么,g有很多要写的Q很散,思维q有点ؕ......Q还是就q思A来吧 ~~<br /><br />我所在的目׃一期用的是一个公司的开发^収ͼ因ؓ其^台自w的功能限制无法扩展、难以维护且pȝ可控制度极低Q因此,客户方决定在二期重新设计架构q在新的架构上完全重新开发,而我正是在ؓ新的架构做技术预研,其中形Ş色色的问题ؕ如麻?br /><br />首先是JSFQ我们采用的是MyFaces的实玎ͼ服务器WAS5.1,JDK1.4.1.2Q在发布JSF应用时的W一个问题就是JSF容器无法正常初始化。这个问题很Ҏ定位Q就是由于Servlet 2.3规范对Lisener和Servlet的初始化序要求不严|从而不同厂商有着不同的实现导致的。但因ؓ有朋友也在用JSFQ且服务器版本也一_他们没有问题Q偏偏我整死也跑不通,所以,开始觉得自q判断可能不对Q但郁闷的是用google搜烦半天没搜到解x案,最后没折了Q只好自己去打开JAR包看看源代码Q结果发现里面有个MyFacesServletQ打开一看内容,直想一头撞死,原来该类解决?.3规范问题Q从而他可以替换Linsenercȝ初始化职责。他在被加蝲旉先会查StartupServletContextListener有没有正常初始化Q如果未初始化则调用StartupServletContextListenerq行初始化。看来有时候还真是不能偷半ҎQ要怿自己的判断?br /><br />其次是JSTLQ我最初用的是apache的参考实?.1版本Q结果整死都无法使用QL报taglib无法解析Q到|上查了半天Q没有一个h说具体的解决ҎQ没办法Q从来没用过JSTL啊,新手L会碰上一脸灰的,后来打开看Tablib的版本,天啦Qh家要求的是JSP 2.0Q而我的还是基?.3规范?.2Q当然无法解析了Q然后从C|上DOWN个jstl 1.0下来Q一跑就通!Q唉Q真是没办法Q在|络上,有些问题一搜就刎ͼ而有些看似简单的问题却能把h折腾个半死,l果发现你还是要自己定下心来LQ千万不要全指望别h。又受教了?br /><br />再次SpringWebflowQ到目前为此Qwebflowq处?.0早期版本Q现在还不能定1.0正式版何时推出,做ؓ我们来说Q也是一ơ大胆偿试,说实话,当前的webflow版本功能q不能以应用到目中来Q但我相信他的正式版应该会很快推出,所以就抢先偿试了,偿试中的问题׃说了Q就说说它现在的~陷吧,<br />  1.支持程U变量创建,却无法给变量赋|郁闷Q这么重要的功能居然q没提供<br />  2.调用POJOҎӞ必需要有参数Q且参数必需是在flowScope上下文里Q连静态常量参数都不支持,又狂郁闷了一把。在程里,q是再常用不q的功能了,居然没提供,希望正式版快快出来,q补上这些缺陗要不然Q他是不可能q入实际目应用的。偶现在真是想修改他的代码,把这些功能通通加q去。。,但最l还是得先抑制住冲动---再等{看吧。。?br />  3.与JSF集成的JSP里的非受Bean的普通JSP参数无法在flowScope里获得,q一点不能肯定,有可能是转发方式的问题,希望能修改该问题?br />  4.程里的表达式灵zL太差,管是采用OGNL做的解析Q但q是只能写一些极其简单的逻辑表达式,E微复杂一点的----别想。这一点,也有可能是我q没用好的缘故,需q一步证?br /><br />最后就是自定义Data Table UIlg了,我们要同时支持列表分,定制式的l合查询Q动态排序等Q这几功能点乍一听觉得应该不难,可一做v来,也ƈ非易事,我现在没有基于JSF的UI实现Q而是通过JSP TAG +XML+XSLT+AJAX的方式来实现的,其中最复杂的就是组件的参数l定和状态绑定的问题Q服务端是无状态模型,所有状态及参数都保存在客户端,解决如何能让自己的组仉的状态参C与其它组件或面上的其它参数发生冲突是个非常重要一环,另外是SQL的解析,l果模型的抽象,转换器的抽象Q对UI前端的命令解析及执行Q参数模型的装Q对不同的数据来源用不周的解析器{等Q都是要考虑的问题,q一块要说v来就太多了,{先把这个组件完全测通了后,再拿现来专门讨论讨论?br /><br />感想Q开发一个好的框架是一个非常考水q的事情Q他不是我们qx所惛_中的那样单地一些现成的开源框架拼凑v来就了事的,他涉及到了项目群的协模式Q系l架构,各层所选用的技术框架特性,业务集成{方斚w面,即使用Springq种几乎现成的框架来做ؓpȝ的主q骨Ӟ做ؓ框架设计者,你要做的事还很多Q你要从pȝM角度去考虑pȝ的逻辑模式Q与外部pȝ的协作模式,pȝ的可扩展性和低R入性;你要让开发h员尽可能的少做重复劳动;你还要保证你所选的技术方案能在开发过E中无障;你要做好解决开发过E中的所有技术难题的准备Q除了这些,更关键的是你q要能做好业务模型的抽象和设计,你要能及时或预先发现潜在风险和问题ƈ解决它。。。。等{,太多太多。。。,而我Q现在要行的路还长得?....</p> <img src ="http://www.aygfsteel.com/langds/aggbug/37666.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/langds/" target="_blank">狂h思维·成都</a> 2006-03-27 19:02 <a href="http://www.aygfsteel.com/langds/archive/2006/03/27/37666.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>架构、框架、基件之反?/title><link>http://www.aygfsteel.com/langds/archive/2005/05/20/4999.html</link><dc:creator>狂h思维·成都</dc:creator><author>狂h思维·成都</author><pubDate>Fri, 20 May 2005 08:44:00 GMT</pubDate><guid>http://www.aygfsteel.com/langds/archive/2005/05/20/4999.html</guid><wfw:comment>http://www.aygfsteel.com/langds/comments/4999.html</wfw:comment><comments>http://www.aygfsteel.com/langds/archive/2005/05/20/4999.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.aygfsteel.com/langds/comments/commentRss/4999.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/langds/services/trackbacks/4999.html</trackback:ping><description><![CDATA[<P>看过<A accessKey=1 >微雨心晴QX-BraveQ?/A>的对架构、框架、基件三者关pȝ后,我陷入了一阵不安和恐慌之中?BR>       发现我原来对软g框架的理解还是那L溥Qƈ由此惌vQ应该不只我一个是q样Q我惛_多数的开发h员在从普通的E序员向架构设计转型旉会遇到的q样的问题,在阐q的q个问题之前有必要将q三都的关系描述一?q里q接引?A accessKey=1 >微雨心晴QX-BraveQ?/A>的描q?Q?BR><FONT color=#006400>        从层ơ结构来看,软g架构是从整体上来看Y件设计开发的Q框枉常是从较高的层ơ来实现或者被选择来实现Y件的架构Q基?cL更小的Y件元素,只是更加的强调通用?/FONT><FONT color=#008000> 三者之间存在微妙的关系Q以至于实Ҏ引vZ的؜淆。实际上Q试囑֮全的割裂它们即不是错误的做法,也常怸是良好的设计Q三者之间存在紧密的依赖关系.</FONT><BR><BR>我很赞同q种说法Q现在我来描q我以前设计pȝ框架时的问题所在:<BR>最初在W一ơ担L架设计时QL从功能类出发?BR> 卻I先考虑pȝ有哪些复杂而又频繁使用的类Q对q此c进行分包,归类Qƈ命名为UTILS?/P> <P>然后再是对系l分层,分包Q几乎没有多中间接口,怏层之间L紧耦合的调用,造成了层与层的改动牵q边q大?BR> <BR>写出来的框架像工具包一P׃大堆看v来没有联pȝcdU而成?/P> <P>后来Q经历过一ơ大目后,开始关注一些徏模理Z及开源框Ӟ对先前的框架设计思想产生极大的冲击,开始关注系l的整体搭配Q接口解耦,代码重用Q自动化控制E度有所提高?BR>但感觉问题还是依然很严峻Q主要表现在Q对pȝ的把握层ơ仍然偏?从代码角度出?Q缺乏对pȝ整体的抽象能力和建模能力。对零散的业务规则难以抽象出很好的业务模型ƈ以与pȝ架构l合h?/P> <P><BR>ȝ来说我经历了两个阶段Q?。以公用基础件ؓ核心的积木式开?2。以局部框架结?实现)v点,分层整合的泛式开?最明显的问题就是层层之间不成一体,目大到后期p松散变得来难以控?</P> <P>目前Q开始将目光从系l业务层面出发,以架构ؓ主,逐步向框架结构设计过渡的方向发展Q但q时o我感到力不从心,毕境理论归理论,现实中还需要丰富的实践l验ȝU?/P> <P><BR> </P><img src ="http://www.aygfsteel.com/langds/aggbug/4999.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/langds/" target="_blank">狂h思维·成都</a> 2005-05-20 16:44 <a href="http://www.aygfsteel.com/langds/archive/2005/05/20/4999.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Hibernate 对BLOB大字D之存与?的疑?/title><link>http://www.aygfsteel.com/langds/archive/2005/05/20/4996.html</link><dc:creator>狂h思维·成都</dc:creator><author>狂h思维·成都</author><pubDate>Fri, 20 May 2005 07:35:00 GMT</pubDate><guid>http://www.aygfsteel.com/langds/archive/2005/05/20/4996.html</guid><wfw:comment>http://www.aygfsteel.com/langds/comments/4996.html</wfw:comment><comments>http://www.aygfsteel.com/langds/archive/2005/05/20/4996.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.aygfsteel.com/langds/comments/commentRss/4996.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/langds/services/trackbacks/4996.html</trackback:ping><description><![CDATA[一晃就q了三个月了Q已l很久没有写代码了,感觉思维都快要停止蟩动了。刚才突然想起在以前单位开发的一套ERPpȝ的一个问题,q个pȝ的持久层采用的ORM框架是HIBERNATEQ问题是q样的:<BR>客户的所有文档及囄{大数据均存攑֜BLOB字段中,在PO中有我们映射的对应字D,在新增一条文档记录时Q当然是要经q两部操?卻I先INSERT基本信息Qƈ对BLOB字段|空初始化,然后再UPDATE BLOG字段Q将文档内容存入数据?。但在读取该字段Ӟ却只能读?K内容Q不知道HIBERNATEZ么要q样限制Q是֏效率么?<BR>如果是效率因素,我们完全可以BLOB字段与基本信息分,生成两个POQ这h们可以通过延迟加蝲Ҏ以提高效率Q我惌么简单的一点HIBERNATE开发组lƈ不可能想不到吧?那倒底会是什么原因呢Q?BR>望各位大侠指Ҏ?!<img src ="http://www.aygfsteel.com/langds/aggbug/4996.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/langds/" target="_blank">狂h思维·成都</a> 2005-05-20 15:35 <a href="http://www.aygfsteel.com/langds/archive/2005/05/20/4996.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Domain Driving Model Design之ȝ与我的选择http://www.aygfsteel.com/langds/archive/2005/04/07/2892.html狂h思维·成都狂h思维·成都Thu, 07 Apr 2005 01:44:00 GMThttp://www.aygfsteel.com/langds/archive/2005/04/07/2892.htmlhttp://www.aygfsteel.com/langds/comments/2892.htmlhttp://www.aygfsteel.com/langds/archive/2005/04/07/2892.html#Feedback5http://www.aygfsteel.com/langds/comments/commentRss/2892.htmlhttp://www.aygfsteel.com/langds/services/trackbacks/2892.html最q在javaEye上看到有?/SPAN>Domain Driving Model Design的激烈讨论,让我?/SPAN>DOMAIN MODEL的理解更深刻了不,现在意Ҏ之际,l合我在目中的实际l验讨Z的一些结论摘录ƈȝ出来Q?/SPAN>

首先引用说明一?/SPAN>Domain Model 的定义:

Domain Model Q?/SPAN> An object model of the domain that incorporates both behavior and data.

Domain Model 分两U:

1  Simple Domain Model (Active Record)

它的特点?/SPAN>POJO?/SPAN>TABLE STRUCTURE一一对应Q徏模基于数据库设计?/SPAN>Hibernate走的是q个路子Q说它血Q意思就是指它只?/SPAN>dataQ没?/SPAN>behavior?/SPAN>(但我们实际可以通过HBM文g的定义和映射Q在PO中适当的加入一些基本的业务逻辑的?/SPAN>)

在这U模式下Q?/SPAN>POJO自己?/SPAN>CRUD操作都应该放在自qc里面。其他复杂的业务逻辑会放到外面的Service layer?/SPAN>

2  Rich Domain Model (Data Mapper)

它的特点?/SPAN>POJO?/SPAN>TABLE STRUCTUREq不一一对应Q徏模天马行I,完全取决于业务逻辑?/SPAN>domain object?/SPAN>table之间?/SPAN>mappingQ由Data Mapper完成Q?/SPAN>domain object不用数据表是何{结构,甚至不用?/SPAN>Data Mapper怎么操作?/SPAN>

 

1.识别某种业务行ؓ的一个很定的原则:

       domain logic只应该和q一?/SPAN>domain object?B style="mso-bidi-font-weight: normal">实例状?/B>(q“持久”状?/SPAN>)有关Q而不应该和一?/SPAN>domain object的状态有?/SPAN>.

q一步的_主要?/SPAN>logic是否只和q个object(注:指自w?/SPAN>)的状态有养I如果只和q个object(注:指自w?/SPAN>)有关Q就?/SPAN>domain logicQ如?/SPAN>logic是和一?/SPAN>domain object(注:指同cd的实?/SPAN>)的状态有养I׃?/SPAN>domain logicQ而是business logic?/SPAN>

 

2.Domain Model ?/SPAN> Hibernate PO 的区别:

领域模型的代码实现需要用一l互相协作的cL完成Q每一个或者一l类承担q个领域模型的某个特征。?/SPAN>Hibernate的实体类只不q是其中的一l类Q它承担的职责就是保持领域模型的状态的?/SPAN>

 

3.ZDomain Model 分析与设计的Ҏ规则Q?/SPAN>

应该?B style="mso-bidi-font-weight: normal">领域模型来驱动你的Y?B style="mso-bidi-font-weight: normal">内在规则Q由需?/B>驱动你的软g外在交互.

 

最后,我想补充的是Q根据目前的O/R Mapping技术,我们在实际项目开发中Q能真正做到 富领域模?/SPAN> q不现实(因ؓ我们q要考虑诸如性能、目?/SPAN>O/R持久化特性等{问?/SPAN>)Q更何况Q我们的MODEL DATA最l需要被持久化,因此Q我比较反对?/SPAN>DOMAIN MODEL 中直接通过M方式做Q何持久化操作Q因会让你所设计?/SPAN>MODEL无法独立化,难以单元试Qƈ且与加入了一些外界无关的东西Q这不符合对象的本质(对象本n是不能持久化?/SPAN>)。虽然我们做不到完整意义上的Domain Driving Model DevelopmentQ但我们可以在项目实际开发中因ؓ性能、结构简化等{上面得到补偿,q已l值得ƣ慰了?BR>

]]>
վ֩ģ壺 ߮| ʡ| Զ| | | | | ɽ| | | | | | | Ϻ| | | ͨ| ˮ| ²| | | | IJ| | ²| ʡ| Ҧ| | ˷| | ɽ| | | ȷɽ| | | ʡ| | ɽ| |