??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品一区二区欧美,日韩免费av一区二区三区,亚洲影视一区http://www.aygfsteel.com/steady/category/11538.htmlzh-cnWed, 16 May 2007 14:35:18 GMTWed, 16 May 2007 14:35:18 GMT60Agile 随想http://www.aygfsteel.com/steady/archive/2006/11/30/84466.htmlsteadysteadyThu, 30 Nov 2006 00:38:00 GMThttp://www.aygfsteel.com/steady/archive/2006/11/30/84466.htmlhttp://www.aygfsteel.com/steady/comments/84466.htmlhttp://www.aygfsteel.com/steady/archive/2006/11/30/84466.html#Feedback0http://www.aygfsteel.com/steady/comments/commentRss/84466.htmlhttp://www.aygfsteel.com/steady/services/trackbacks/84466.html关于敏捷问题

周末?rocket 介绍了一些来?thoughtworks 关于敏捷的一些思想Q同时也引发了大家的一些思考和讨论。从一U角度来看, Agile 体现了一UY件开发最Ҏ的问题,是׃h在一定的旉内开发出高质量的软gQAgile 更加注重人在整个zd里的作用Q而传l的瀑布模型中,g更加注重文档{,也就是我q去所在的公司Q一切开发都由文档驱动,在这L情况下,团队中每个h都是可以被替代的Q从某种意义上来_降低了Y件开发的风险Q但是效率却很难提高。?Agile 注重的一个方面就?pairQ通过拉近ZZ间的具体来加快信息在团队中的{速度Q信息像水一h源不断的动Q这样在 change 发生Ӟ能够得到更快的响应,而瀑布模型则需要慢慢的由文档传播开来,传递速度和面都比较有限?/font>

虽然 thoughtworks l了我们一个极兯惑的 Agile 果子Q某U意义上来说是徏立在他们公司利益基础上的Q真正的d Agile 需要更加清醒和理智的想问题。Agile 是一U实늚Ҏ论,需要大量实践和l验才能真正的去理解它,另外一斚wQ从传统的开发方式{型至 AgileQ多多少都会有q去D留的痕q,而这些看不见的痕q,可能会暗暗的Ҏ Agile 最初承诺的效果?/font>

Agile 是一U好东西Q某U意义上Q资本家从开发h员手里榨取了更大的h|q是建立在效率提高基之上的,但它却散发着无比的诱惑,或许大家希望自己写一些文档,或许大家厌倦了瀑布模型的流E,或许。。。?/font>



steady 2006-11-30 08:38 发表评论
]]>
?AgileJava iCustomer 改进惛_?/title><link>http://www.aygfsteel.com/steady/archive/2006/08/21/64738.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Mon, 21 Aug 2006 03:15:00 GMT</pubDate><guid>http://www.aygfsteel.com/steady/archive/2006/08/21/64738.html</guid><wfw:comment>http://www.aygfsteel.com/steady/comments/64738.html</wfw:comment><comments>http://www.aygfsteel.com/steady/archive/2006/08/21/64738.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/steady/comments/commentRss/64738.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/steady/services/trackbacks/64738.html</trackback:ping><description><![CDATA[<font color=#000000 size=2>    ׃q一周的旉Q把 iCustomer 大改了一番,其实说来也没有特别大的变化了Q修改的东西只不q是一些过ȝ一些bug和网上朋友们的一些徏议,其实重点q是攑֜?bug 上,另外是 Order q部分系l的领域模型重构QOrder ?OrderItem 之间的关联由原来?one-to-many Ҏ了现在的 composite-element 方式Q参考了 Hibernate Reference 的内容,从理解上来说q样的关联方式也是比较合适的Q有q去的松散的兌方式换成了现在这L密的兌方式。通过前面q两个月?Hibernate 概念更深层次的思考与理解Q现在在处理赯L问题都变得轻松了很多Q没有那么多的问题会很让我在开发中卡壳Q而且是那U一卡就卡上个好几天不能解决的。当q样的关联关pd杂了以后QHibernate 的功效才更好的发挥出来了Q我们拿兌对象׃用再写一堆方法去拿了Q需要的时候去取,Hibernate ׃自动的取帮你取好。实际上q次?Order 部分时候,很多情况下都是在删过ȝ代码Q过ȝ方式真的太复杂了Q全部要自己手工一个个的去拿,直就是把 Hibenate ?SQL 用,从思想上来_q显然是不正的?br><br>    另外x看,如果在一个项目中用v Hibernate 或者用同h式的 EJB3 Persistence 真的会存在着太多的风险了。Hibernate 走的是方式上的变革,我们必须ȝ新的思想去考虑问题Q而不是仅仅用用它而已Q我们需要从对象建模的角度就开始考虑 ORM 的存在,以对象ؓ中心的方式去l织业务逻辑Q而不是以表ؓ中心ȝl,刚开始用 Hibernate 的时候,大部分情况还是在考虑表如何如何的Q但是用了一D|间以后,发现q样的方式和 Hibernate 真正的核心思想相差太大了。所以说要正的ȝ Hibernate 决不是看了一两本书,做了几个单的 CRUD 可以的了,需要在许多复杂兌中经受考验才可以,而一个要很好的去?Hibernate 的项目,一定是要有q样l验的hd才可以的Q几个刚d书Q知道怎么用就L Hibernate 做项目的人真的还是远q不够的Q这U情况在 iCustomer 0.1 版本中表现的非常H出Q؜q配置和关联关p,让用了 Hibernate 后,代码未减反增Q我努力?0.2 的版本中做出一些修改了Q当然只是比原来好了一些,ȝ正理想的情况q是有差距的。当然有I我会把q样的一些经验和大家分n一下,让大家在学习 Hibernate 上少C些我曄走过的弯路了?br><br>    又用回了 JSFQ开始发现这L方式真的有很多的好处了,而且?JSF 的用和l验上有一些积累,用它来徏立一个不大的目l验应该是够的了。Backing Bean 的方式比 Action 的方式配|文件的数量上要减少了很多,说能够减到原来?1/4 甚至更多都不了,因ؓ我们一般情况下一?Backing Bean 对应一个页面,只需要配|一处,而一个页面中如果有很多操作的?Action 方式需要配|很多了Q比如一个查询页面,查询需要一?ActionQ查看查询的一个记录需要一?ActionQ删除记录需要一?ActionQ修改一条记录又需要一?ActionQ算h正好 1:4Q是不是省了很多配置呢,在结合扩展的 Navigation 方式Q连 Navigation 都不需要配|了。配|文件真的少了很多了?br><br>    用到了一?Tomahawk lg中独有的 forceId 属性,不能说有多爽Q但是可以让你在?JavaScript 的时候省了好一些代码了Q过M个组件的 id 生成出来是 form:cid 的Ş式,而用?forcdId = "true" 后,生成出来?id 是你在lg?Tag 中实际定义的|当然用的时候也要小心了Q千万不能重复,包括同一面中不能重复,也包括一个页面中包含另外一个页面时不能重复 ?/font> <img src ="http://www.aygfsteel.com/steady/aggbug/64738.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/steady/" target="_blank">steady</a> 2006-08-21 11:15 <a href="http://www.aygfsteel.com/steady/archive/2006/08/21/64738.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>AgileJava开源项目正式开?/title><link>http://www.aygfsteel.com/steady/archive/2006/06/05/50412.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Mon, 05 Jun 2006 01:00:00 GMT</pubDate><guid>http://www.aygfsteel.com/steady/archive/2006/06/05/50412.html</guid><wfw:comment>http://www.aygfsteel.com/steady/comments/50412.html</wfw:comment><comments>http://www.aygfsteel.com/steady/archive/2006/06/05/50412.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.aygfsteel.com/steady/comments/commentRss/50412.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/steady/services/trackbacks/50412.html</trackback:ping><description><![CDATA[ <p> <font size="2">  l过大约四个月的开发,和五位开发设计及工人员的努力,AgileJava iCustomer 的第一个不是那么稳定的版本l于拿出来了Q我们终于走Z我们的第一步,在这期间Q我们也得到了很多朋友的支持和帮助,我们要感谢这些支持者的贡献?</font> </p> <p> <font size="2">  在这个阶D里Q我们团队成员一h我们研究 JSF, Spring, HibernateQ以?Acegi 的成果都集中在这个项目中了。虽然很多东襉K只是那么点点滴滴Q但是在q期间有很多朋友在积极的帮助我们Q参与我们的 OpenDoc zdQ把自己的宝贉|间分享出来,为大家带来了很多很好的文档,上周末,我们得到?javascud 的大力支持,我们有了自己?SVNQ有了自q JIRAQ这L话,我们便可以徏立我们自q协作开发^収ͼ让我们的l验和更多的朋友分nQ同Ӟ我们也欢q更多的朋友能够参与到我们的开源活动中来,因ؓ有了你们Q我们才可以更壮大,因ؓ有了你们Q我们才可以更成熟,因ؓ有了大家的齐心协力,我们才能Z一个共同的目标d斗,因ؓ有了大家的协作,我们才会在共同努力中q步?</font> </p> <p> <font size="2">  开源也不是一句口P我们只想用我们自q行动来证明这一切,正因为我们是热爱开源的Q所以我们才会去努力做的更好Q正因ؓ我们有着一个奋斗目标,我们才会孜孜不倦的d斗。此?SpringSide 为我们做Z一个榜PEasyJF 让我们梦惛_自己的努力中实现QCowNew 也成为我们开源一个很好的先例Q正是因为大家有q个梦想Q有q些前辈们的努力Q我们才看到国内开源的希望?</font> </p> <p> <font size="2">  其实我们更希望做到的Q只是让新的技术能够更贴近实践了,让大家的实践能够更容易,让大家的开发能够更LQ所以我们才从过d是ؓ了朋友做的一个小的pȝ中找到方向,所以我们的开源团队名U叫?AgileJava 是Z让我们的开发更敏捷?</font> </p> <p> <font size="2">  下面我简单的介绍一下我们现在已有的pȝ和我们未来的目标Q?</font> </p> <p> <font size="2">  AgileJava iCustomer pȝ是一套开源的 CRM (客户关系理) pȝQ用了C代轻量 J2EE 技术: JSFQSpringQHibernateQ?Acegi {作为系l的基础开发框Ӟ力图打造一个轻快好用的 J2EE 应用?</font> </p> <p> <font size="2">  在系l开发过E中Q我们同时将pȝ中的基础框架以及大量可以?J2EE 应用开发的lg从应用中抽取出来Qƈ独立提供l广大开发h员,作ؓ目开发的基础框架Qؓ大家q行快速开发提供支持。我们ؓ该框架命名ؓ AgileJava Framework?AgileJava Framework 的目标是致力于ؓq大开发者提供一个敏捷高效的 J2EE 快速^台?</font> </p> <p> <font size="2">  另一斚wQ我们将以此框架为基Q通过 Eclipse Plugin 的方式提供一套完整的Z代码生成的解x案,用于快速生成应用的基础代码。该开发工具同h用我?AgileJava 的名Uͼ叫做 AgileJava Studio?AgileJava Studio 致力于减少开发工作中的重复劳动,l开发者带开更好的开发体验?</font> </p> <p> <font size="2">  我们会?AgileJava iCustomerQ?AgileJava FrameworkQ?AgileJava Studio 作ؓ开源项目来q作Q一斚w建立一个完整的企业U的客户关系理pȝQ另一斚w建立一个ؓ J2EE 目提供快速开发能力的基础框架和开发工兗?</font> </p> <p> <font size="2">  因ؓ国内的开源模式一直没有什么好的先例,q且开源的路线在国内因Z些误解方面的问题Q一直没有很好的发展hQ虽然我们选择了开源,但是我们更多的希望只是通过一个完整的企业U应用的方式来探索开源的方向Qƈ为我们中型企业U应用打造一个方便易用功能强大的解决ҎQ用我们的实践带l所有参与者一些经验,无论是开源方面的l验Q还是在轻量U?J2EE 应用开发的l验。虽然国内很多Y件企业都在用q些技术,但因为版权的问题Q无法和更多的朋友分享,所以我们更需要一个开攄交流环境Q通过q样开源的方式Q通过大家的努力,把我们在实践中的l验拿出来,和大家分享,共同促进我们软g开发的大环境的改善Q共同提高大家的开发能力和开发水q?</font> </p> <p> <font size="2">  在这里,我们鼓励的是一U知识共享,通过q样的共享,我们把我们自己拥有的一份知识扩展到大家拥有的无C知识。我们通过自己的实践,我们能够更深入的M解了现有的各U技术的长与短,通过大家的交与协作Q我们在知识上互相I补。通过q样的实践,我们不光是再做我们这个系l,更多的是我们有了更多的思想Q更多的l验Q我们有能力L造更好的pȝ?</font> </p> <p> <font size="2">  我们目前采用了以 JSF, Spring, Hibernate Z心的M框架Qƈ努力使之扩展C个中型商业应用所需要的主要技术领域,q之更单易用?</font> </p> <pre> <font size="2"> 目前采用的技术: JSF (Myfaces Implement)Q完整的视图层解x案,一个标准的事g驱动?MVC Framework? Spring Framework Q??IoC 容器为我们的业务对象控制带来了很大的便利? Hibernate 3 Q?目前最优秀Q用面最q的 ORM Framework? Acegi Q?一个基?Spring 的通用 Security Framework? Quartz Q?Java 世界最好也几乎是唯一?Job Schedule 工具Qؓ我们调度 Batch Job 提供了很大的便利? Shale Q?struts C֌?JSF 领域的重大A献,?JSF 为基为我们提供了一pd好用的东ѝ? </font> </pre> <pre> <font size="2"> 预计后面准备采用的技术: Compass + Lucene Q?Java 世界里最好用的开?Search Engine l合QCompass ?POJO 能够更方便的M?Lucene 的底层引擎? BIRT Q?Eclipse C֌贡献的一个重量 BI 应用。当W一眼看到它Ӟ抛弃过ȝ iReport + JasperReport 的组合了,够专业? Facelets Q??JSF 量n定做的模板框ӞJSF ?Fans 们不用再靠着 struts ?tiles 也能zd? AjaxAnywhere Q?不用?JavaScript 也能 Ajax Q它为我们提供了q样的可能? ICE Faces Component : 当它的第一个beta版本出来的时候,我就对它颇有兴趣Q或许是目前免费?JSF lg库中最好的 Ajax 实现了? </font> </pre> <p> <font size="2">  我希望能够有更多热爱开源的朋友加入到我们的行列中来Q不Z来自何方Q做着什么样的工作,只要我们有着开源的q个共同的目标,我们可以共同的Mؓ着自己的爱好,自己的理惻I自己的信忉|奋斗Q记住,开源决不是三分钟的热度Q需要你持之以恒的奋斗?</font> </p> <div id="wmqeeuq" class="printfooter"> <font size="2">  如果你对我们的项目和zd有兴,Ƣ迎加入我们的行列:<a >http://www.agilejava.org/java/read.php?tid=378</a></font> </div> <!-- end content --> <img src ="http://www.aygfsteel.com/steady/aggbug/50412.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/steady/" target="_blank">steady</a> 2006-06-05 09:00 <a href="http://www.aygfsteel.com/steady/archive/2006/06/05/50412.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[iCustomer] 目技术简?/title><link>http://www.aygfsteel.com/steady/archive/2006/05/26/48300.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Fri, 26 May 2006 04:52:00 GMT</pubDate><guid>http://www.aygfsteel.com/steady/archive/2006/05/26/48300.html</guid><wfw:comment>http://www.aygfsteel.com/steady/comments/48300.html</wfw:comment><comments>http://www.aygfsteel.com/steady/archive/2006/05/26/48300.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/steady/comments/commentRss/48300.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/steady/services/trackbacks/48300.html</trackback:ping><description><![CDATA[     摘要:   <a href='http://www.aygfsteel.com/steady/archive/2006/05/26/48300.html'>阅读全文</a><img src ="http://www.aygfsteel.com/steady/aggbug/48300.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/steady/" target="_blank">steady</a> 2006-05-26 12:52 <a href="http://www.aygfsteel.com/steady/archive/2006/05/26/48300.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">կ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͩ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϲ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̩</a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˶</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ҧ</a>| <a href="http://" target="_blank">Ȫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ָ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">μ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̶</a>| <a href="http://" target="_blank">̰</a>| <a href="http://" target="_blank">ϲ</a>| <a href="http://" target="_blank">ع</a>| <a href="http://" target="_blank">ָɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>