嵌入式軟體開發水平提高的建議

嵌入式小美老師 發佈 2024-03-02T23:10:00.672047+00:00

有的老年人做飯一輩子,可是燒菜的水平還是有限;學習開原始碼,閱讀優秀書籍,都能提高開發技能和思維邏輯,也許短期無法見效,但看多了會逐漸產生影響,等到工作中遇到問題時,回憶起某個似曾相識的技術點或者解決方案,會有一種頓悟的感覺。

有的老年人做飯一輩子,可是燒菜的水平還是有限;一些烹飪技校或者酒店的學徒,幾年時間後做出的飯菜明顯高於一般家庭主婦。能吃飽和兼具色香味俱全,存在很大的差距。軟體開發,能調用庫實現功能,和高效穩定的軟體開發,也存在著一定距離。那如何更有效提高編程能力?本文只是拋磚引玉的小建議,因為作者實力也有限。

1、閱讀

讀書破萬卷,下筆如有神,多閱讀開闊視野,博採眾長。

軟體技術日新月異,但嵌入式軟體開發的基礎不變。學習開原始碼,閱讀優秀書籍,都能提高開發技能和思維邏輯,也許短期無法見效,但看多了會逐漸產生影響,等到工作中遇到問題時,回憶起某個似曾相識的技術點或者解決方案,會有一種頓悟的感覺。

關於開原始碼很多,學習一些和自己工作相關的,比如物聯網可以看mebdtls、lwip,fatfs等源碼。書籍方面設計模式、作業系統相關的開發理論等,不要盲目選別人推薦的經典書籍,結合自己當前的水平,是需要入門級的,還是提高級的。隨著知識體系的完善,自己也會明白需要哪方面的書籍再充實。

見多識廣才能打開眼界,遇到問題才能遊刃有餘。可以推薦幾篇文章《基於RTOS的軟體開發理論》、《mbedtls 基礎及其應用》、《高質量嵌入式軟體的開發技巧》

2、思考

軟體編譯過了,功能也正常,有沒辦法重構,使其更易於擴展、閱讀、移植呢?

編碼好比如寫字排版,一篇好文章主要在於內涵,對於軟體能運行還算完美。結合前面閱讀、學習他人的長處,比如設計模式或解決方案,異常或風險規避;多思考,精益求精才能提高軟體質量,思考的結果就是代碼重構。

正如引言提到,飯菜不能僅停留在能吃,這樣的軟體開發人員,即使工作年限再長,也只是簡單的經驗重複使用。思考和重構,才能在總結中提高能力。

嵌入式產品一般都是長期疊代,一個產品線的功能在演進中各種互相衝突的功能,奇特需求不斷合入,功能增加或刪除,導致當初的軟體架構越難理解維護。大多數情況下程序能運行是不會輕易調整量產項目的,重構就是針對看起來能用,但維護困難的代碼進行整理,根據新的發展需求進行調整;實際工作中,重構機會非常少。

舊版本開發時無法預知後來疊代的需求,重構時可以從全局著手整理框架,這時候設計模式、代碼隔離解耦等理論功底就有機會展現,所以重構是提高能力最佳方式之一。如果不能從整體入手,局部功能,或者自己早年的舊代碼,也是可重構的對象;如果對幾年前的代碼沒法提出修改建議,說明當初水平就很高,或者這麼多年水平沒有進步。

推薦文章 《嵌入式軟體分層隔離的典範》、《嵌入式軟體的設計模式(上)》、《嵌入式軟體的設計模式(下)》。

3、分享

閱讀輸入,思考處理,還得分享輸出。

工作中遇到問題,一般就是搜索論壇或者原廠資料庫,或者請教其他人。問題解決了,也許以後還會遇到或者其他人遇到了尋求解決方案,如果事前將解決過程記錄,翻閱以前的筆記即可快速解決。

筆記務必要分門別類,帶上問題的關鍵詞,否則後面查找也是大海撈針,還不如百度。工作上的細節問題可以使用在線筆記,一些抽象的經驗總結可以寫寫微信公眾號,方便志同道合的網友。分享交流,既能方便後續追溯回憶,也能在交流討論中取長補短提高技能。

嵌入式物聯網需要學的東西真的非常多,千萬不要學錯了路線和內容,導致工資要不上去!

無償分享大家一個資料包,差不多150多G。裡面學習內容、面經、項目都比較新也比較全!某魚上買估計至少要好幾十。

點擊這裡找小助理0元領取:加微信領取資料


4、小節

編程方式也會隨著時代的前行而不斷進步,當有人嘲笑自動炒菜機時,卻忽略了它的進化與高效;軟體開發已經從高大上的工程師文化,逐漸普及到複製粘貼的搬磚人生活。如果不能在專業深度上提高技能,又怎麼和ChatGPT爭高下?

所以,總有新的東西需要學習,總有一些內容值得溫故而知新。思想有多遠,我們才能走多遠。

PS

問:如何提高嵌入式軟體的開發水平?

ChatGPT答嵌入式軟體是一種應用廣泛的軟體類型,其在各種嵌入式系統和設備中發揮著重要作用。為了提高嵌入式軟體的開發水平,開發者需要掌握以下幾個方面的技能:

1、掌握底層硬體知識:嵌入式軟體的開發需要對底層硬體有深入的了解,包括處理器、內存、外設等。因此,開發者需要掌握硬體架構、寄存器的使用方法等相關知識,以便能夠更好地與硬體交互。

2、熟練掌握程式語言:開發者需要掌握一門或多門程式語言,如C語言、彙編語言等,以便能夠更好地編寫嵌入式軟體。

3、熟悉嵌入式開發工具:開發者需要熟悉嵌入式開發工具,如編譯器、調試器、仿真器等,以便能夠更好地調試和測試嵌入式軟體。

4、掌握作業系統的使用:嵌入式系統中常常使用實時作業系統來協調各個任務的執行,因此,開發者需要熟悉RTOS的使用方法和原理,以便能夠更好地編寫多任務嵌入式軟體。

5、注重代碼質量和可維護性:開發者需要注重代碼的質量和可維護性,採用良好的編碼規範和注釋,以便後期的維護和修改。

6、不斷學習和實踐:嵌入式軟體開發是一門複雜的技術,需要不斷地學習和實踐,掌握新的技術和方法,以便能夠不斷提高開發水平。

總之,提高嵌入式軟體的開發水平需要不斷地學習和實踐,熟悉底層硬體知識、掌握程式語言和嵌入式開發工具,熟悉RTOS的使用方法和原理,注重代碼質量和可維護性,這樣才能編寫出高質量的嵌入式軟體。

思考和總結才能提高技能不被淘汰,更多信息請關注微信公眾號



轉載自:嵌入式系統

文章來源於嵌入式軟體開發水平提高的建議

原文連結:https://mp.weixin.qq.com/s/-0K_MoIryIUECkgWrdZ73A

關鍵字: