軟件絕對(duì)領(lǐng)域

          一次結(jié)對(duì)編程與TDD實(shí)踐

          有機(jī)會(huì)可以接到一個(gè)小型商務(wù)平臺(tái)的項(xiàng)目,最近就開(kāi)始做一個(gè)平臺(tái)的一些基礎(chǔ)組件,比如新聞發(fā)布模塊和用戶管理模塊。開(kāi)發(fā)團(tuán)隊(duì)只有我和另一個(gè)同學(xué),一共兩個(gè)人。而我們對(duì)XP開(kāi)發(fā)過(guò)程比較有興趣,剛剛好可以進(jìn)行結(jié)對(duì)編程和TDD。

          開(kāi)發(fā)已經(jīng)進(jìn)行了一個(gè)星期左右,已完成新聞發(fā)表模塊中的新聞管理模塊。因?yàn)橥耆珱](méi)有經(jīng)驗(yàn),而且開(kāi)發(fā)時(shí)間不夠(只能在沒(méi)有課的上午或者下午開(kāi)發(fā)),開(kāi)發(fā)進(jìn)度很慢。但是自我感覺(jué)不錯(cuò),因?yàn)轶w驗(yàn)了以前沒(méi)有體驗(yàn)過(guò)的開(kāi)發(fā)過(guò)程,從中學(xué)到了很多東西。

          在整個(gè)開(kāi)發(fā)過(guò)程中,我們始終堅(jiān)持“測(cè)試先行”原則。首先列出要完成的任務(wù)清單,用JUnit寫出相應(yīng)測(cè)試代碼,然后運(yùn)行測(cè)試,出錯(cuò),偽實(shí)現(xiàn),重構(gòu)。一般都是兩個(gè)人,一個(gè)人持有鍵盤,寫一個(gè)鐘左右的代碼,然后一邊討論一邊寫代碼。在完成了一段代碼之后有種神奇的感覺(jué),好像不知不覺(jué)中代碼就被寫出來(lái)了,這可能是TDD神奇的地方。先寫出符合需求的測(cè)試,接著按照測(cè)試來(lái)寫代碼,就是這么簡(jiǎn)單。

          不過(guò)完成了新聞發(fā)布模塊之后,經(jīng)過(guò)討論,決定下一步完成前臺(tái)的UI。對(duì)于UI的開(kāi)發(fā),平時(shí)例子學(xué)習(xí)了不少,自己寫的toycode也寫了一些,但是在實(shí)際應(yīng)用開(kāi)發(fā)中對(duì)我們還是比較陌生。一開(kāi)始準(zhǔn)備用簡(jiǎn)單的JSP和Servlet來(lái)做前端,但是在前端控制器中代碼實(shí)現(xiàn)有點(diǎn)混亂,現(xiàn)在就卡在UI這里了,最后經(jīng)過(guò)討論決定用WebWork作前端控制器。

          以前在看K.Back的《解析極限編程》時(shí),看到他把結(jié)對(duì)編程描述的很神奇:
          結(jié)對(duì)程序員:
          • 使彼此都專注于任務(wù)
          • 一起頭腦風(fēng)暴,討論系統(tǒng)的精化
          • 理清思路
          • 在搭檔陷入困境時(shí)要主動(dòng),這樣才能減少挫折
          • 使彼此都對(duì)團(tuán)隊(duì)的實(shí)踐負(fù)責(zé)
          經(jīng)過(guò)實(shí)踐之后,就很清楚地體會(huì)到k.Back講到的結(jié)對(duì)的好處。

          五一應(yīng)該還會(huì)繼續(xù)完成這個(gè)項(xiàng)目,而且是一邊做一邊學(xué)。


          posted on 2007-04-28 20:40 _Kai_ 閱讀(496) 評(píng)論(0)  編輯  收藏 所屬分類: 隨感

          公告

          碼農(nóng)一枚

          歡迎大家發(fā)E-mail到 與我討論關(guān)于軟件開(kāi)發(fā)的各種看法。

          最新Blog地址:http://thekayway.com/

          導(dǎo)航

          <2007年4月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          統(tǒng)計(jì)

          常用鏈接

          留言簿(2)

          隨筆分類(21)

          隨筆檔案(18)

          常去的地方

          技術(shù)站點(diǎn)

          朋友的Blog

          搜索

          最新評(píng)論

          閱讀排行榜

          主站蜘蛛池模板: 翁源县| 巴马| 高阳县| 广德县| 芜湖县| 台南市| 门源| 洱源县| 苍山县| 司法| 调兵山市| 壶关县| 龙川县| 彭阳县| 文成县| 兖州市| 岐山县| 吴堡县| 基隆市| 扎兰屯市| 东乌| 泸州市| 南阳市| 卢龙县| 河池市| 上林县| 武汉市| 遂昌县| 苏尼特左旗| 芦山县| 绥芬河市| 邳州市| 类乌齐县| 宁乡县| 广昌县| 新晃| 云浮市| 五峰| 柏乡县| 襄汾县| 云和县|