- 浏览: 193457 次
- 性别:
- 来自: 北京
最新评论
-
bzhao:
开启了一个很牛逼的话题!
提高程序员的准入门槛? -
迷人阳光love:
不知两年多了,lz整理的从问题出发的模式是否还在??很是渴望得 ...
学习模式,不如先了解问题 -
迷人阳光love:
lz说到了我的心坎里,这是您10年发的文章,现在 也没找到一个 ...
学习模式,不如先了解问题 -
toafu:
我的理解是,持续集成和交付也解决不了人的问题。
为什么我的敏捷项目有如此多的问题? -
liaofeng_xiao:
《不可承受的生命之轻》 ,真没看出太多内容~
近期看的书和电影
文章列表
Office能够让你写插件。2003系列虽然已经远去,其CommandBar也被2007的Ribbon给替代。但是,你未必就完全了解了这个存在多年看似简单,实则狗屎的CommandBar。
我们翻开手册(其实没有什么手册,在2007之前,office是没有提供给VBA程序 ...
Estimation有很多流派。
从数字的选择上来看:有的人喜欢用1,2,3,4,5。有的人喜欢用2,4,8,16。有的人喜欢1,2,3,5,8。
从单位的选择上来看:有的人喜欢用“点”。有的人喜欢用“Ideal Day”。有的人喜欢用“Ideal Hour”。
我个人喜欢用2,3,4,5,单位喜欢用“Real Day”。
喜欢2,3,4,5的原因是因为我相信,写得好的Story List不应该有太大的尺寸差距,最大的和最小的Story之间不可能相差三倍,不然要么是大的Story根本没有分析清楚,要不就是小的Story可能只是一个Technical Task。
另外我之所以不喜欢1的原因是因为, ...
- 2008-10-27 09:04
- 浏览 1139
- 评论(0)
estimation只是一个开始,不是结束.好的estimation不是developer估的好,还要靠BA大人们来管理scope,不然就算developer牛成马了,estimation还是一坨.
相对于给出一个精确的绝对值来说,维护内在的相对关系更重要,一致性为王.
story写得不好,再estimate也是枉费功夫.
不要总是关注story的大小,把一些story加起来构成一个完整feature的大小也很重要.对于客户来说,他们往往关注在feature级别.
一个feature的大小,往往还取决于BA对它写了多少了个story.
没有"一天"的story, ...
这个例子很老啦,在之前的Domain Model的争论中被广泛引用(参见:http://www.iteye.com/topic/11712)。我再来炒炒冷饭。
这个Domain可以简化为这样:
public class Item {
private Set<Bid> bids = new HashSet<Bid>();
}
public class Bid {
p ...
好老的话题啦。拿出来炒炒冷饭。各位见谅。
——————————————————————
Domain Model贫血是说属于Domain Model的逻辑没有放在Domain Model中。那是哪些逻辑没有放到Domain Model中,从而导致贫血一说呢?原因有很多,但是我认为最主要是Service中的那些逻辑。而这些逻辑又有一个共同的特点就是依赖于DAO,或者说需要查询数据库。Robbin的帖子:http://www.iteye.com/topic/57075,举了一个很好的例子。我取其中的一个部分在这里做演示用。
public class Employee {
privat ...
Windows
Win32 API (pywinauto, autoit)
MS Accessbility (?)
UI Automation (eft, white)
In CLR object model (Sharprobo)
WEB
In browser DOM, Using frame (Selenium)
In browser DOM, Using proxy (Sahi)
Out browser DOM, Using specific browser pluggin (Watir)
Java
In JVM object model/java.awt.Robot (abbot)
...
- 2008-05-04 22:16
- 浏览 2061
- 评论(0)
Pain Point 1: XAML always create the controls by its default constructor
This means, you need to have a default constructor for you control, and the constructor will always be used by XAML. So, you can not use constructor dependency injection to pass things like services, gateways to your control. A ...
Lesson 1: trust it
Everything could cause problem. There is no API could be really stable. Even it is stable itself, the interop and version difference or mis-use could cause problems as well.
Lesson 2: rely on 3rd party vendor
Add-in express is causing lots of troubles. Should be no feature rely ...
Outlook的对象模型中,很多对象都有一个MAPIOBJECT属性。这个属性可以用来获得对应的MAPI对象。最简单的应用可能就是取得MailItem上的一些额外属性,比如取得Attachment的ContentId。
要正确使用这个属性不容易。首先,不要在进程外取得属性的值,也就是说不能用Office Automation来启动Outlook,必须是在AddIn中取值。用伪代码,示例如下:
Marshal.GetIUnknownForObject(attachment.MAPIOBJECT)
Marshal.QueryInterface(pUnk, ref IID_IMAPIProp, o ...
- 2008-01-09 18:06
- 浏览 2075
- 评论(0)
早上送女友去上班,从东直门到宣武门。因为反正要返回东直门的,所以索性坐了完整一圈。早八点的二号线,真是相当的恐怖啊。观察出了一个最高峰的地铁段,从复兴门到阜成门。也许大家都住在一号线沿线,然后去金融街上班吧。东直门的人反而不是很多。
- 2008-01-09 09:45
- 浏览 1853
- 评论(0)
汉语编程上CSDN首页了。不少骂傻逼的人,不少人说没搞头。我觉得,还是有搞头的。但是搞法,不是现在的这种搞法。不是用
如果(真)
替代
if (true)
这就没搞头,谁都知道输入中文慢,谁都知道大部分的API是英文的。这个层次太低!在实现这个层面,搞中文编程,没有多少实际意义。
提高层次是关键
if,else这个层面,是面对程序员的。作为一个程序员,你会用中文编程吗?需要中文的人,是那些懂业务不做编码的人。如果发明一种汉语编程语言来描述业务规则,而不是具体的实现,然后让懂业务的人去读,甚至让他们去写。说不定,还有搞头。
- 2007-11-12 15:19
- 浏览 1894
- 评论(3)
someone told me, don't do that. Framework should free the com reference for you. but...
if you are writing a AddIn for PowerPoint, you might have seen the same problem. That is, if you reference a element of GroupItems without release it immediately, next time, you group it into bigger group, and tr ...
- 2007-10-29 22:46
- 浏览 1655
- 评论(0)
http://www.infoq.com/news/2007/10/next-gen-functional-testing
pretty easy:
UI automation testing is the key thing
Distributed running tests in Virtualized environment is critical
BA's lo-fi prototype should be testing script
BA's acceptance criteria should be testing script
QA's automation testing s ...
- 2007-10-17 09:45
- 浏览 1390
- 评论(0)
问题场景:
有一个方法类似于下面的状况:
...
if (condition1) {
...
}
else {
...
}
...
if (condition2) {
...
}
else {
...
}
...
那么你该写几个测试来覆盖这段代码呢?答案是四个。
如果你有三个条件呢?答案是八个。
那么更多呢?。。。
解决办法:
...
do_first_thing();
...
do_second_thing();
...
抽取出两个方法。然后针对每个抽取的方法来写测试。而对原来的那个方法,只需要写一个测试了。
- 2007-10-15 16:10
- 浏览 1404
- 评论(1)