高度成功的程式設計師必備的7個習慣

2021-10-21 18:41:05 字數 1690 閱讀 1785

我的一位女性朋友想要**,一段時間之後她說「運動是很難的」。好吧,其實運動並不是很難,而是很乏味,又很容易避免。鍛鍊本身很簡單,但經常做才是難點。事實證明,軟體測試在很多方面與運動類似——它很乏味,容易跳過,容易產生「暴飲暴食」行為,而且最好是持續小量地進行。當然,在生產高質量軟體方面,它也是非常有價值的,也是非常有效的。

當我們進入2023年,發現我們是否能成功地遵守新年決議時,讓我們更主動地養成軟體測試的習慣吧?我最近參加了乙個關於這個問題的網路研討會,我們發現其中的很多樂趣,如果你錯過了它,這篇文章應該能提供最重要的收穫。

定期進行的運動效果最好,即使量很輕微。每天10分鐘的運動就比每週一次的2小時運動要好。那如果你想一次做完呢?想象一下,如果你的目標是每週鍛鍊兩次,每次30分鐘,那麼全年共約50小時。你會等到12月的最後一周,連續5天每天去健身房鍛鍊10小時嗎?這聽起來很可笑,但奇怪的是,這就是全國乃至全世界的組織中軟體開發人員和測試人員所採取的方法。

沒有維護的測試套件會變得嘈雜而無用,最終變得更加沒有維護好。靜態分析作為測試工具被錯誤地部署,提供了乙個相當糟糕的雜訊值比,最終將大部分被忽略。其他核心實踐也是如此,它們應該是你常規**練習習慣的一部分。無論你在開發什麼樣的**,無論是企業it、嵌入式、物聯網、醫療、汽車還是航空航天,這些有助於提高我們的軟體安全、質量和可靠性的習慣都很重要。這些習慣性部署的最佳實踐,已經在所有行業的成功開發者中反覆證明了自己。

讓第二組或第三組旁人視角檢視你的**,可以有效地幫助發現嚴重的問題,在它們到達使用者手中之前。為了讓這種做法成為你的日常工作的一部分,請確保你不要做得太過火。不要試圖審查整個**庫,只審查與乙個功能或修復相關的變化。依靠靜態分析來完成風格、最佳實踐和合規執行等繁瑣的工作。

獲取乙個良好的預防規則集,你可以直接與過去的問題和未來想要避免的問題聯絡起來。不要只在qa中執行,確保它在開發人員的桌面上,在那裡他們可以得到早期通知並可以修復問題。任何合規性問題,比如功能安全,都應該是你靜態分析配置的一部分。

邊走邊寫單元測試——每個檔案寫乙個單元測試,或者每個變化寫乙個單元測試。一邊寫**一邊寫單元測試會更快,因為你已經知道**應該做什麼。讓它們變得健壯,這樣如果轉移到另一台機器上或在另一天執行,它們就不會崩潰。

你執行測試的頻率越低,噪音(干擾因素)就越大——這是熱力學第二定律在起作用。每次釋放時,要真正努力慢慢地修剪噪音。沒有人有時間一次做完,所以這次釋放要比上次好一點就可以了。

除了建立新的單元測試,還要通過測量你的覆蓋率來確保你測試的**量在增加。努力讓這個數字逐步上公升——也許這個版本只是比上乙個版本好5%。讓這個數字上公升的方法是利用先進的測試技術,如服務虛擬化,使你能夠測試複雜的系統。

你不能管理你沒有測量的東西。你怎麼知道事情是在變好還是在變壞?從你的開發活動中收集資料,比如檢查、發現的bug、靜態分析違規、覆蓋率等。在第一關,只需收集它。在幾次發布之後,你就能看到這些資料是上公升還是下降了。

在發布之後,花點時間來回顧一下它的情況。90天後,你對最初的質量有乙個很好的了解,可以做出一些評估。哪些地方出了問題?以後如何避免這樣的事情發生?利用靜態分析,針對具體問題進行預防。

當改進你的軟體測試實踐時,請記住堅持最初的決定是多麼困難。我們都需要改進,但不要貪多嚼不爛。弄清楚從**開始,一次只解決一件事。少即是多——建立小而一致的習慣,以獲得最大的影響。

成功程式設計師的8個習慣

對成功的渴望或許是我們與生俱來寫在基因裡的一部分。成功會讓人幸福,並且幾乎每個人都在爭取幸福。當我們感到幸福的時候,我們大腦中的化學物質會迸發積極的情感,激勵我們獲取更多的成功。成功的職業生涯通常是指規定時間內,發布高質量且被認可的工作。這對於it開發人員也沒什麼不同。成功的開發人員能在預估範圍內編...

成為高效程式設計師的7個重要習慣

有自己的編寫風格 我童年時的鋼琴教師是這麼評價我和我姐姐哥哥的 你姐姐的時間感強,你哥哥的鍵盤打得不錯。然後他停頓了一下說 你嘛,嗯,你很努力。程式設計是一種有些人能做有些人不能做的事,但還有一些人則是天才。雖然我有過多年的練習,鋼琴還是彈不好 雖然我那麼喜歡打球,水平仍然一般般。但我確實認為我有程...

優秀程式設計師所具備的7個好習慣

除了必需的技術技能和邏輯能力,下面講一下乙個團隊應該具備怎樣的好習慣 遲到對於任何一家公司都是個頭痛的問題。作為乙個程式設計師,有時候為了完成任務常常不得不熬夜,從而導致第二天上班就遲到了。但是我們忽略了這一點,我們的工作時間至關重要,因為在這段時間裡我們要和客戶同步,也要與團隊其他成員一齊協作。僅...