OOPAA

Focusing on OO, Patterns, Architecture, and Agile
posts - 29, comments - 75, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

     摘要: 戊子年终于走到了岁末,转眼即将迎来己丑年。因为今晚就将踏上归途,本博提前给blogjava以及广大读者拜个早年了:各位新年好,恭喜发财!新的一年就要到了,牛年希望大家都能牛气一些,不管在生活上,还是工作学习上。每个人都是不断学习和进步的。截止目前,本博也是在酝酿着一些的文章,就此晒晒新年的写作计划吧!  阅读全文

posted @ 2009-01-23 10:40 mingj 阅读(2197) | 评论 (2)编辑 收藏

     摘要: 最近结束了一个企业OA系统的项目,客户是一家海洋航运行业的企业,散运业务全球第一。该系统以工作流系统为基础平台,对员工工作进行电子化和规范化,由系统来驱动员工自动、快捷、可管地完成日常工作。在开发过程中,在综合评比多种工作流产品之后,我们选择了开源工作流产品——OSworkflow作为底层工作流引擎支撑,通过扩展OSworkflow的接口把业务系统和工作流引擎完美无缝地集成在一起。本文就是跟大家一起分享osworkflow扩展过程中的经验心得,希望能对其他朋友有帮助。  阅读全文

posted @ 2009-01-16 17:15 mingj 阅读(5502) | 评论 (11)编辑 收藏

     摘要: play! framework 是一个面向小型网站开发的 rails-like 的 Java 框架,不仅在目录结构上,在系统的 skeleton 生成上,也把 rails 学了个七七八八。最近和同事也在做一个 rails style 的 Java Web 应用开发框架,参考了 rails 的很多 feature,但更多的是按照自己的开发理念和哲学思想“拿来” rails 里面有借鉴意义的思想。面对号称 rails-like 的 play! framework,这几天身在海滩上,于是花了一些时间好好研究了 play! 的源代码一番。“看上去很美”,是读完代码后脑海中第一下涌现出来的想法,我承认我是OOafarian。  阅读全文

posted @ 2008-12-31 22:08 mingj 阅读(5342) | 评论 (14)编辑 收藏

     摘要: 前一段时间读了Matt Stephens 与 Doug Rosenberg 合著的《Extreme Programming Refactored: The Case Against XP》(以下简称《Refactored》)。该书虽然是针对 Kent Beck 的《Extreme Programming Explained: Embracing Changes》(以下简称《Explained》)第一版进行阐发,然后 Kent Beck 在《Explained》第二版里面也修正了一些 XP 的理念和态度,但是《Refactored》书中提到的一些见解和看法现在读来还是挺有意思的。特别有意思的是作者在书中把 XP 和马克思主义来做对比,得出一些共同点,也颇让人若有所思。本文结合我公司敏捷培训中学员问得比较多的问题做了一番比较粗略的解释,希望对使用敏捷方法学还有疑问的组织或个人能有一定的帮助和借鉴意义。  阅读全文

posted @ 2008-12-31 00:52 mingj 阅读(3537) | 评论 (1)编辑 收藏

     摘要: play! framework 是最近出的一个号称 rails-like 的 java web 开发框架,blogjava有些博友也发表了一些blog来宣传。这两天“在海滩上”,就花了一些时间读了一下play! 的源代码,有些心得体会。特别是对play! 宣称的“Edit your Java files, save, refresh your browser and see the results! No need to compile, deploy or restart the server”功能非常感兴趣,于是着重看了 play! 在 hot swap 这一块的实现代码。结果,真相揭晓了,不存在魔术。  阅读全文

posted @ 2008-12-30 17:06 mingj 阅读(4494) | 评论 (12)编辑 收藏

     摘要: 目前有很多软件组织陷入在软件开发的焦泥坑中,面临着种种不同而又复杂的情况。分析其根源,重量的、不能及时反馈改进的软件方法是原因之一。而在现实中,项目管理层往往通过增加人力等手段,却又陷入 Brooks' Law 的迷雾之中。企图一劳永逸,通过大规模过程改进来提升交付能力,更是被 Fred Brooks 斥为“there is no silver bullet”。这种情况下,敏捷方法的出现自有它的优点,不仅就软件开发的本质复杂性,而且也就软件开发的附加复杂性进行了有益的探索。这些探索被证明是有效而且长期的,只是落实到具体人、具体实践上面,又是被歪嘴和尚念了真经。  阅读全文

posted @ 2008-12-18 13:58 mingj 阅读(3639) | 评论 (6)编辑 收藏

     摘要: 说起 DIP ,大家第一反应肯定是 spring framework,想起“Dependency Injection”(依赖注入)。对 DIP 而言,真是幸也 spring,不幸也 spring。作为 OO 设计开发的重要原则之一,DIP 远远不只是依赖注入模式,重读 Robert Fowler 的《Agile Software Developement:principles,Patterns,and Practices》,就会发现前面的理解只见其表,不见其里——只抓住 DIP 实践的表面形式,而对其背后 OOA & OOD 的深刻涵义视而不见——真是入宝山而空返。本文就将试着分析 DIP 的内外两层涵义,并根据实际的例子分析,给读者增进对面向对象思想的理解。  阅读全文

posted @ 2008-11-02 17:37 mingj 阅读(1844) | 评论 (2)编辑 收藏

     摘要: WEB 应用通常会引入 Session,用来在服务端和客户端之间保存一系列动作/消息的状态,比如网上购物维护 user 登录信息直到 user 退出。在 user 登录后,Session 周期里有很多 action 都需要从 Session 中得到 user,再验证身份权限,或者进行其他的操作:这其中就会涉及到程序去访问 Session属性的问题。传统 Servlet 程序因为使用 Servlet API,从而对 Servlet API产生依赖,不利于 controller 的测试和逻辑复用。本文介绍了四种 Spring2.5 中访问 Session 属性的策略,并从 POJO 化、易于测试和复用、利于属性访问等方面一一分析了每种策略的优点和不足,提供给读者进行评价和选择。  阅读全文

posted @ 2008-10-12 16:57 mingj 阅读(4338) | 评论 (4)编辑 收藏

     摘要: 在开发过程中,我们通常需要mock特定的对象来测试预期行为,或者使用stub对象来提高单元测试效率。最常见的例子就是在多层webapp中,在 controller类的测试方法里mock或stub底层dao类的方法,从而减轻单元测试时数据库操作的开销,加快单元测试速率。至于 Reflection,已不是java的新概念了,各样框架基本上都有使用Reflection来增强Runtime的动态性。而java5里 Reflection效率的提升和annotation的引入,更是极大地提高java语言的动态性,让开发人员得到更多Runtime的灵活性。本文将演示如何使用spring2.5和Reflection简化测试中的mock。  阅读全文

posted @ 2008-09-22 09:58 mingj 阅读(1980) | 评论 (0)编辑 收藏

仅列出标题
共2页: 上一页 1 2