假如你沒(méi)有采用靈敏的方式,那你就落后了。這是最近SD Best PRactices 2004會(huì)議上的標(biāo)語(yǔ)。靈敏的方法就象XP和Scrum正在世界的軟件發(fā)展中,變得越來(lái)越普遍了。靈敏是一個(gè)巨大的改變,讓軟件開(kāi)發(fā)者把重心轉(zhuǎn)移到質(zhì)量和速度上。這對(duì)已經(jīng)被比喻成面向?qū)ο笤O(shè)計(jì)的軟件開(kāi)發(fā)有很大的影響。但是,這種影響的一些方面已經(jīng)放慢了:GUI的開(kāi)發(fā),自從大多數(shù)軟件包含了一些類(lèi)型的GUI,而且比較多的軟件開(kāi)發(fā)的百分比是去完成以GUI為中心的,應(yīng)用靈敏的優(yōu)勢(shì)去開(kāi)發(fā)GUI就是要害問(wèn)題了。
什么在阻止人們用靈敏的方法來(lái)開(kāi)發(fā)GUI呢?不論他們的應(yīng)用是基于web的或是桌面應(yīng)用,大多數(shù)開(kāi)發(fā)者不做用戶(hù)界面user interface的測(cè)試驅(qū)動(dòng)開(kāi)發(fā)test-driven development (TDD)。這都因?yàn)橐粋€(gè)簡(jiǎn)單的原因:?jiǎn)卧獪y(cè)試GUI是很困難的。測(cè)試GUI是很乏味沉悶而且輕易出錯(cuò)的,包含了模擬用戶(hù)事件的復(fù)雜代碼,在事件傳播和控制重繪的時(shí)候等待,然后在他顯示給用戶(hù)之前,嘗試著檢測(cè)狀態(tài)。靈敏依靠于測(cè)試驅(qū)動(dòng)開(kāi)發(fā),但是為GUI的特定行為來(lái)寫(xiě)有效的測(cè)試代碼是困難的。在cube farm(辦公農(nóng)莊,用隔斷間隔成很多小工作間的辦公室? 商務(wù)英語(yǔ))的GUI方面上,質(zhì)量和設(shè)計(jì)從靈敏方法中受益已經(jīng)被完全熟悉到。