青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 181  文章 - 15  trackbacks - 0
<2007年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

My Tech blog

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

難以通過重構(gòu)手法完成的設(shè)計改動
比如說在一個項目中,我們很難(但還是有可能)將“無安全需求情況下構(gòu)造起來的系統(tǒng)”重構(gòu)為“安全性良好的系統(tǒng)”。
這種情況下我的辦法就是“先想象重構(gòu)的情況”。考慮候選設(shè)計方案時,我會問自己:將某個設(shè)計重構(gòu)為另一個設(shè)計的難度有多大? 如果看上去很簡單,我就不用擔(dān)心選擇是否得當(dāng),于是我就會選擇最簡單的設(shè)計,哪怕它不能覆蓋所有潛在需求也沒關(guān)系。但如果預(yù)先看不出簡單的重構(gòu)辦法,我就會在設(shè)計上投入更多力氣。
何時不該重構(gòu)?
重寫(而非重構(gòu))的一個清楚的訊號就是:現(xiàn)有代碼根本不能正常工作。你可能只是試著做點(diǎn)測試,然后就發(fā)現(xiàn)代碼中滿是錯誤,根本無法穩(wěn)定運(yùn)作。記住,重構(gòu)之前,代碼必須起碼能夠在大部分情況下正常運(yùn)作。
另外,如果項目自己已近最后期限,你也應(yīng)該避免重構(gòu)。在此時機(jī),從重構(gòu)過程中贏得的生產(chǎn)力只有在最后期限過后才能體現(xiàn)出來,而那個時候已經(jīng)時不我予。
Wrad Cunningharn的看法:未完成的重構(gòu)工作是“債務(wù)”。過于復(fù)雜的代碼所造成的維護(hù)和擴(kuò)展的額外開銷,就是利息。你可以承受一定程度的利息,但如果利息太高你就會被壓垮。把債務(wù)管理好是很重要的,你應(yīng)該通過重構(gòu)來償還部分債務(wù)。
重構(gòu)與設(shè)計
Alistair Cockburn:有了設(shè)計,我可以思考更快,但是其中充滿小漏洞。
有一種觀點(diǎn)認(rèn)為:重構(gòu)可以成為“預(yù)先設(shè)計”的替代品。這意思是你根本不必做任何設(shè)計,只管按照最初想法開始編碼,讓代碼有效運(yùn)作,然后再將它重構(gòu)成型。極限編程的支持者極力提倡這種辦法。
但這不是最有效的途徑。極限編程的愛好者們也會進(jìn)行預(yù)先設(shè)計。他們會使用CRC卡或類似的東西來檢驗各種不同的想法,然后才得到第一個可被接受的解決方案,然后才開始編碼,然后才能重構(gòu)。關(guān)鍵在于:重構(gòu)改變了“預(yù)先設(shè)計”的角色。如果沒有重構(gòu),就必須保證“預(yù)先設(shè)計”的正確無誤,這個壓力太大了。

什么是CRC卡?
CRC(Class-Responsibility-Collaborator)卡建模是一種簡單且有效的面向?qū)ο蟮姆治黾夹g(shù)。在一個OO(面向?qū)ο?開發(fā)項目中,包括用戶、分析員和開發(fā)者在建模和設(shè)計過程中經(jīng)常應(yīng)用CRC卡建模,使整個開發(fā)團(tuán)隊普遍的理解形成一致。
它由三部分組成:
1. 類(Class)
2. 職責(zé)(Responsibility)
3. 協(xié)作(Collaborator)
一個類代表許多類似的對象。而對象是系統(tǒng)模型化中關(guān)注的事物。他們可以是一個人、地方、事情、或任何對系統(tǒng)有重要性的概念。類名在CRC卡的頂部。
職責(zé)是類需要知道或做的任何事物。這些職責(zé)是類自身所知的知識,或類在執(zhí)行時所知的知識。
協(xié)作是指為獲取消息,或協(xié)助執(zhí)行活動的其他類。在特定情形下,與指定的類按一個設(shè)想共同完成一個(或許多)步驟。協(xié)作的類順著CRC卡的右邊排列。

(上圖出自http://book.csdn.net/bookfiles/116/1001163602.shtml)



在可以重構(gòu)的前提下,你只需要得到一個足夠合理的解決方案就夠了。
如果你在預(yù)先設(shè)計時在所有有可能出現(xiàn)變化的地方都建立起靈活性,卻在最后發(fā)現(xiàn)這些靈活性都毫無必要,這才是最大的失敗。你知道,這其中肯定有些靈活性的確派不上用場,但你卻無法預(yù)測到底哪些派不上用場。
而有了重構(gòu),則只需要考慮:把一個簡單的解決方案重構(gòu)成這個靈活的解決方案有多大難度?如果答案是“相當(dāng)容易”,那么你就只需實現(xiàn)目前的簡單方案就可以了。
重構(gòu)與性能
雖然重構(gòu)必然會使軟件運(yùn)行更慢,但它也使軟件的性能優(yōu)化更易進(jìn)行。除了對性能有嚴(yán)格要求的實時系統(tǒng),其他任

 

何情況下“編寫快速軟件”的秘密就是:首先寫出可調(diào)軟件,然后調(diào)整它以求獲得足夠速度。
編寫快速軟件的方法:
1、時間預(yù)算法。
為每個組件分配資源(包括時間資源和執(zhí)行軌跡);每個組件絕對不能超過自己的預(yù)算,就算擁有“可在不同組件之間調(diào)度預(yù)配時間”的機(jī)制也不行。例如心律調(diào)節(jié)器,在這樣的系統(tǒng)中,遲來的數(shù)據(jù)就是錯誤的數(shù)據(jù)。
2、持續(xù)關(guān)切法。
要求程序員在任何時間做任何事時,都要設(shè)法保持系統(tǒng)的高性能。
這種方式通常不會起太大作用。任何修改如果為了提高性能,通常會使程序難以維護(hù),因而減緩開發(fā)速度。性能一旦被分散到程序各個角落,每次改善都只不過是從“對程序行為的一個狹隘視角”出發(fā)而已。
3、利用90%統(tǒng)計數(shù)據(jù)
90%的優(yōu)化都是白費(fèi)勁,因為難得被執(zhí)行。
所以以一種“良好的分解方式”來建造自己的程序,不對性能投以任何關(guān)切,直至進(jìn)入性能優(yōu)化階段。
優(yōu)化的過程:測量-->優(yōu)化-->編譯-->測試-->再次測量.
使用性能熱點(diǎn)測量工具“發(fā)現(xiàn)熱點(diǎn)、去除熱點(diǎn)”,直到獲得客戶滿意的性能。
McConnell提供了關(guān)于這項技術(shù)的更多信息。

 很想了解相關(guān)技術(shù),但是沒有找到具體資料.倒是有兩個開源項目

p-unit和junitperf
http://www.javapronews.com/javapronews-47-20030721ContinuousPerformanceTestingwithJUnitPerf.html
posted on 2007-06-24 21:35 littlegai 閱讀(331) 評論(0)  編輯 收藏 引用 所屬分類: 我的讀書筆記
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一区二区三区四区国产| 麻豆av一区二区三区| 欧美中文字幕视频在线观看| 亚洲视频一二三| 亚洲女爱视频在线| 欧美专区在线观看| 久久一区二区精品| 欧美激情a∨在线视频播放| 亚洲黄色成人久久久| 久久精品国产2020观看福利| 久久综合伊人77777| 亚洲国产岛国毛片在线| 99riav国产精品| 午夜一区在线| 欧美精品久久天天躁| 国产精品一区二区久久精品| 在线观看一区二区精品视频| 99精品黄色片免费大全| 久久精品国产亚洲精品| 亚洲精品资源美女情侣酒店| 亚洲一区二区免费在线| 久久亚洲一区二区| 国产精品久久久久久一区二区三区| 国产精品一二| avtt综合网| 欧美11—12娇小xxxx| 亚洲视频一区二区免费在线观看| 久久色在线观看| 国产精品综合| 亚洲午夜视频在线| 亚洲动漫精品| 久久久欧美一区二区| 国产精品欧美日韩一区二区| 亚洲三级毛片| 欧美99久久| 欧美综合二区| 国产欧美一区二区三区另类精品| 夜夜夜久久久| 亚洲夫妻自拍| 久久女同精品一区二区| 国产日韩精品一区二区三区| 欧美a级片网| 国产老肥熟一区二区三区| 亚洲精品在线视频观看| 久久综合九色综合网站| 一道本一区二区| 欧美激情一区在线观看| 影音先锋久久久| 久久精品首页| 午夜视频一区二区| 国产九九精品视频| 欧美一区二区三区另类| 中文亚洲字幕| 国产精品羞羞答答| 亚洲欧美国产日韩中文字幕 | 久久九九全国免费精品观看| 99精品99| 欧美日韩视频专区在线播放 | 久久精品视频免费| 亚洲一区二区在线看| 国产精品久久久久秋霞鲁丝| 一本一本久久a久久精品牛牛影视| 欧美成人免费在线观看| 久久理论片午夜琪琪电影网| 黑人一区二区三区四区五区| 久久久欧美一区二区| 久久精品五月婷婷| 狠狠爱www人成狠狠爱综合网| 久久精品一区| 久久五月激情| 亚洲国产免费看| 亚洲高清在线观看| 欧美人与禽性xxxxx杂性| 一区二区电影免费在线观看| 一区二区欧美在线| 国产日产亚洲精品| 嫩草伊人久久精品少妇av杨幂| 免费高清在线视频一区·| 日韩一级片网址| 亚洲一区在线直播| 揄拍成人国产精品视频| 亚洲日本久久| 国产欧美 在线欧美| 欧美a级在线| 欧美视频免费在线| 久久青青草综合| 欧美区日韩区| 久久黄色小说| 欧美成人精品在线观看| 亚洲影视综合| 久久久欧美一区二区| 99国产精品国产精品久久| 亚洲一本视频| 亚洲人成网站在线播| 亚洲一区二区精品| 黄色av日韩| 一本一本久久a久久精品综合麻豆| 国产欧美欧洲在线观看| 亚洲电影中文字幕| 久久本道综合色狠狠五月| 最新精品在线| 亚洲欧美99| 亚洲黄色在线视频| 亚洲欧美日韩天堂一区二区| 亚洲国产影院| 欧美专区一区二区三区| 亚洲一区免费| 欧美精品啪啪| 欧美成年人网| 国产一区二区高清| 亚洲最新视频在线播放| 亚洲黄色影院| 久久在线91| 久久久久久亚洲精品杨幂换脸| 欧美日韩成人| 亚洲国产精品成人综合| 极品中文字幕一区| 亚洲欧美日韩综合| 午夜精品久久久久久久久久久久 | 性欧美1819性猛交| 亚洲午夜国产一区99re久久| 老司机免费视频久久| 久久精彩免费视频| 国产精品亚洲产品| 中文欧美字幕免费| 亚洲主播在线播放| 欧美视频日韩视频在线观看| 亚洲精品久久久久| 亚洲另类在线一区| 久久在线免费观看| 欧美va日韩va| 亚洲国产专区| 久久综合伊人77777麻豆| 狂野欧美激情性xxxx欧美| 国产亚洲精品久久久久久| 亚洲女人av| 久久激五月天综合精品| 国产有码在线一区二区视频| 欧美在线视频在线播放完整版免费观看 | 亚洲一区www| 亚洲欧美日韩一区二区在线 | 欧美亚洲免费高清在线观看| 欧美日产在线观看| 日韩视频在线你懂得| 在线亚洲国产精品网站| 欧美日韩亚洲一区| 亚洲网在线观看| 久久精品国产亚洲一区二区| 精品不卡在线| 模特精品在线| 日韩午夜在线观看视频| 亚洲欧美日韩精品一区二区 | 欧美一级片在线播放| 久久免费视频一区| 嫩草国产精品入口| 亚洲韩国一区二区三区| 在线中文字幕日韩| 国产欧美韩国高清| 久久综合图片| 一区二区久久久久久| 久久se精品一区精品二区| 国内精品福利| 欧美激情亚洲国产| 亚洲一区二区在线观看视频| 久久久综合免费视频| 亚洲欧洲偷拍精品| 国产精品男女猛烈高潮激情| 久久精品亚洲一区二区| 亚洲精品四区| 久久亚洲图片| 一区二区三区免费网站| 国产精品一二三视频| 久久综合一区二区三区| 一区二区三区.www| 巨乳诱惑日韩免费av| 亚洲视频免费| 亚洲高清不卡av| 国产精品你懂得| 蜜臀久久99精品久久久画质超高清| 亚洲精品中文在线| 欧美jizzhd精品欧美喷水| 亚洲欧美乱综合| 亚洲精品日韩在线| 国产亚洲欧美在线| 欧美午夜欧美| 欧美高清视频一二三区| 欧美中文在线免费| 亚洲视频中文字幕| 欧美韩日一区二区| 久久久精品日韩欧美| 亚洲四色影视在线观看| 亚洲国产精品成人精品| 国产日韩欧美在线一区| 欧美性事在线| 欧美日韩另类丝袜其他| 欧美成人高清| 免费黄网站欧美| 久久综合成人精品亚洲另类欧美| 亚洲综合久久久久| 在线一区二区三区四区|