當(dāng)前位置:首頁 > 公眾號精選 > 嵌入式大雜燴
[導(dǎo)讀]這個話題其實我很早之前就想寫一寫了,但是一直抽不開時間,今天終于有時間來聊一聊這個話題,希望能借助我過往研發(fā)產(chǎn)品的經(jīng)驗幫助更多從事嵌入式行業(yè)的朋友們?nèi)腴T。一個新的產(chǎn)品立項了,接下來,就會有UI設(shè)計、結(jié)構(gòu)、硬件、軟件、產(chǎn)品經(jīng)理、項目經(jīng)理、測試工程師等角色來共同完成這個項目,當(dāng)然這是...

這個話題其實我很早之前就想寫一寫了,但是一直抽不開時間,今天終于有時間來聊一聊這個話題,希望能借助我過往研發(fā)產(chǎn)品的經(jīng)驗幫助更多從事嵌入式行業(yè)的朋友們?nèi)腴T。一個新的產(chǎn)品立項了,接下來,就會有UI設(shè)計、結(jié)構(gòu)、硬件、軟件、產(chǎn)品經(jīng)理、項目經(jīng)理、測試工程師等角色來共同完成這個項目,當(dāng)然這是最理想的狀況。但現(xiàn)實的情況可能并沒有這么理想,在小公司里,有可能你一個人就得把大部分的活干了,對于大部分的工程師來說經(jīng)常摸不著頭腦,想了很久卻沒思路,這的確是很讓人難受的事情。筆者作為一名嵌入式軟件工程師,在嵌入式行業(yè)也有將近5年的產(chǎn)品開發(fā)工作經(jīng)驗,從一個什么都不懂的小白摸爬滾打到現(xiàn)在,總算對產(chǎn)品的軟件開發(fā)上有了自己的一點見解,當(dāng)然我并不是大佬,世界那么大,我就只是一個小兵而已。在寫這篇文章之前,我要感謝我曾服務(wù)過的防衛(wèi)等公司給我?guī)淼某砷L。
大學(xué)畢業(yè)以后出來參加工作,我做過很多產(chǎn)品,不單單是代碼設(shè)計同時也負責(zé)了一部分的UI修改和設(shè)計(熟悉Photoshop的設(shè)計和應(yīng)用),我的開源項目上就做了一些簡單的UI設(shè)計;同時我也能從零把一個產(chǎn)品的軟件從頭到尾干出來,那我是怎么培養(yǎng)這種職業(yè)能力的?
1、想象產(chǎn)品的最終是什么樣子的?
如果想做一名富有競爭力的工程師,首先他對行業(yè)信息一定是非常敏感的,市面上對應(yīng)產(chǎn)品有的功能,那我們的產(chǎn)品也得有啊,如果他們沒有的功能我們有,這就叫產(chǎn)品的功能創(chuàng)新,一旦你做出增項的功能出來了,你甚至可以為公司的新產(chǎn)品去申請實用新型專利。這個產(chǎn)品的外觀是怎樣的?是手持式的?是臺式的?還是大型設(shè)備?它有哪些部分構(gòu)成?具備什么樣的功能?等等。當(dāng)我們能夠不斷的去思考,不斷去拓寬自己的知識面的時候,那我們就真正進入了深度學(xué)習(xí)和思考的模式,我們不再是單純的嵌入式軟件開發(fā)工程師,而是嵌入式產(chǎn)品開發(fā)工程師。
2、產(chǎn)品選型的方案
這個產(chǎn)品最終使用什么方案來做開發(fā)?是單片機類的方案?帶RTOS還是裸機?是Linux類的方案?還是Android類的方案?(1)不計較成本,想快速做出產(chǎn)品,不想浪費在各種復(fù)雜的界面調(diào)試上單片機 串口屏 裸機開發(fā)/RTOS開發(fā)優(yōu)點:初入職場的工程師短時間學(xué)習(xí)就能夠輕松駕馭缺點:萬一要是串口屏玻璃沒了,找不到替代品的話,這是個很麻煩的事情(2)計較成本,想GUI框架自己做,規(guī)劃更加自由不受限單片機 普通LCD/OLED(帶觸摸/不帶觸摸) GUI框架 裸機開發(fā)/RTOS開發(fā)優(yōu)點:操作邏輯不受限,自由組合;后續(xù)即使是屏幕缺貨,但UI軟件的框架的思路是自己團隊搞出來的,只要定好了一般不會大動。缺點:調(diào)試起來麻煩,坑比較多,需要有一定經(jīng)驗的工程師才能勝任。(3)功能豐富,拓展性更強,追求高性能的方案Linux、Android,現(xiàn)在有大量的開源軟件和組件,可以滿足我們的各種定制需求,前提是研發(fā)團隊的實力要強才能Hold得住。
優(yōu)點:主流市場玩法雨露均沾,圖像識別、音視頻等等想玩多高大上都行。缺點:涉及驅(qū)動、SDK、各種工具鏈,需要有一定經(jīng)驗的工程師才能勝任。
3、產(chǎn)品軟件的構(gòu)架與功能模塊開發(fā)
這個產(chǎn)品的軟件功能模塊,它符合什么標(biāo)準(zhǔn)?國標(biāo)的要求?行標(biāo)的要求?企標(biāo)的要求?為什么要有這三標(biāo)?因為這三標(biāo)就是給你做產(chǎn)品的時候,你需要仔細去看去讀的東西,這些標(biāo)準(zhǔn)會告訴你,你的產(chǎn)品里至少需要具備的軟件功能,沒有這些東西,難怪你不知道怎么來做產(chǎn)品,如果都告訴你具備這些功能了,在只有大方向的前提下,難道你就不能先實現(xiàn)這些標(biāo)準(zhǔn)上要求的小模塊的功能嗎?比如你就為一個功能實現(xiàn)一個函數(shù)=>調(diào)節(jié)亮度、音量,最后在整體架構(gòu)的時候,再以接口的形式集合進來進一步實現(xiàn)應(yīng)用邏輯。那么有的人就會說了,最后到底要做成什么樣子呢?三個字:多溝通!永遠不要想著一版就成型,因為做產(chǎn)品的過程中不斷重構(gòu)不斷迭代是很頻繁也是很常見的事情。關(guān)于標(biāo)準(zhǔn)化的學(xué)習(xí)可以參考以下文章:談?wù)勛霎a(chǎn)品、做項目以及標(biāo)準(zhǔn)化相關(guān)的話題
拿之前我做的一個基于TencentOS-tiny的開源項目:危險氣體探測儀來說,這個項目在我開源前我就給它制定了相應(yīng)的功能,包括項目的UI、軟件框架、應(yīng)用邏輯等等,最后花了一點時間實現(xiàn)了出來,詳細文章可以看看我之前寫的幾個開源項目,因為它們足夠簡單,也足夠入門了。

表驅(qū)動 狀態(tài)機法AD傳感器驅(qū)動檢測框架
TencentOS tiny危險氣體探測儀產(chǎn)品級開發(fā)
開源作品:基于TencentOS tiny英國達特甲醛探測儀產(chǎn)品級開發(fā)(二)
【騰訊連連IoT開發(fā)大賽】基于TencentOS tiny云打印機
本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
關(guān)閉
關(guān)閉