對于網站建設公司來說,每個行業(yè)都有他們的最佳實踐和罪惡實踐。大罪是許多人都知道的做法,但這些做法太誘人或太容易陷入其中。嵌入式開發(fā)行業(yè)有許多這樣的大罪,但是有七個特別的罪似乎已經在整個行業(yè)中存在了幾十年。
從零開始
深入到硬件的最深層次,并通過軟件在現實世界中創(chuàng)造一些東西,這既有趣又令人興奮。 嵌入式軟件工程師希望開發(fā)與軟件相關的一切,從最底層開始,一直到應用程序代碼。 做所有事情并從頭開始的問題在于它既費時又昂貴,但這是第一本能,而且通常堅持從頭開始。 嵌入式系統已經變得太復雜,開發(fā)時間太短,以至于普通項目無法從頭開始。 應該利用供應商代碼、第 3 方組件、開源和其他標準來完成工作。 既然有如此多的商業(yè)可用和經過測試的替代品,為什么還要開發(fā)自己的 RTOS?
不跟蹤指標
未能跟蹤開發(fā)指標似乎是一個小罪,但指標是嵌入式軟件工程不可或缺的一部分。 指標不僅提供了一種跟蹤進度和問題的方法,還提供了一種估計方法。 工程師經常被問到,“它會持續(xù)多久?” 或“要花多少錢?”。時間和成本問題應該基于經驗數據,而不是與工程師當時的樂觀程度有關的即興發(fā)揮。如果沒有基本的度量跟蹤來確定微控制器需要多少閃存空間是極其困難的。如果沒有跟蹤,工程師如何知道典型的數字輸入/輸出或 UART 驅動程序占用了多少 RAM/ROM?
不適合工作的工具
奇怪的是,當嵌入式開發(fā)人員需要軟件工具來完成他們的工作時,像lint工具這樣的基本工具被拒絕,因為它們的價格只有幾千美元。簡單地看一下軟件工具的投資回報率與工程師每年的花費相比,應該可以看出軟件工具可以更快更高質量地完成工作。
黑客而不是設計
在過去十年左右的時間里,成為一名黑客甚至是一名創(chuàng)造者的概念或想法已經被社會浪漫化了。社會已經接受了這個概念,即軟件工程師應該是一個流氓黑客,不需要什么設計或深謀遠慮,就能在很短的時間內創(chuàng)造出一個革命性的“完整的”產品。事實是嵌入式軟件工程不是一門黑客學科。嵌入式開發(fā)人員需要深謀遠慮和設計才能真正成功。最常犯的錯誤之一是沒有藍圖、設計或流程圖的瘋狂dash代碼編寫,它恰好在最簡單的測試案例和條件下工作,并被認為值得發(fā)布,因為它是“功能性的”。實現和測試應該遵循設計和架構。
工作時間太長
當最后期限即將到來,而又沒有額外的人手時,會發(fā)生什么呢?嵌入式開發(fā)人員加班加點。工作時間過長是嵌入式軟件工程師的一個普遍問題。固件主宰著世界,但現在沒有足夠的固件工程師來生產社會需要的所有設備。更糟糕的是,社會對這些設備的需求速度越來越慢??偸怯幸环N需要昨天完成的軟件的沖動。然而工作太長時間肯定會累垮。而不是加速發(fā)貨,發(fā)貨只會延遲。不要陷入持續(xù)超時的陷阱。一個新鮮的頭腦比一個疲憊不堪、精疲力竭的頭腦工作起來要快得多,效率高得多。
缺乏繼續(xù)教育
處理器中的晶體管數量每兩年翻一番。嵌入式軟件工程師使用和開發(fā)的功能和技術確實在以指數速度變化。盡管行業(yè)變化迅速,但許多公司并不計劃或鼓勵他們的工程師參加會議或培訓。缺乏繼續(xù)教育的部分原因似乎是由于設計周期時間表和壓力。有太多的事情要做,一家公司不能讓他們的工程師或成本在幾天內不工作。公司真正應該問的問題是,在沒有最新開發(fā)技術和知識的情況下,他們是否有能力雇傭工程師。
未能遵循最佳實踐
MISRA-C、CERT-C和許多其他行業(yè)標準包含了可數的嵌入式開發(fā)人員的知識和智慧。經驗豐富的工程師們在那里做過,不僅從他們自己的錯誤中學習,也從其他人的錯誤中學習,開發(fā)了這樣的標準。然而,由于時間限制、截止日期壓力或其他障礙,許多開發(fā)人員忽略了嵌入式軟件的最佳實踐。
結論
各行各業(yè)都存在大罪。最佳實踐通常旨在幫助防止它們,或者至少鼓勵正確的行為。當最后期限臨近,壓力增大時,陷入這七宗罪的誘惑幾乎是無法抗拒的。每個嵌入式開發(fā)人員和公司都曾在某種程度上成為他們的犧牲品。真正關心的是多久一次,做什么才能回到正軌。
廣州天河區(qū)珠江新城富力盈力大廈北塔2706
020-38013166(網站咨詢專線)
400-001-5281 (售后服務熱線)
深圳市坂田十二橡樹莊園F1-7棟
Site/ http://www.szciya.com
E-mail/ itciya@vip.163.com
品牌服務專線:400-001-5281
長沙市天心區(qū)芙蓉中路三段398號新時空大廈5樓
聯系電話/ (+86 0731)88282200
品牌服務專線/ 400-966-8830
旗下運營網站:
Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權利。 粵ICP備09033321號