• <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>

            Zero Lee的專欄

            建造原型的代價

            ???編寫原型也是編寫代碼。原型具有與編寫代碼相同的慣性和成本,但是缺乏真正的軟件產品所要求的可靠性、穩定性。軟件的原型類似于建筑工程中的腳手架,而真正的軟件和石墻類似,具有永久、可維護、可擴展的特性。經理們不愿舍棄能夠工作的代碼,即便是原型代碼。他們說不出腳手架和石墻的區別。
            ???編寫原型要比編寫真正的程序快得多。編寫原型的費用很低,因而極具吸引力。但是只有通過真正的程序才能建造可靠的產品,而原型是脆弱的平臺。原型是應該拋棄的實驗程序,但是實際上很少如此。經理們查看原型后會問:“我們不能將它用于產品嗎?”對于程序員來說,通俗的回答是很困難的。經理們奢望通過使用原型來節約數以月計的編程時間。
            ???良好編程的精髓在于后期的滿足感。先期辛勤工作,后期收獲。多數手工工作都非常昂貴。而程序一旦編寫完畢,就可以運行百萬次而不需要額外成本。最昂貴的程序是只運行一次的程序,最便宜的程序是運行百萬次的程序。但是,便宜程序中的任何問題也會出現百億次。軟件的經濟原理讓多數人感到陌生:最便宜程序的編寫成本最為昂貴,最昂貴程序的編寫成本最為低廉。
            ???編寫大的程序有些像堆砌一疊磚塊。將1000塊疊放起來,需要及其精確的放置每一塊磚。如果第998塊磚偏移了1/4英寸,將余下的兩快擺上去不會有什么問題。但是如果第5塊就沒有擺好,擺放10塊以上的磚幾乎不可能的。
            ???軟件也具有這樣的特性。對于軟件基礎部分的變動要比對上面部分的變動敏感得多。現實當中,多數程序員起始于錯誤的起點,隨著進程而不斷修正行進路線。因而,程序充滿著修改過的痕跡。很多功能需求是在編程開始之后才發現的。這些功能被強行加入到程序中。程序修改的痕跡與疊放磚塊的偏移類似。將一個按牛從對話框的一側移到另一側,就像搖晃一下第998塊磚,但是修改描述所有按鈕的代碼,就像搖晃第5塊磚。面向對象編程技術和封裝技術是專門讓程序免于修改傷痕的防范技巧。但是確切地說,面向對象技術只是將1000塊磚分割成10組100塊磚,不是根本的解決之道。
            ???水平高的程序員在編寫大程序之前,花費很多時間和精力做準備工作。單配置編程環境就需要幾天的時間。還需要選擇合適的程序庫,定義數據項。還必須對存儲恢復系統作出分析,對其進行定義、編碼和測試。
            ???隨著編程工作的展開,程序員們必然會發現計劃中的錯誤、假設中的缺陷。他們面臨兩個選擇,或者從頭再來,或者對程序中有問題的部分打補丁,引入新的“傷痕”。選擇前者的成本非常高,不過選擇后者,“傷痕”將限制程序的規模——疊加磚塊的高度。

            posted on 2006-12-22 10:55 Zero Lee 閱讀(582) 評論(2)  編輯 收藏 引用 所屬分類: Experience and Thought

            評論

            # re: 建造原型的代價 2006-12-22 12:19 pengkuny

            長見識了,疊磚論精辟!  回復  更多評論   

            # re: 建造原型的代價 2006-12-22 14:17 LOGOS

            [quote]面向對象技術只是將1000塊磚分割成10組100塊磚,不是根本的解決之道[/quote]
            有理。
            原型代碼確實是為了扔掉而扔掉的。  回復  更多評論   

            亚洲国产成人久久综合碰| 亚洲人成网站999久久久综合| 久久综合九色综合久99| 久久国产AVJUST麻豆| 国产呻吟久久久久久久92| 18禁黄久久久AAA片| 久久99国产精品久久99小说| 中文字幕无码精品亚洲资源网久久 | 久久人做人爽一区二区三区| 97精品国产97久久久久久免费| 久久伊人中文无码| 色综合久久中文字幕无码| 亚洲午夜精品久久久久久app| 天天躁日日躁狠狠久久| 精品免费久久久久国产一区| 久久综合综合久久97色| 无码AV波多野结衣久久| Xx性欧美肥妇精品久久久久久| 久久精品国产日本波多野结衣| 久久免费精品视频| 久久久久久久久无码精品亚洲日韩| 精品久久久久久久久免费影院| 91久久香蕉国产熟女线看| 久久精品国产一区二区三区| 久久久久久国产精品美女| 久久精品国产亚洲AV无码娇色| 一级做a爰片久久毛片毛片| 国产精品欧美亚洲韩国日本久久 | 亚洲国产成人精品久久久国产成人一区二区三区综 | 亚洲精品午夜国产VA久久成人| 亚洲精品无码成人片久久| 污污内射久久一区二区欧美日韩| 成人精品一区二区久久久| 久久久久免费看成人影片| 久久精品国产黑森林| 久久精品99无色码中文字幕| 精品国产91久久久久久久| 亚洲精品NV久久久久久久久久 | 久久精品国产99久久久| 日韩精品久久久久久免费| 91久久精品电影|