為可重用軟件模塊創(chuàng)建一致且適當?shù)?a target="_blank">接口是嵌入式軟件設計中最關鍵和最受忽視的方面之一。接口通常是在飛行中開發(fā)的,幾乎沒有預見到。但是為了確保軟件可以從一個應用程序輕松地用于下一個應用程序,每個開發(fā)人員都應該記住五個提示。
提示1 -從一個必需的列表開始操作
在開始為軟件模塊編寫接口之前,開發(fā)人員應該花一些時間寫出接口需要執(zhí)行的簡單操作列表。該列表充當開發(fā)人員的便箋簿,以便思考接口需要做什么。模塊的操作是什么?它需要什么輸入?它將產(chǎn)生什么輸出?所有這三個問題都需要回答。列表和問題將作為設計界面的起點。
技巧#2 -使用UML類圖
UML類圖用于表示類,但也可用于表示模塊更重要的是,模塊接口。類圖的基本組件是由三個部分組成的框。第一部分(頂部)包含模塊的名稱。第二部分(中間)包含模塊的屬性。第三個也是最后一個部分用于定義接口公開的操作和方法。
模塊的屬性可以被認為是接口操作將要操作的私有和公共變量。屬性前面的加號表示它是公共的,并直接作為界面的一部分公開。減號表示該屬性是私有的,只能通過使用界面公開的操作在幕后進行操作。將這些操作視為提示#1中列出的相同操作。圖1顯示了左側通用模塊定義的示例和EEPROM模塊的簡化接口。
圖1 - 示例類/模塊圖
技巧#3 -將接口與實現(xiàn)分開
當開始開發(fā)模塊的接口時,開發(fā)人員應該盡一切可能將接口與模塊的實現(xiàn)分開。接口的面向公眾的部分的詳細信息都應該包含在頭文件中,在這種情況下,頭文件定義了模塊的接口。實現(xiàn)細節(jié)應保存在源文件中。將實現(xiàn)細節(jié)與接口分開,開始為開發(fā)人員提供隱藏實現(xiàn)的能力。這種隱藏導致了模塊類的抽象,并提供了以后重新定義實現(xiàn)而不影響接口的能力。
技巧#4 -使用抽象數(shù)據(jù)類型
要求總是改變并預測要求如何變化通常是徒勞的,即使一個人配備了水晶球。抽象數(shù)據(jù)類型旨在幫助開發(fā)人員處理不斷變化的需求。例如,在頭文件中定義為接口的一部分的數(shù)據(jù)結構。引用頭文件的任何模塊都能夠基于該數(shù)據(jù)結構創(chuàng)建和修改數(shù)據(jù)。當需求發(fā)生變化并且數(shù)據(jù)結構發(fā)生變化時,結果是需要為使用頭文件的任何文件提供更新。
如果開發(fā)人員創(chuàng)建了一個抽象數(shù)據(jù)類型,其中數(shù)據(jù)結構的詳細信息隱藏在實現(xiàn)中,則只需要更新源文件實現(xiàn)。使用頭文件的任何模塊都將繼續(xù)使用公共接口,底層實現(xiàn)將處理更改的數(shù)據(jù)類型。
提示#5 -封裝數(shù)據(jù)
計算機科學課程中教授的第一個概念之一是變量或對象應限于可能的最小程序范圍。類似地,如何實現(xiàn)接口的細節(jié)應限于需要知道的基礎。開發(fā)人員應嘗試從模塊的用戶中隱藏盡可能多的數(shù)據(jù)和實現(xiàn)。隱藏細節(jié)有助于防止用戶直接操作模塊的內(nèi)部數(shù)據(jù),這可能導致模塊進入未知或不一致狀態(tài)。
最終想法
發(fā)展充滿了不斷變化的需求和短暫的開發(fā)周期。使用適當?shù)慕缑嬖O計技術可以改善軟件的整體設計,并最大限度地減少不斷變化的需求移動目標的影響。我們已經(jīng)研究了五個設計界面的簡單技巧。在開發(fā)經(jīng)得起時間考驗的界面時,開發(fā)人員應該考慮哪些其他注意事項?
-
嵌入式
+關注
關注
5054文章
18917瀏覽量
300955 -
PCB打樣
+關注
關注
17文章
2968瀏覽量
21611 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27683 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
42908
發(fā)布評論請先 登錄
相關推薦
評論