成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

討論:敏捷開發(fā)真的對架構(gòu)設(shè)計(jì)不利嗎?

開發(fā) 開發(fā)工具
這里將討論的話題是敏捷開發(fā)真的對架構(gòu)設(shè)計(jì)不利嗎?增量迭代開發(fā)本是提高效率的做法,希望本文能對大家有所幫助。

目前有很多程序開發(fā)人員都認(rèn)為敏捷開發(fā)會(huì)幫助項(xiàng)目更快的完成,但是本次討論卻要從反方向來進(jìn)行探討。希望這些對大家有所幫助。

增量迭代開發(fā)(敏捷實(shí)踐之一,它意味著每次迭代的產(chǎn)出只是本次迭代范圍內(nèi)的需求)真的不利于產(chǎn)生好的設(shè)計(jì)嗎?Scrum真的提倡“忽視架構(gòu)問題”嗎?如果沒有敏捷技術(shù)實(shí)踐的話,架構(gòu)設(shè)計(jì)能有效的演化嗎?測試先行式的開發(fā)真會(huì)產(chǎn)生優(yōu)雅的設(shè)計(jì)嗎?在紅綠條提示下的重構(gòu)循環(huán)只在局部小范圍內(nèi)有效嗎?

來自Net Objectives的Alan Shalloway就利用Scrum構(gòu)建應(yīng)用的經(jīng)驗(yàn)向ScrumDevelopment yahoo group的成員提出一些問題,問題之一就是“他們是否找到代碼質(zhì)量是依靠什么來保證的?”

當(dāng)我在課程中或在那些討論“向已建系統(tǒng)中追加新特性”的會(huì)議中提出這個(gè)問題時(shí),每個(gè)人都認(rèn)為這屬于集成成本。我想,這是因?yàn)榇蠖鄶?shù)人不會(huì)編寫那些融入了很多設(shè)計(jì)模式的具有良好的擴(kuò)展性、足夠靈活并且易維護(hù)的代碼。這些人中,大部分也沒有使用過Scrum。

Shalloway隨后詳細(xì)解釋了他的觀點(diǎn):

……正如Scrum所告訴我們的,他們(指在Scrum團(tuán)隊(duì)中的開發(fā)者)根據(jù)客戶價(jià)值一次只開發(fā)系統(tǒng)的一小部分,如果團(tuán)隊(duì)中有高級(jí)架構(gòu)師的話,就會(huì)組織得更好。很多開發(fā)者有一種很好的意識(shí),即他們會(huì)回頭看一下是否應(yīng)該做一些改動(dòng),使架構(gòu)更合理。但更多的人并不知道,假如代碼是通過拷貝、粘貼并修改(甚至改得面目全非)得來的,那么這會(huì)帶來很多冗余。此時(shí),Template Method可能是一個(gè)比較好的解決方案。

也許我悲觀了一些,但我的感覺是,假如你沒有注意熵的話,就意味著它們會(huì)達(dá)到你不期望的地步。在你的案例中,你正在使用Scrum來改善很多團(tuán)隊(duì)忽視的東西。所以,我的問題是:

大家忽視它了嗎?

如果真是這樣,它會(huì)引來問題嗎?

到目前為止,這些反應(yīng)都表明很多使用Scrum的團(tuán)隊(duì)有這個(gè)問題,甚至那些堅(jiān)持寫測試和進(jìn)行重構(gòu)的團(tuán)隊(duì)也有同樣的問題。那些沒有使用多少有些變化的敏捷技術(shù)實(shí)踐的團(tuán)隊(duì),可能會(huì)有更大的麻煩。(請記住:Scrum 與開發(fā)技術(shù)沒有必然的聯(lián)系,你可以使用傳統(tǒng)方法開發(fā)軟件,也可以用XP,或者其它技術(shù)實(shí)踐,只要你在Scrum的框架之內(nèi)使用就可以了)

接下來,讓我們討論一下現(xiàn)實(shí)中,Red-Green-Refactor loop是如何發(fā)揮作用的?一個(gè)團(tuán)隊(duì)在寫測試和重構(gòu)方面深有心得,就會(huì)有一個(gè)好的設(shè)計(jì)嗎?Paul Jones 的blog中有一篇關(guān)于TDD如何創(chuàng)建了混沌代碼(Ravioli Code),宣稱用TDD開發(fā)出來的代碼是低耦合的代碼:

我想,很多TDD和測試先行的理想主義者和宣傳者寫出了的確經(jīng)過充分測試的代碼,但還是很難理解。

Jones并不想撼動(dòng)TDD,因?yàn)榕c其測試目的相比,TDD實(shí)際上更關(guān)注于設(shè)計(jì)。但這還是會(huì)帶來一個(gè)有趣的事情。在使用這些實(shí)踐的敏捷社區(qū)中,好在哪里呢?隨著社區(qū)的成長,這些實(shí)踐帶來的麻煩比其帶來的好處還多嗎?與傳統(tǒng)開發(fā)技術(shù)相比,這些工具被不正確的使用是否更危險(xiǎn)?

最后,讓我們假設(shè):我們正在恰當(dāng)?shù)厥褂肧crum和TDD。畢竟,象Ron Jeffries 在《We Tried Baseball and It Didn't Work》一文中所呈現(xiàn)的,我們不能因?yàn)樽约簺]有正確地使用它而將不好的結(jié)果強(qiáng)加給它。TDD會(huì)產(chǎn)生好的設(shè)計(jì)嗎?對于使用Red-Green-Refactor loop的做法,重構(gòu)可以說是一種局部優(yōu)化技術(shù)。我們優(yōu)化局部的設(shè)計(jì)。本質(zhì)上,這等同于steepest descent algorithm,也就意味著重構(gòu)幾乎總是會(huì)帶來次優(yōu)設(shè)計(jì),就象使用TDD來做“數(shù)獨(dú)游戲”一樣。

現(xiàn)在是我們用批判的眼光來重新審視我們的這些實(shí)踐的時(shí)候了嗎?

【編輯推薦】

  1. 再談敏捷開發(fā)的好處及敏捷外包的前景
  2. 再談敏捷開發(fā) 從成本到收益的優(yōu)化
  3. 敏捷開發(fā)指導(dǎo)方針
  4. 敏捷開發(fā)中的成效評(píng)估模型
  5. 對敏捷開發(fā)的五大誤解
責(zé)任編輯:彭凡 來源: PHPChina
相關(guān)推薦

2009-07-06 10:36:41

敏捷開發(fā)

2009-06-12 16:07:05

演進(jìn)式架構(gòu)設(shè)計(jì)敏捷開發(fā)

2012-07-02 14:47:57

架構(gòu)敏捷開發(fā)

2013-03-20 18:14:35

架構(gòu)架構(gòu)設(shè)計(jì)項(xiàng)目

2011-12-26 16:03:34

私有云

2011-12-26 10:39:13

云計(jì)算私有云

2017-03-06 15:36:39

敏捷開發(fā)反饋信息

2023-03-28 08:29:52

2009-06-18 09:01:05

敏捷開發(fā)

2013-05-27 10:58:28

Tumblr架構(gòu)設(shè)計(jì)雅虎收購

2009-03-18 18:26:32

英特爾Nehalem服務(wù)器

2011-08-12 13:30:27

iPhoneASIFormData架構(gòu)

2009-03-05 09:21:04

敏捷開發(fā)XP開源

2018-03-19 16:05:51

前端程序員

2025-05-09 08:45:13

2025-04-15 04:00:00

2015-06-02 04:17:44

架構(gòu)設(shè)計(jì)審架構(gòu)設(shè)計(jì)說明書

2023-07-05 08:00:52

MetrAuto系統(tǒng)架構(gòu)

2011-04-08 17:03:19

Java架構(gòu)

2022-07-26 12:33:38

架構(gòu)設(shè)計(jì)場景
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美性受xxxx | 欧美成人精品 | 国产中文| 久久这里只有精品首页 | 欧美偷偷 | 国产精品免费大片 | 欧美精品一区二区三区蜜桃视频 | 中文字幕视频在线观看 | 一片毛片 | 欧美日韩黄色一级片 | 亚洲欧美视频一区 | 国产激情小视频 | 欧美不卡一区 | 免费观看一级黄色录像 | 亚洲一区精品在线 | 精品国产精品三级精品av网址 | 成人三级av | 成人综合一区二区 | 欧美女优在线观看 | 亚洲一二三区在线观看 | 精品自拍视频在线观看 | 91视频免费 | 在线综合视频 | 亚洲视频在线一区 | 欧美自拍一区 | 激情久久网 | 欧美 日韩 亚洲91麻豆精品 | 国产一区二区日韩 | 一区二区三区四区在线视频 | 国产一二三区电影 | 色视频在线播放 | 91精品国产综合久久久久蜜臀 | 国产aaaaav久久久一区二区 | 亚洲人成人一区二区在线观看 | 日韩美女在线看免费观看 | 欧美成人h版在线观看 | 中文在线a在线 | 久久这里有精品 | 欧美激情国产日韩精品一区18 | 欧美激情综合五月色丁香小说 | 夜久久 |