0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

為可重用軟件模塊創(chuàng)建一致且適當(dāng)?shù)慕涌诘奈鍌€(gè)設(shè)計(jì)提示

PCB線路板打樣 ? 來(lái)源:LONG ? 2019-08-09 15:47 ? 次閱讀

為可重用軟件模塊創(chuàng)建一致且適當(dāng)?shù)?a target="_blank">接口是嵌入式軟件設(shè)計(jì)中最關(guān)鍵和最受忽視的方面之一。接口通常是在飛行中開(kāi)發(fā)的,幾乎沒(méi)有預(yù)見(jiàn)到。但是為了確保軟件可以從一個(gè)應(yīng)用程序輕松地用于下一個(gè)應(yīng)用程序,每個(gè)開(kāi)發(fā)人員都應(yīng)該記住五個(gè)提示。

提示1 -從一個(gè)必需的列表開(kāi)始操作
在開(kāi)始為軟件模塊編寫(xiě)接口之前,開(kāi)發(fā)人員應(yīng)該花一些時(shí)間寫(xiě)出接口需要執(zhí)行的簡(jiǎn)單操作列表。該列表充當(dāng)開(kāi)發(fā)人員的便箋簿,以便思考接口需要做什么。模塊的操作是什么?它需要什么輸入?它將產(chǎn)生什么輸出?所有這三個(gè)問(wèn)題都需要回答。列表和問(wèn)題將作為設(shè)計(jì)界面的起點(diǎn)。

技巧#2 -使用UML類

UML類圖用于表示類,但也可用于表示模塊更重要的是,模塊接口。類圖的基本組件是由三個(gè)部分組成的框。第一部分(頂部)包含模塊的名稱。第二部分(中間)包含模塊的屬性。第三個(gè)也是最后一個(gè)部分用于定義接口公開(kāi)的操作和方法。

模塊的屬性可以被認(rèn)為是接口操作將要操作的私有和公共變量。屬性前面的加號(hào)表示它是公共的,并直接作為界面的一部分公開(kāi)。減號(hào)表示該屬性是私有的,只能通過(guò)使用界面公開(kāi)的操作在幕后進(jìn)行操作。將這些操作視為提示#1中列出的相同操作。圖1顯示了左側(cè)通用模塊定義的示例和EEPROM模塊的簡(jiǎn)化接口。

圖1 - 示例類/模塊圖

技巧#3 -將接口與實(shí)現(xiàn)分開(kāi)

當(dāng)開(kāi)始開(kāi)發(fā)模塊的接口時(shí),開(kāi)發(fā)人員應(yīng)該盡一切可能將接口與模塊的實(shí)現(xiàn)分開(kāi)。接口的面向公眾的部分的詳細(xì)信息都應(yīng)該包含在頭文件中,在這種情況下,頭文件定義了模塊的接口。實(shí)現(xiàn)細(xì)節(jié)應(yīng)保存在源文件中。將實(shí)現(xiàn)細(xì)節(jié)與接口分開(kāi),開(kāi)始為開(kāi)發(fā)人員提供隱藏實(shí)現(xiàn)的能力。這種隱藏導(dǎo)致了模塊類的抽象,并提供了以后重新定義實(shí)現(xiàn)而不影響接口的能力。

技巧#4 -使用抽象數(shù)據(jù)類型

要求總是改變并預(yù)測(cè)要求如何變化通常是徒勞的,即使一個(gè)人配備了水晶球。抽象數(shù)據(jù)類型旨在幫助開(kāi)發(fā)人員處理不斷變化的需求。例如,在頭文件中定義為接口的一部分的數(shù)據(jù)結(jié)構(gòu)。引用頭文件的任何模塊都能夠基于該數(shù)據(jù)結(jié)構(gòu)創(chuàng)建和修改數(shù)據(jù)。當(dāng)需求發(fā)生變化并且數(shù)據(jù)結(jié)構(gòu)發(fā)生變化時(shí),結(jié)果是需要為使用頭文件的任何文件提供更新。

如果開(kāi)發(fā)人員創(chuàng)建了一個(gè)抽象數(shù)據(jù)類型,其中數(shù)據(jù)結(jié)構(gòu)的詳細(xì)信息隱藏在實(shí)現(xiàn)中,則只需要更新源文件實(shí)現(xiàn)。使用頭文件的任何模塊都將繼續(xù)使用公共接口,底層實(shí)現(xiàn)將處理更改的數(shù)據(jù)類型。

提示#5 -封裝數(shù)據(jù)

計(jì)算機(jī)科學(xué)課程中教授的第一個(gè)概念之一是變量或?qū)ο髴?yīng)限于可能的最小程序范圍。類似地,如何實(shí)現(xiàn)接口的細(xì)節(jié)應(yīng)限于需要知道的基礎(chǔ)。開(kāi)發(fā)人員應(yīng)嘗試從模塊的用戶中隱藏盡可能多的數(shù)據(jù)和實(shí)現(xiàn)。隱藏細(xì)節(jié)有助于防止用戶直接操作模塊的內(nèi)部數(shù)據(jù),這可能導(dǎo)致模塊進(jìn)入未知或不一致?tīng)顟B(tài)。

最終想法

發(fā)展充滿了不斷變化的需求和短暫的開(kāi)發(fā)周期。使用適當(dāng)?shù)慕缑嬖O(shè)計(jì)技術(shù)可以改善軟件的整體設(shè)計(jì),并最大限度地減少不斷變化的需求移動(dòng)目標(biāo)的影響。我們已經(jīng)研究了五個(gè)設(shè)計(jì)界面的簡(jiǎn)單技巧。在開(kāi)發(fā)經(jīng)得起時(shí)間考驗(yàn)的界面時(shí),開(kāi)發(fā)人員應(yīng)該考慮哪些其他注意事項(xiàng)?

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5086

    文章

    19141

    瀏覽量

    305945
  • PCB打樣
    +關(guān)注

    關(guān)注

    17

    文章

    2968

    瀏覽量

    21733
  • 華強(qiáng)PCB
    +關(guān)注

    關(guān)注

    8

    文章

    1831

    瀏覽量

    27799
  • 華強(qiáng)pcb線路板打樣

    關(guān)注

    5

    文章

    14629

    瀏覽量

    43080
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    重用機(jī)床編碼技術(shù)及重構(gòu)算法研究

    重用機(jī)床的組成模塊特征,進(jìn)而將可重用機(jī)床的模塊編碼系統(tǒng)分為模塊主碼、模塊
    發(fā)表于 05-17 11:58

    C語(yǔ)言接口與實(shí)現(xiàn)--創(chuàng)建重用軟件的技術(shù)

    C語(yǔ)言接口與實(shí)現(xiàn)--創(chuàng)建重用軟件的技術(shù)
    發(fā)表于 11-07 17:17

    c接口和實(shí)現(xiàn):創(chuàng)建重用軟件的技術(shù) 源碼下載

    c接口和實(shí)現(xiàn):創(chuàng)建重用軟件的技術(shù) 源碼分享關(guān)于如何設(shè)計(jì)、實(shí)現(xiàn)和有效使用庫(kù)函數(shù)的指南少之又少(如果說(shuō)還有的話)。這本書(shū)作填補(bǔ)了這個(gè)空白。它可
    發(fā)表于 02-07 21:21

    單片機(jī)接口全套學(xué)習(xí)資料(接口設(shè)計(jì)資料+學(xué)習(xí)書(shū)籍)

    ,是本有關(guān)設(shè)計(jì)、實(shí)現(xiàn)和有效使用C語(yǔ)言庫(kù)函數(shù),掌握創(chuàng)建重用C語(yǔ)言軟件模塊技術(shù)的參考指南。書(shū)中提
    發(fā)表于 10-12 11:00

    以太網(wǎng)一致性測(cè)試硬件軟件

    不同■回波損耗測(cè)試測(cè)試環(huán)境:10M、100M、1000M以太網(wǎng)測(cè)試設(shè)備要求■一致性測(cè)試的大概通用配置就是以下個(gè)地方: >合適帶寬示波器,1GHz以上帶windows系統(tǒng)示波備臺(tái) >
    發(fā)表于 09-20 15:15

    算法運(yùn)行時(shí)間軟件仿真和硬件仿真不一致

    我用個(gè)比較簡(jiǎn)單的算法,就是給灰度圖像各個(gè)像素賦值運(yùn)算和排序,沒(méi)有用到中斷什么資源,用軟件仿真這個(gè)算法提示:-Forward Transf
    發(fā)表于 10-24 14:06

    經(jīng)典C語(yǔ)言接口與實(shí)現(xiàn):創(chuàng)建重用軟件的技術(shù)

    C語(yǔ)言接口與實(shí)現(xiàn)(創(chuàng)建重用軟件的技術(shù))概念清晰、內(nèi)容新穎、實(shí)例詳盡,是本有關(guān)設(shè)計(jì)、實(shí)現(xiàn)和有效
    發(fā)表于 09-25 06:42

    數(shù)字可視接口(DVI)一致性測(cè)試

    數(shù)字可視接口(DVI)一致性測(cè)試:DVI是個(gè)顯示器接口,它支持以數(shù)字格式把數(shù)據(jù)從PC傳送到平板顯示器上4 采用轉(zhuǎn)換最小化差分信令(TMDS
    發(fā)表于 10-17 17:13 ?0次下載

    RFID協(xié)議一致性測(cè)試系統(tǒng)設(shè)計(jì)(二)

      軟件無(wú)線電這關(guān)鍵技術(shù)的應(yīng)用,使得RFID協(xié)議一致性測(cè)試系統(tǒng)能夠突破傳統(tǒng)儀器受專有硬件限制的局限性,在標(biāo)準(zhǔn)化、模塊化、層次化的體系結(jié)構(gòu)上滿足一致
    發(fā)表于 03-28 17:37 ?1449次閱讀
    RFID協(xié)議<b class='flag-5'>一致</b>性測(cè)試系統(tǒng)設(shè)計(jì)(二)

    加速器一致接口

    Zynq PS上的加速器一致接口(Accelerator Coherency Port, ACP)是個(gè)兼容AXI3的64位從機(jī)接口,連接
    發(fā)表于 11-17 15:04 ?3690次閱讀

    一致性哈希是什么?為什么它是擴(kuò)展的分布式系統(tǒng)架構(gòu)的個(gè)必要工具

    在本文中,我們將了解一致性哈希是什么、為什么它是擴(kuò)展的分布式系統(tǒng)架構(gòu)中的個(gè)必要工具。
    的頭像 發(fā)表于 07-17 17:57 ?4405次閱讀

    《C語(yǔ)言接口與實(shí)現(xiàn):創(chuàng)建重用軟件的技術(shù)》電子教材免費(fèi)下載

    《C語(yǔ)言接口與實(shí)現(xiàn):創(chuàng)建重用軟件的技術(shù)》概念清晰、實(shí)例詳盡,是本有關(guān)設(shè)計(jì)、實(shí)現(xiàn)和有效使用C語(yǔ)
    發(fā)表于 08-27 08:00 ?32次下載

    C語(yǔ)言接口與實(shí)現(xiàn)創(chuàng)建重用軟件的技術(shù)PDF電子書(shū)免費(fèi)下載

    《C語(yǔ)言接口與實(shí)現(xiàn):創(chuàng)建重用軟件的技術(shù)》概念清晰、實(shí)例詳盡,是本有關(guān)設(shè)計(jì)、實(shí)現(xiàn)和有效使用C語(yǔ)
    發(fā)表于 05-11 08:00 ?18次下載
    C語(yǔ)言<b class='flag-5'>接口</b>與實(shí)現(xiàn)<b class='flag-5'>創(chuàng)建</b><b class='flag-5'>可</b><b class='flag-5'>重用</b><b class='flag-5'>軟件</b>的技術(shù)PDF電子書(shū)免費(fèi)下載

    NVIDIA DOCA 軟件框架可提供一致開(kāi)發(fā)體驗(yàn)

    NVIDIA DOCA 軟件框架包括了對(duì) NVIDIA BlueField DPU (數(shù)據(jù)處理器)進(jìn)行編程所需的切,無(wú)論開(kāi)發(fā)環(huán)境如何都能提供一致的開(kāi)發(fā)體驗(yàn)。
    的頭像 發(fā)表于 06-20 11:24 ?1623次閱讀
    NVIDIA DOCA <b class='flag-5'>軟件</b>框架可提供<b class='flag-5'>一致</b>開(kāi)發(fā)體驗(yàn)

    重用的驗(yàn)證組件中構(gòu)建測(cè)試平臺(tái)的步驟

    writer ) 進(jìn)行區(qū)分,前者負(fù)責(zé)測(cè)試平臺(tái)的構(gòu)建和配置,后者可能對(duì)測(cè)試平臺(tái)的底層了解較少,但用它來(lái)創(chuàng)建測(cè)試用例。 基于驗(yàn)證組件創(chuàng)建測(cè)試平臺(tái)的步驟是:? Review重用的驗(yàn)證組件
    的頭像 發(fā)表于 06-13 09:14 ?613次閱讀
    <b class='flag-5'>可</b><b class='flag-5'>重用</b>的驗(yàn)證組件中構(gòu)建測(cè)試平臺(tái)的步驟