• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 深度解讀 - TDD(測試驅動開發)(6)

    發表于:2017-03-31來源:jianshu作者:SeabornLee點擊數: 標簽:tdd
    the 4 is 3 sunny 2 day 1 請先不要往下讀,思考一下你會怎么做。 (思考 3 分鐘...) 新手拿到這樣的需求呢,就會把所有代碼寫到一個 main() 方法里,偽代碼如

    the 4
    is 3
    sunny 2
    day 1


    請先不要往下讀,思考一下你會怎么做。
    (思考 3 分鐘...)

    新手拿到這樣的需求呢,就會把所有代碼寫到一個 main() 方法里,偽代碼如下:

    main() {
        // 讀取文件
        ...
        // 分隔單詞
        ...
        // 分組
        ...
        // 倒序排序
        ...
        // 拼接字符串
        ...
        // 打印
        ...
    }

    思路很清晰,但往往一口氣寫完,最后運行起來,輸出卻不符合預期,然后就開始打斷點調試。

    這種代碼沒有任何的封裝。這就是為什么很多人一聽到說有些公司限制一個方法不超過 10 行,就立馬跳出來說,這不可能,10 行能干什么啊,我們的業務邏輯很復雜...
    這樣的代碼存在什么樣的問題呢?

    • 不可測試
    • 不可重用
    • 難以定位問題

    好嘛,那我們來 TDD 嘛,你說讀文件,輸出控制臺的測試代碼要怎么寫?

    原文轉自:http://www.jianshu.com/p/62f16cd4fef3

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>