自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

金明 的专栏

专注于Agile、OO以及Pattern

  • 博客(15)
  • 资源 (3)
  • 收藏
  • 关注

原创 持续检查之sonar初体验

<br />安装、启动Sonar:<br />Sonar的安装很容易,按照Sonar官方主页的安装指南解压缩即可。<br />Sonar默认使用derby作为数据库,你只需要在sonar.properties文件中去掉对derby数据库属性的注释,然后启动Apache derby数据库。<br />按照文档介绍,启动Sonar,默认的主页地址是http://localhost:9000,登录用户名和密码是sonar/sonar。<br />使用Sonar检查代码:<br />要使用Sonar检查代码,也很容

2010-12-22 22:56:00 852

原创 一次非典型性JSF调试过程

问题前一阵子使用JSF开发web应用程序的过程中,碰到一个需求:A页面上存在一个链接,用户点击链接会被重定向B页面。页面B上存在一个单选框,如果是通过A页面的链接过来,会把单选框置为“选择”的状态。这是非常典型的页面转向,根据JSF的页面转向配置,以及对JSF隐含对象param的介绍,下面的代码“貌似”可行: A页面:h:commandLink value="Add

2009-09-28 02:04:00 389

原创 软件开发的权利和权力

在日常生活中,有各种各样的法律规则和道德准则来约束、指导行为。比如在初次的商业合作中,双方都会选择制定一份详尽的合约来规约双方,包括双方拥有的具体权利、以及单方出错时对方享有的权利等。软件开发,在商业上面也必然会有详尽的合约,处理的是两个组织之间的利害关系。但是,软件开发同时作为紧密involve商业客户与开发团队的活动,正如Alistair Cockburn把它比喻称为game——由客户、

2009-07-11 17:11:00 1208

原创 线上出版社的一些想法

   上周末参加openparty,来自译言的几个朋友详细解释了他们预想的译言的收费模式。简单来说,译言会出面买下一些文章或书刊的版权,签约译者进行申领翻译。当译文通过审核,译言就把原文以及译文打包作为收费文章挂在译言收费频道上,按点击率来收费;或者转卖给其他网站,也可以按整文收费。最后,原文作者、译文作者和译言三方来分取利润。如果受好评足够高,译言还可能将译文提供出版,不再仅仅局限在

2009-06-28 11:14:00 508

翻译 迭代经理是什么角色?(一)【译】

(节选自本人翻译中的《ThoughtWorks Anthology》一书的第7章“What Is an Iteration Manager Anyway?”)第7章 迭代经理是什么角色?行业日新月异,敏捷、迭代式和迭代这些热门词已是“飞入寻常百姓家”,一个定义模糊的新角色——迭代经理,也浮出水面。这是新一代的项目经理么?抑或是美其名的团队带头人?又或者是管理上的一个新阶层?谁会被冠以这

2009-06-13 12:23:00 821

原创 一次 Refactoring to Fuctionality 的实践

 关于重构重构是一种改善已有代码和设计的有效手段,Martin Fowler的著作Refactoring:Improving the Design of Existing Code一书里提出了若干种重构的模式,深刻地影响了众多的开发人员。但如果认为重构只能做到小范围的代码优化,或者设计优化,并视之为无法影响更高层面工作的雕虫小技,那就大错特错了。之后 Joshua Kerievsky

2009-05-16 17:38:00 574

原创 贺新年,晒写作计划

 戊子年终于走到了岁末,转眼即将迎来己丑年。因为今晚就将踏上归途,本博提前给csdn以及广大读者拜个早年了:各位新年好,恭喜发财!    新的一年就要到了,牛年嘛,希望大家都能牛气一些,不管在生活上,还是工作学习上。每个人都是不断学习和进步的。截止目前,本博也是在酝酿着如下的文章,其中有些已经在写了(排名不分先后):   1.     结合刚刚结束的敏捷项目分析敏捷项目的各个阶段   2.    

2009-01-23 10:45:00 401

原创 Beyond Osworkflow

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

2009-01-22 16:28:00 370

原创 看上去很美 --OOafarian对play!框架的几点看法

 play! framework 是一个面向小型网站开发的 rails-like 的 Java 框架,不仅在目录结构上,在系统 skeleton 生成上,也把 rails 学了个七七八八。最近和同事也在做一个 rails style 的 Java Web 应用开发框架,参考了 rails 的很多 feature,但更多的是按照自己的开发理念和哲学思想“拿来” rails 里面有借鉴意义的思

2008-12-31 22:10:00 844

原创 XP 与马克思主义趣谈 -读《Extreme Programming Refactored: The Case Against XP》

    前一段时间读了Matt Stephens 与 Doug Rosenberg 合著的《Extreme ProgrammingRefactored: The Case Against XP》(以下简称《Refactored》)。该书虽然是针对 Kent Beck的《Extreme Programming Explained: EmbracingChanges》(以下简称《Expla

2008-12-31 12:56:00 768

原创 play! framework hot swap 浅析

play! 最大的卖点就在于 hot swap,正如它自己宣称的: reach your maximum productivity。play! 允许开发人员修改java文件,保存,然后刷新浏览器,立马可以看到效果。不需要编译,也不需要重启服务器。 Java 要想实现动态更新 class 文件,不外乎两种手段:替换 classloader、替换 JVM。因为替换 JVM 引起的开

2008-12-30 20:37:00 811

原创 由某手机厂商现状漫谈敏捷

 跟同事聊天,他原先是在一著名手机厂商研发中心工作,主要是做该厂商手持终端设备上的系统软件,于是自然聊到“摩托,也要骡拉”上来。近几年该厂的发展很不景气,好几年也没见一款拿得出手的手机,在中国的市场占有率从前三降到排名之外,连在国贸的冠名大厦都卖掉了。同事说起来也是颇多无奈,讲述了他看到的情况。据他观察,该公司内部是出现了这个几个问题:1. 基础平台不稳定,大量功能被任意加到平台里面,

2008-12-29 16:09:00 745

原创 DIP 沉思录

 Dependency Injection 这个名词,是在 Martin Fowler 的《Inversion of Control Containers and the Dependency Injection pattern》文章之后才广为人知。在文章中,Martin 解释了当时初起流行的 IOC 概念:为了消除应用程序对插件实现的依赖,程序的主控权从应用程序移到了框架。为了让 IOC 概念不

2008-12-29 16:08:00 513

原创 Spring2.5 访问 Session 属性的四种策略

 WEB 应用通常会引入 Session,用来在服务端和客户端之间保存一系列动作/消息的状态,比如网上购物维护 user 登录信息直到 user 退出。在 user 登录后,Session 周期里有很多 action 都需要从 Session 中得到 user,再验证身份权限,或者进行其他的操作。这其中就会涉及到程序去访问 Session属性的问题。在java中,Servlet 规范提供了 Htt

2008-12-29 16:07:00 733

原创 利用 Spring2.5 和 Reflection 简化 mock 测试

 spring2.5最大的特色就是全面使用annotation代替xml配置,包括IOC Container、springMVC和 TestContext测试框架等,给我们开发带来了极大的便利。springMVC的新特性在这篇文章里面已经有了比较详尽的介绍,而对于spring的新TestContext测试框架,大家也可以从这里得到详细的例子说明,有兴趣的可以去仔细阅读,本文不再赘述。总而言之,通过

2008-12-29 15:47:00 609

PushDoctor 建立工程师文化

1. Understand the organisation, industry, constraints 2. What does good look like? 3. Define / Articulate the technical/engineering vision and strategy
 4. Team Structure - Organise for success 5. Build strong engineering culture 6. Deliver 7. Build Tech for the future 
 Automate EVERYTHING & reduce FAFF

2020-06-12

设计模式10大误解

针对设计模式的10大误解<br>作者仔细分析了传统意义上的误解,并给出正确的理解

2007-12-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除