軟件開(kāi)發(fā) 從事嵌入式底層軟件設(shè)計(jì)工作需要學(xué)習(xí)哪些?如何做好軟件設(shè)計(jì)?
從事嵌入式底層軟件設(shè)計(jì)工作需要學(xué)習(xí)哪些?如何做好軟件設(shè)計(jì)?事實(shí)上,嵌入式系統(tǒng)非常廣泛,包括裸機(jī)、RTOS(有幾個(gè)系統(tǒng),但它們是相似的)和Linux。在開(kāi)發(fā)語(yǔ)言方面,C仍然是主流,C也是。如何做好軟件設(shè)
從事嵌入式底層軟件設(shè)計(jì)工作需要學(xué)習(xí)哪些?如何做好軟件設(shè)計(jì)?
事實(shí)上,嵌入式系統(tǒng)非常廣泛,包括裸機(jī)、RTOS(有幾個(gè)系統(tǒng),但它們是相似的)和Linux。在開(kāi)發(fā)語(yǔ)言方面,C仍然是主流,C也是。如何做好軟件設(shè)計(jì),關(guān)鍵取決于個(gè)人的邏輯思維能力,以及程序的組織結(jié)構(gòu)??峙履愕倪壿嬎季S能力與你的教育背景有很大關(guān)系。對(duì)于相同的功能,不同的人會(huì)有不同的認(rèn)識(shí)。雖然可以工作,但有些人的代碼亂七八糟,沒(méi)有規(guī)則來(lái)定義,反正很難維護(hù);有些人的代碼干凈整潔,一目了然。
在我看來(lái),功能的實(shí)現(xiàn)只是最基本的要求。如何實(shí)現(xiàn)代碼的簡(jiǎn)化、整潔、高效和邏輯清晰是一個(gè)難點(diǎn),需要不斷的個(gè)人總結(jié)和改進(jìn)。
如何開(kāi)始學(xué)習(xí)嵌入式開(kāi)發(fā)?
嵌入式系統(tǒng)開(kāi)發(fā)主要包括但不限于:操作系統(tǒng)(Linux、FreeRTOS、UC/OS等)、協(xié)議(通信協(xié)議、接口協(xié)議、數(shù)據(jù)協(xié)議、文件格式等)、庫(kù)資源(Dlib、GTK、OpenGL、opencv等)、資源分配(存儲(chǔ)空間、運(yùn)行空間、GPIO等)、硬件IP(LCD、攝像頭、傳感器等)、工程技能(編譯、鏈接、仿真、腳本、工具等)。
如何學(xué)習(xí)它們?我建議:
1。參加培訓(xùn)班或自學(xué)培訓(xùn)課程。優(yōu)點(diǎn)是系統(tǒng)學(xué)習(xí),有很多知識(shí)點(diǎn),什么都有。缺點(diǎn)是有點(diǎn)吸引人眼球,可能需要一點(diǎn)研究經(jīng)費(fèi)。
2. 跟隨網(wǎng)絡(luò)大V,學(xué)習(xí)知識(shí)和經(jīng)驗(yàn)。在自媒體時(shí)代,許多人在網(wǎng)上分享技術(shù)和經(jīng)驗(yàn)。這樣做的好處是,你可以隨時(shí)隨地學(xué)習(xí),你很可能會(huì)遇到頓悟,這讓你欣喜若狂。缺點(diǎn)是不夠系統(tǒng),內(nèi)容由他人決定。
3. 學(xué)習(xí)編程語(yǔ)言(如C語(yǔ)言)并在嵌入式產(chǎn)品開(kāi)發(fā)公司工作。優(yōu)點(diǎn)是你可以自己動(dòng)手,現(xiàn)在就學(xué)會(huì)用,有機(jī)會(huì)得到前輩的教誨。缺點(diǎn)是不容易進(jìn)入系統(tǒng)部門(mén)。即使你這么做了,也很可能是個(gè)螺絲釘。畢竟,分工是好的。
無(wú)論是哪種方式,都需要不斷的學(xué)習(xí)、實(shí)踐、總結(jié)和學(xué)習(xí)。這是一場(chǎng)持久戰(zhàn)。質(zhì)變需要量變積累。
謝謝。