回覆列表
  • 1 # 夕陽雨晴

    寫程式碼一遍就成功時怎麼一種體驗?第一反應就是不真實。想著太陽從西邊出來了,還是返回邏輯給短路了。那些年寫的程式碼,不斷自測下,bug 都層出不窮,一遍就成功的很少。當然,有些程式碼肯定會一遍透過,除非是你剛接觸程式設計。最典型的就是廣泛傳播的“Hello World”,有一定的程式設計基礎,這個程式碼肯定會一次透過,C 語言的執行結果除此之外,還多了一句“0 warning(s), 0 error(s)”。這些程式碼中的難忘記憶,是否引起的你的共鳴呢?

    寫程式碼,問題總是不可避免的,一遍就成功的可能有,但就個人的經驗來說,還是比較少的,尤其是我們一些線上維護的專案,由於種種原因,本地無法執行,在預發環境部署後,才能看到執行的效果。在本地修改程式碼,改了一段有一段,偶爾還會寫寫單元測試,一些典型的工具類方法,還是透過 Main 方法重點自測,模擬各種邊界測試資料來看是否達到效果。但是如果需求緊急時,或者構造測試資料比較困難時,就會選擇直接在預發環境進行測試,跳過單元測試流程。往往是一個需求程式碼 git push 了5次以上,才能完成達到提測要求的程式碼程式。除此之外,有時再預發環境自測中出現問題,還需要增加一些歷史程式碼的日誌列印來方便排查問題,在各個呼叫方法加日誌之後,又是一系列的 git push 。

    透過預發環境來自測,是特殊情況下的無奈選擇,有可能的話,還是建議自己在本地搭建起自己環境,有較為完整的測試資料,這樣開發新需求時,就比較容易,可以比較直觀的斷點除錯看到每個步驟的執行結果。同時,在改程式碼前,需要對自己編寫的程式碼以及達到的效果有一個較為清晰的評估,該如何顯示的進行自測和測試,該怎麼描述修改內容以及評估影響範圍等,都需要有一個較為完整的思路,來避免本次需求對其他模組的影響,有利於線上業務的穩定。

    寫程式碼一遍就成功是一種理想情況,但規範的程式碼風格有利於你朝著這個方面邁進,雖不能至,然心嚮往之。增加 Sonar 等程式碼規範掃描工具的使用,有助於避免一些容易被忽略的問題,比如空指標。良好的程式碼習慣,讓我們在寫程式碼時更順手,當然,在預發環境部署自測的方式久而久之也會讓我自覺的去走查自己寫的程式碼,避擴音交低級別的問題,耗費預發環境部署的時間,但這種代價太大,在一些特殊的場景下用可能會好一些。

  • 2 # 遊戲人生lqj2

    錯覺,錯覺……這肯定是錯覺,這不科學啊……

    別人是什麼感覺我不知道,但是我第一個感覺就是這樣的……

    我本人是從來沒有一次性編寫成功的,不管多麼簡單的,總沒有過一次性過的。一遍成功,零錯誤,零警告,完全不敢奢望哈。

    真如果有那麼一次的話,我估計也不會放心哈,總會心裡慌慌的,不測點問題出來,總會覺得不對勁。

    要做到一氣呵成,這個非常困難,連大神級別的都不敢強求,可遇不可求。

    其實,個人建議還是不要過分地去追求什麼一次性編譯透過,完全沒有bug的境界;不然就辜負了除錯的功能哈!!!

    程式設計師應該越來越注重追求IDEA。

  • 中秋節和大豐收的關聯?
  • 海蠣子和生蠔一樣嗎?如果不一樣,兩者有何區別呢?