對于嵌入式軟件開發人員和團隊來說,有許多好習慣可以幫助你開發更快、更可靠的固件。這里有一些關于你可能要考慮的習慣。
習慣1——持續教育
嵌入式軟件開發人員在一個廣闊且發展迅速的領域工作。當然,在更大的軟件行業中,我們經常抵制變化并滯后變化。然而,這并不能改變硬件和軟件技術不斷變化的事實。嵌入式開發人員很容易在這個行業找到一份工作,然后在接下來的四十年里遵循同樣的流程,使用同樣的技術。但是,如果你這樣做了,你會發現成功和跟上競爭的步伐會更加困難。事實上,你可能會落后太多,以至于幾乎不可能找到工作!
要養成的一個關鍵習慣是持續的教育。作為工程師、開發人員和經理,知識是我們最大的財富。開發者和公司經常被動地看待教育。出現了問題,解決方案是培訓。持續教育是一種積極主動的方法,在任何問題出現之前讓團隊保持最新狀態,并有望防止問題出現!
習慣2——代碼審查
防止軟件中出現錯誤的最好方法之一是執行代碼審查。鑒于開發周期如此繁忙,團隊跳過代碼評審并不罕見。然而,利用今天的技術和工具,擁有一個定義良好的代碼審查過程來幫助你提高固件是非常可靠的事情。
你的代碼審查習慣也不必過于復雜。例如,包含代碼審查的最佳位置之一是在合并請求期間。你已經準備好代碼,可以在合并請求時與你的開發分支集成。你可以設置你的工具,以便合并請求需要批準。你的審批流程應該包括哪些內容?代碼審查!
每當執行代碼審查時,將它限制在一次少于500行代碼是一個好主意。你審查的代碼越多,會話時間越長,你發現的錯誤就越少。這意味著你需要養成經常承諾和合并的習慣。同樣,這些是當今的行業規范,但也是需要養成的好習慣。
習慣3——自動化開發
為了更快、更可靠地開發固件,你必須盡可能地自動化開發。手動流程緩慢且容易出錯,你曾經有過需要200個測試用例的手工測試過程嗎?一旦你完成了,代碼的改變需要你重新運行它們,這是一個噩夢,導致抽查系統工作正常,但錯誤卻偷偷忽略了。自動化是關鍵。
你可能想知道自動化開發到底是怎樣一種習慣。這看起來更像是一項任務。你需要養成的習慣是問你自己你正在做的事情是否能夠并且應該自動化。例如,如果你發現自己手動運行單元測試、系統測試、分析軟件、開發文檔等等,你應該問自己什么可以自動化。你如何改進這個過程,使它變得更好?你如何更高效地工作?
一種可以幫助你養成這種習慣的現代技術是采用持續集成和部署(CI/CD)。CI/CD鼓勵你盡可能自動化構建和部署過程。你會發現對代碼風格一致性、靜態分析、度量、測試等等的手動檢查都是自動化的。自動化減輕了開發人員的工作量,幫助他們專注于重要的事情,而不是瑣碎的重復任務。
很容易讓你自己和你的團隊將來會養成自動化的習慣。即將到來的截止日期太重要了,所以你現在要做這樣的事情,然后,你會正確地去做。從一開始就養成用正確的方式做事的習慣。自動化你的開發,你可以比你想象的更快更可靠地開發固件。
結論
我們剛剛探索了一些潛在的習慣,以幫助你更快、更可靠地開發固件。你需要建立的確切習慣,也許還有你需要去除的習慣,都是高度個性化的。微小的調整和過程修正可以幫助確保你不會重復過去的錯誤,并確保來年取得成功。
為了開發更快、更可靠的固件,你還必須改變或增加哪些習慣?