﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-malphi</title><link>http://www.blogjava.net/malphi/</link><description>follow my heart</description><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 18:55:52 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 18:55:52 GMT</pubDate><ttl>60</ttl><item><title>由TDD想到的和没有想到的</title><link>http://www.blogjava.net/malphi/archive/2005/12/07/22909.html</link><dc:creator>吗啡</dc:creator><author>吗啡</author><pubDate>Wed, 07 Dec 2005 12:31:00 GMT</pubDate><guid>http://www.blogjava.net/malphi/archive/2005/12/07/22909.html</guid><wfw:comment>http://www.blogjava.net/malphi/comments/22909.html</wfw:comment><comments>http://www.blogjava.net/malphi/archive/2005/12/07/22909.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/malphi/comments/commentRss/22909.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/malphi/services/trackbacks/22909.html</trackback:ping><description><![CDATA[<DIV>&nbsp;&nbsp;&nbsp;&nbsp; 很意外我选择了一个自己还算比较感兴趣的论文课题TDD（测试驱动开发），而导师让我挑选的另外一个主题性能测试一不太感兴趣，二大概想了想不同的软件和硬件环境可以搭配出无限种的测试环境，这样的试验和研究实在是让人头疼，而且根据测不准原理，万一答辩时老头跟我较真说：我怎么保证我的测试用例是正确的？我只能回答不能保证；再问我既然测试用例都不正确由它测试出来的程序怎么能是正确的？那时候我只能无奈加无语了。</DIV>
<DIV>&nbsp;&nbsp;&nbsp; 所以选择了TDD。经过了一段时间才发现，原来测试虽然复杂尚有可操作的余地，而这个挂着测试之名但不是测试的东西让我思前想后没有觅得门路。最开始看来TDD这个名词的提出，以为内容是驱动程序的测试呢，心想这种东西实在无聊，不知道也罢。看过之后才知，TDD正所谓挂羊头卖狗肉者，重点不是测试而是开发，其实是开发方法而非测试方法，这里驱动二字实为动词而非名词，意指：由测试驱动的、带动的开发。不知当初谁人最先翻译成此，实在误人子弟。</DIV>
<DIV>&nbsp;&nbsp;&nbsp; TDD是XP方法学中很重要的一部分，倡导测试先行，由测试驱动代码开发。没有代码测试什么？最初我也是这样理解。但实际上TDD是一个非常fantastic的东西，加上现在的编译器十分智能，代码自然而然运用而生。举个简单的例子：</DIV>
<DIV>&nbsp;&nbsp;&nbsp; 我就写一个狗叫的程序，具体怎么写先不管，先写测试：</DIV>
<DIV>&nbsp;&nbsp;&nbsp; Dog xiaobai = new Dog(); //创建一只小狗－小白</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; assertEquals("wangwang!",xiaobai.bark() ) //判断小白的吠声是不是汪汪</DIV>
<DIV>好了，测试写完，run一下，肯定是red bar，同时编译器会告诉你，没有发现Dog这个类，很简单，创建一个，如果你的编译器够智能的话你都不用写 class Dog这句话，点一下错误提示的解决方法就可以了。接着，还有错误，bay这个方法不存在，编译器还会提示你：是否创建一个呢？OK，创建一个：public&nbsp;String bark(){&nbsp;return "wangwang";} 再run一下，OK，测试通过，是green bar，好了，现在看看是不是想要的代码都出来了？</DIV>
<DIV>&nbsp;&nbsp; 所以说TDD是个很妙的东西，amazing。然而我的大脑并不妙，还是找不到切入点，TDD这么大的树林里我还都没有发现自己要打的那只鸟，更别提逮到它了。总之埋头苦干，继续努力了。</DIV><img src ="http://www.blogjava.net/malphi/aggbug/22909.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/malphi/" target="_blank">吗啡</a> 2005-12-07 20:31 <a href="http://www.blogjava.net/malphi/archive/2005/12/07/22909.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>简单还是复杂？DeXter的发布 </title><link>http://www.blogjava.net/malphi/archive/2005/12/07/22861.html</link><dc:creator>吗啡</dc:creator><author>吗啡</author><pubDate>Wed, 07 Dec 2005 07:04:00 GMT</pubDate><guid>http://www.blogjava.net/malphi/archive/2005/12/07/22861.html</guid><wfw:comment>http://www.blogjava.net/malphi/comments/22861.html</wfw:comment><comments>http://www.blogjava.net/malphi/archive/2005/12/07/22861.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/malphi/comments/commentRss/22861.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/malphi/services/trackbacks/22861.html</trackback:ping><description><![CDATA[<TABLE class="fixedTable blogpost" cellSpacing=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=ellipse><SPAN class=bvTitle id=subjcns!1pvoK6QES9CKUigr2gHBjd6Q!208><STRONG></STRONG></SPAN></TD></TR>
<TR>
<TD class=bvh8><STRONG></STRONG></TD></TR>
<TR>
<TD id=msgcns!1pvoK6QES9CKUigr2gHBjd6Q!208>
<DIV>&nbsp;&nbsp;&nbsp; 我是一个典型的Borland Nation，网名的由来也和Borland的主力开发工具有关，一是非常喜欢Delphi这个工具，而是开始只会使用这个工具（有点汗颜）。由于D一惯的卓越品质，使其他IDE显得一无是处，当时也没有什么J和dot扰局，着实辉煌了一把。我从version 5开始用的，前一阵我还下了古董级的D1，10多年前的东西，居然支持C/S，实在是一个超时代的产品。让我的Borland情结也一直延续至今。</DIV>
<DIV>&nbsp;&nbsp;&nbsp; 我用的时间最长的是D6，后面的version发布的太过仓促，有些是过渡产品，有些不完善，好不容易下决心改2005了又发现常常有crash的情况，只好作罢。对于1年1更新的举动也表示理解，Development工具的市场硝烟弥漫，小小的Borland要想面对M、S、O之流的弱肉强食不得不加快自己奔跑的速度。 </DIV>
<DIV>&nbsp;&nbsp;&nbsp; 然而新的IDE越来越庞大，越来越没有个性和特色，Borland引以为傲的东西几乎丧失殆尽。看看2006代号dexter的庞然大物，可以写delphi,C++,C#,.Net 。。。唯一不能写的语言就是java，免得强了自己jbuilder的市场。这样的东西到底是否实用？有没有想过如此开发环境需要怎样的硬件才能run的顺畅？IT界特别是软件界一种以简单为美，code越easy越好，为什么Borland要反其道行之？如果我只是一个win32开发者，只会delphi语言，那么其他的功能对我有什么用呢？看看现在大红大紫的eclipse，环境单一，需要其他功能吗？自己安装插件，控制权在自己手中。我想Borland是不是该想一想发展的方向是否正确了，辉煌时期是靠前沿的技术靠特色成为一面旗帜，而现在，只能成为谁都不敢得罪的在J2EE/.Net两座大山中间骑墙头的小跟班。唉，成千上万的Nations估计心凉的很。</DIV>
<DIV>&nbsp;&nbsp;&nbsp; 我一直以为，简单才是美。</DIV></TD></TR></TBODY></TABLE><img src ="http://www.blogjava.net/malphi/aggbug/22861.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/malphi/" target="_blank">吗啡</a> 2005-12-07 15:04 <a href="http://www.blogjava.net/malphi/archive/2005/12/07/22861.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>