`
文章列表
期待已久的2013年敏捷嘉年华活动,于6月29日~7月6日,在北京、上海、苏州分别举行。国内外很多敏捷实践的先行者甚至一些大牛们纷纷发表主题演讲或参与大会。杭州也有不少同行参与了这次盛会,像诺西、华三、曼拓科技等。三天的大会主要是由一些演讲、咨询和游戏组成,下面就回顾几个,总结一些收获。敏捷讲座三天的行程有两天半是讲座,下面列举三个印象较深的讲座。唯快不破三天大会最重量级的演讲要数Mary Poppendieck给大家带来的《唯快不破》演讲,该演讲的主题就是“快“,快意味着,合理的组织、经济的投入、细心准备以及战略的睿智。那对软件开发行业又意味着什么呢?意味着高质量的正确的产品;意味着对要向 ...

最小可用产品

在2013年敏捷嘉年华上听到了MVP的概念,这个概念是在精益软件开发里提到。MVP(Minimum Viable Product)是指最小可用产品:产品仅包含必要的功能点,从而能从早期的衣食父母那里得到钱和反馈。仅包含必要的功能点意味着最小成本,最能展现核心概念;不一定是成品,可以仅仅是理念;通常,构建构建MVP仅需要一天或一周的时间。以Dropbox 的例子,他们的MVP 是一个3 分钟的示意影片,拍完之后就丢到网络上,去看市场的反应。而测试过程中一个很重要的方式,是透过Google 关键字广告。从过程中,你可以知道有多少人会对这样的产品有兴趣(搜寻量),有多少人会点选你的广告,连过来之后又有 ...
“双重检查锁定被打破”的声明The "Double-Checked Locking is Broken" Declaration Signed by: David Bacon (IBM Research) Joshua Bloch (Javasoft), Jeff Bogda, Cliff Click (Hotspot JVM project), Paul Haahr, Doug Lea, Tom May, Jan-Willem Maessen, Jeremy Manson, John D. Mitchell (jGuru) Kelvin Nilsen, Bill Pug ...
可以免费转载,转载时请注明出处  http://pengqb.iteye.com 。 Maven 命令行选项说明:1、使用-选项时,和后面的参数之间可以不要空格。而使用--选项时,和后面的参数之间必须有空格。如下面的例子: $ mvn help:describe -Dcmd=compiler:compile $ mvn install --define maven.test.skip=true2、有些命令行选项是从Maven2.1才有的。   定义属性-D,--define<arg> 定义系统属性这是最常用到的定制Maven插件行为的选项。   获得帮助-h,--help  ...
<!--可以免费转载,转载时请注明出处  http://pengqb.iteye.com 。--><project xmlns="http://maven.apache.org/POM/4.0.0 "      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0. ...
<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd&qu ...
前段时间,一个同学拿一个硬盘过来让我帮他恢复被删除的监控录像文件。经检查该硬盘是linux的ext3磁盘格式。我的linux是装在VMware虚拟机上的。我的笔记本通过usb连接他的硬盘。经过如下操作帮他恢复了被删除内容。 1、通过 #fdisk -l 命令查询虚拟机是否识别硬盘了,在这儿,可以看到,虚拟机系统并没有识别硬盘。有两种处理办法,如下:a、在主系统(我的是windows XP)中弹出硬盘,点击虚拟系统界面,将活动光标置于虚拟系统中,此时再次插入硬盘,可以看到主系统右下角弹出虚拟机识别硬盘的消息提示,否则,重新上述操作,直到虚拟机识别硬盘为止。这种方法比较笨的,大家可以采取第二种方法 ...
从学习java开始,我就一直认为,如果一个类的属性定义成private,如Test类中的addition属性: public class Test{ private String addition; }  那么就没办法通过以下方式访问addition属性的: Test test = new Test(); test.addition = ***; 好像是受c++的影响才这么认为的。现在我发现我又错了。如果在Test类里有一个test对象,那么这个对象是可以这样访问的。见下面的例子 public class Test{ private String addition; ...
原来一直以为子类在重写Object.clone()方法时,需要额外把子类的新增属性也赋值给克隆对象,如下面的代码,other.setAddition(this.addition);我以前写clone 方法时都是加上这一句的。事实上这是不必要的,可以把这一句代码去掉。要实现这种效果是有前提条件的:在Test类的父类链上,所有的父类必须提供clone方法,并且返回由调用super.clone方法获得的对象。如果任何一个父类的clone方法返回由构造函数创建的对象,这就会产生一个错误的类。当我们重写了clone方法,必须返回super.clone方法获得的对象。如果遵循了以上规则,Object.clo ...
一时兴起,写了下面的小程序,程序用来实现MapReduce计算。并在客户端模拟一个可以用MapReduce的场景:有n个数字,1,2,3,... k ...,n-1,n。计算n个数字的平方和。程序提供了MapReduce方法和直接计算的方法分别计算结果,并比较每种计算方法的代价。程序会打印出所有计算的成本和最终计算结果。   事实上客户端完全可以定义自己的Dispense,Map和Reduce算法,如计算n个数字的立方和或统计日志。   程序中用到了以下的知识点:MapReduce,泛型,匿名内部类,多线程Runnable和Callable。小子不才,计划以此程序为起点,做一个开源的Ma ...
由于记忆力有限,把平时常用的Linux命令整理出来,以便随时查阅:    linux 基本命令  ls     (list 显示当前目录下文件和目录 ls -l 详细显示 =ll )   [root@linux ~]# ls [-aAdfFhilRS] 目录名称 [root@linux ~]# ls [--color={none,auto,always}] 目录名称 [root@linux ~]# ls [--full-time] 目录名称 参数: -a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来~ -A :全部的档案,连同隐藏档,但不包括 . 与 ...
在多线程调试的时候用到了java的VisualVM工具,jdk1.6自动带了该工具。介绍下该工具的使用方法:准备 在windows下由于以下原因会导致 Local Applications Cannot Be Detected (Error Dialog On Startup): 1. Java程序缺少读写Windows的临时目录的权限 ...
如何在mysql数据里使用Oracle序列语法.NEXTVAL和.CURVAL. 假设在mysql中序列的语法是:       NEXTVAL('sequence');       CURRVAL('sequence');       SETVAL('sequence',value); -- 1创建tas_music表 DROP TABLE IF EXISTS `tas_app`.`tas_music`; CREATE TABLE  `tas_app`.`tas_music` ( `id` int(4) NOT NULL AUTO_INCREMENT, `name` varchar(32) NO ...
以下是我给同事写的一封信,介绍了我们公司网站优化的做法 海刚,正伟好! 对于新闻,股票,和号百的性能问题,经过这两天的探索,网页的性能得到了一定的提升。 通过终端测试,完全打开新闻页面由原来的20秒可以减少到10秒,性能提升了一倍。而同样的页面用pc机打开的话都是在1秒左右。 通过yslow测试,网页的性能由原来的70分提升到了90分。本人认为服务端的性能基本没有再提高的余地了,除非增加硬件。希望终端能提高一定的性能。 以下是提高网页性能时采取的一些措施: 1对于js文件,把多个文件合并成一个文件,并且把合并后的文件进行压缩,压缩工具jsa,获取该工具:http://www.xidea.org ...
Global site tag (gtag.js) - Google Analytics