<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    malphi

    follow my heart

      BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
      2 Posts :: 0 Stories :: 1 Comments :: 0 Trackbacks

    2005年12月7日 #

         很意外我選擇了一個(gè)自己還算比較感興趣的論文課題TDD(測(cè)試驅(qū)動(dòng)開(kāi)發(fā)),而導(dǎo)師讓我挑選的另外一個(gè)主題性能測(cè)試一不太感興趣,二大概想了想不同的軟件和硬件環(huán)境可以搭配出無(wú)限種的測(cè)試環(huán)境,這樣的試驗(yàn)和研究實(shí)在是讓人頭疼,而且根據(jù)測(cè)不準(zhǔn)原理,萬(wàn)一答辯時(shí)老頭跟我較真說(shuō):我怎么保證我的測(cè)試用例是正確的?我只能回答不能保證;再問(wèn)我既然測(cè)試用例都不正確由它測(cè)試出來(lái)的程序怎么能是正確的?那時(shí)候我只能無(wú)奈加無(wú)語(yǔ)了。
        所以選擇了TDD。經(jīng)過(guò)了一段時(shí)間才發(fā)現(xiàn),原來(lái)測(cè)試雖然復(fù)雜尚有可操作的余地,而這個(gè)掛著測(cè)試之名但不是測(cè)試的東西讓我思前想后沒(méi)有覓得門路。最開(kāi)始看來(lái)TDD這個(gè)名詞的提出,以為內(nèi)容是驅(qū)動(dòng)程序的測(cè)試呢,心想這種東西實(shí)在無(wú)聊,不知道也罷。看過(guò)之后才知,TDD正所謂掛羊頭賣狗肉者,重點(diǎn)不是測(cè)試而是開(kāi)發(fā),其實(shí)是開(kāi)發(fā)方法而非測(cè)試方法,這里驅(qū)動(dòng)二字實(shí)為動(dòng)詞而非名詞,意指:由測(cè)試驅(qū)動(dòng)的、帶動(dòng)的開(kāi)發(fā)。不知當(dāng)初誰(shuí)人最先翻譯成此,實(shí)在誤人子弟。
        TDD是XP方法學(xué)中很重要的一部分,倡導(dǎo)測(cè)試先行,由測(cè)試驅(qū)動(dòng)代碼開(kāi)發(fā)。沒(méi)有代碼測(cè)試什么?最初我也是這樣理解。但實(shí)際上TDD是一個(gè)非常fantastic的東西,加上現(xiàn)在的編譯器十分智能,代碼自然而然運(yùn)用而生。舉個(gè)簡(jiǎn)單的例子:
        我就寫一個(gè)狗叫的程序,具體怎么寫先不管,先寫測(cè)試:
        Dog xiaobai = new Dog(); //創(chuàng)建一只小狗-小白
            assertEquals("wangwang!",xiaobai.bark() ) //判斷小白的吠聲是不是汪汪
    好了,測(cè)試寫完,run一下,肯定是red bar,同時(shí)編譯器會(huì)告訴你,沒(méi)有發(fā)現(xiàn)Dog這個(gè)類,很簡(jiǎn)單,創(chuàng)建一個(gè),如果你的編譯器夠智能的話你都不用寫 class Dog這句話,點(diǎn)一下錯(cuò)誤提示的解決方法就可以了。接著,還有錯(cuò)誤,bay這個(gè)方法不存在,編譯器還會(huì)提示你:是否創(chuàng)建一個(gè)呢?OK,創(chuàng)建一個(gè):public String bark(){ return "wangwang";} 再run一下,OK,測(cè)試通過(guò),是green bar,好了,現(xiàn)在看看是不是想要的代碼都出來(lái)了?
       所以說(shuō)TDD是個(gè)很妙的東西,amazing。然而我的大腦并不妙,還是找不到切入點(diǎn),TDD這么大的樹(shù)林里我還都沒(méi)有發(fā)現(xiàn)自己要打的那只鳥(niǎo),更別提逮到它了。總之埋頭苦干,繼續(xù)努力了。
    posted @ 2005-12-07 20:31 嗎啡 閱讀(292) | 評(píng)論 (1)編輯 收藏

        我是一個(gè)典型的Borland Nation,網(wǎng)名的由來(lái)也和Borland的主力開(kāi)發(fā)工具有關(guān),一是非常喜歡Delphi這個(gè)工具,而是開(kāi)始只會(huì)使用這個(gè)工具(有點(diǎn)汗顏)。由于D一慣的卓越品質(zhì),使其他IDE顯得一無(wú)是處,當(dāng)時(shí)也沒(méi)有什么J和dot擾局,著實(shí)輝煌了一把。我從version 5開(kāi)始用的,前一陣我還下了古董級(jí)的D1,10多年前的東西,居然支持C/S,實(shí)在是一個(gè)超時(shí)代的產(chǎn)品。讓我的Borland情結(jié)也一直延續(xù)至今。
        我用的時(shí)間最長(zhǎng)的是D6,后面的version發(fā)布的太過(guò)倉(cāng)促,有些是過(guò)渡產(chǎn)品,有些不完善,好不容易下決心改2005了又發(fā)現(xiàn)常常有crash的情況,只好作罷。對(duì)于1年1更新的舉動(dòng)也表示理解,Development工具的市場(chǎng)硝煙彌漫,小小的Borland要想面對(duì)M、S、O之流的弱肉強(qiáng)食不得不加快自己奔跑的速度。
        然而新的IDE越來(lái)越龐大,越來(lái)越?jīng)]有個(gè)性和特色,Borland引以為傲的東西幾乎喪失殆盡。看看2006代號(hào)dexter的龐然大物,可以寫delphi,C++,C#,.Net 。。。唯一不能寫的語(yǔ)言就是java,免得強(qiáng)了自己jbuilder的市場(chǎng)。這樣的東西到底是否實(shí)用?有沒(méi)有想過(guò)如此開(kāi)發(fā)環(huán)境需要怎樣的硬件才能run的順暢?IT界特別是軟件界一種以簡(jiǎn)單為美,code越easy越好,為什么Borland要反其道行之?如果我只是一個(gè)win32開(kāi)發(fā)者,只會(huì)delphi語(yǔ)言,那么其他的功能對(duì)我有什么用呢?看看現(xiàn)在大紅大紫的eclipse,環(huán)境單一,需要其他功能嗎?自己安裝插件,控制權(quán)在自己手中。我想Borland是不是該想一想發(fā)展的方向是否正確了,輝煌時(shí)期是靠前沿的技術(shù)靠特色成為一面旗幟,而現(xiàn)在,只能成為誰(shuí)都不敢得罪的在J2EE/.Net兩座大山中間騎墻頭的小跟班。唉,成千上萬(wàn)的Nations估計(jì)心涼的很。
        我一直以為,簡(jiǎn)單才是美。
    posted @ 2005-12-07 15:04 嗎啡 閱讀(258) | 評(píng)論 (0)編輯 收藏

    主站蜘蛛池模板: 亚洲无码在线播放| 亚洲综合av永久无码精品一区二区 | 一级毛片免费毛片一级毛片免费 | 久久亚洲中文字幕精品有坂深雪 | 国产亚洲精品bv在线观看| 国产曰批免费视频播放免费s| 亚洲婷婷天堂在线综合| av无码国产在线看免费网站| 亚洲成AV人综合在线观看| 九九九精品成人免费视频| 亚洲一本一道一区二区三区| 国产精品无码素人福利免费| 免费看美女午夜大片| 国产国拍精品亚洲AV片| 日本免费污片中国特一级| 久久久久亚洲AV无码专区首JN| 88av免费观看| 亚洲国产精品无码第一区二区三区| 国产精品久久香蕉免费播放| 亚欧国产一级在线免费| 亚洲免费视频在线观看| 大地资源在线观看免费高清| 免费观看亚洲人成网站| 亚洲色成人WWW永久网站| 8x8x华人永久免费视频| 亚洲欧美一区二区三区日产| 国产美女无遮挡免费网站| 成全视频免费观看在线看| 亚洲啪啪免费视频| 国产嫩草影院精品免费网址| 中文字幕无线码中文字幕免费| 亚洲精品视频在线观看免费| 四虎影院永久免费观看| 一级毛片免费毛片一级毛片免费| 亚洲精品美女久久久久久久| 亚洲伊人久久精品影院| 毛片免费观看网址| 免费视频精品一区二区三区| 亚洲色偷偷色噜噜狠狠99网| 亚洲精品夜夜夜妓女网| 免费看片A级毛片免费看|