專利名稱:數(shù)據(jù)轉(zhuǎn)換邏輯單元的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字?jǐn)?shù)據(jù)處理,特別是用于軟件開發(fā)的數(shù)據(jù)轉(zhuǎn)換邏輯單元。
背景技術(shù):
上世紀(jì)六七十年代,隨著面向?qū)ο缶幊陶Z言的問世,面向?qū)ο蟪绦蛟O(shè)計 的各種軟件開發(fā)方法和架構(gòu)也應(yīng)運而生并得以迅速發(fā)展。
面向?qū)ο蟪绦蛟O(shè)計的核心之處在于提出了 "對象"的概念,通過將客觀 實體抽象成具有一定屬性和功能的"對象",并且通過將"對象,,進(jìn)行封裝, 僅對外開放其屬性和功能的參數(shù)接口 ,使得程序員在編寫程序的過程中并不 需要知道對象本身的方法是如何實現(xiàn)的以及具體的屬性如何,而只需要調(diào)用 對象的參lt接口,就可調(diào)用對象并完成特定的功能。
目前常用的MFC (Microsoft Foundation Classes )就是一個包含了 一百多 個類的類庫,其中,這些類就是軟件開發(fā)過程中最常用到的對象。在編程過 程中,除了調(diào)用這些已有對象的參數(shù)接口,以實現(xiàn)所需要的功能,還可以利 用"繼承"的方法從MFC類庫中的已有對象派生出各種自定義對象,這些 自定義對象除了具有已有對象的屬性和功能之外,還可以根據(jù)需要具有各種 自定義的屬性和功能,從而實現(xiàn)對象的擴(kuò)展。
然而,隨著軟件產(chǎn)業(yè)的蓬勃發(fā)展,軟件系統(tǒng)變得越來越復(fù)雜。 一個軟件 系統(tǒng)通常包括不止一個包含多個應(yīng)用實例的項目,因此在開發(fā)過程中,同一 個類可能需要被復(fù)用于相同或不同項目中的一個或多個應(yīng)用實例中。由于每 次應(yīng)用環(huán)境的差異, 一般來說,類的復(fù)用并不能簡單地僅通過復(fù)制、粘貼類 的實現(xiàn)代碼來實現(xiàn),還需要針對不同的應(yīng)用實例對類的接口參數(shù)以及應(yīng)用實 例中的相應(yīng)參數(shù)進(jìn)行人工調(diào)整,而一個軟件系統(tǒng)的開發(fā)通常由若干個工程師甚至多個團(tuán)隊協(xié)作完成,也就是說,某一段所完成的代碼可能被不同的人多 次復(fù)用。由于類接口的不統(tǒng)一以及編程思路和應(yīng)用環(huán)境存在差異,在代碼復(fù) 用的過程中,經(jīng)常容易出現(xiàn)例如未完全復(fù)制類的實現(xiàn)代碼,或者未修改類的 接口參數(shù),或者僅修改了類的接口參數(shù)而未修改應(yīng)用實例中的相應(yīng)參數(shù)等諸 多問題。這不僅造成程序的出錯率大大增加,還給后續(xù)的維護(hù)和檢查工作帶 來很大的困難,既拖延了開發(fā)周期,也增加了開發(fā)成本。
發(fā)明內(nèi)容
本發(fā)明要解決的問題是提供一種數(shù)據(jù)轉(zhuǎn)換邏輯單元,避免由于代碼復(fù)用 所帶來的出錯率增加、工作量增大、開發(fā)周期延長以及開發(fā)成本提高的問題。
為解決上述問題,本發(fā)明提供了一種數(shù)據(jù)轉(zhuǎn)換邏輯單元,用于對輸入數(shù)
據(jù)進(jìn)行轉(zhuǎn)換并輸出,其特征在于,包括
頭文件單元,用于提供所述數(shù)據(jù)轉(zhuǎn)換邏輯單元與外部進(jìn)行數(shù)據(jù)交換的參 數(shù)定義;
源文件單元,用于提供源函數(shù)對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn)換并輸出的具體實現(xiàn); 所述數(shù)據(jù)轉(zhuǎn)換邏輯單元具有標(biāo)準(zhǔn)化的對外數(shù)據(jù)參數(shù)以及源函數(shù)。 所述頭文件單元包括
頭文件標(biāo)識單元,用于標(biāo)識本邏輯單元并提供分類和4企索的依據(jù);
頭文件參數(shù)單元,用于對本邏輯單元內(nèi)的源函數(shù)進(jìn)行聲明和定義。
可選的,所述頭文件標(biāo)識單元至少包括頭文件名稱標(biāo)識,用于實現(xiàn)與 所述源文件單元名稱的匹配;以及頭文件描述字標(biāo)識,用于提供對所述頭文 件單元進(jìn)行分類和檢索的依據(jù)。
可選的,所述頭文件標(biāo)識單元還包括第一公共信息標(biāo)識,用于標(biāo)識開 發(fā)人員、公司、版本信息等基本的公共信息,以提供檢索的依據(jù)。
4可選的,所述頭文件參數(shù)單元至少包括函數(shù)聲明,輸入數(shù)據(jù)、輸出數(shù)據(jù) 以及擴(kuò)展數(shù)據(jù)的類型描述,參數(shù)定義,所定義的參數(shù)在所述數(shù)據(jù)轉(zhuǎn)換邏輯單 元內(nèi)保持一致。
可選的,所述源文件單元有且^f又有一個源函tt,且函^t名與頭文件所標(biāo) 識定義的內(nèi)容相匹配
相較于現(xiàn)有技術(shù),本發(fā)明通過為同 一個數(shù)據(jù)轉(zhuǎn)換邏輯單元提供標(biāo)準(zhǔn)化的 對外數(shù)據(jù)類型以及源函數(shù),簡化了不同的數(shù)據(jù)轉(zhuǎn)換邏輯單元之間相互調(diào)用時 對接口函數(shù)的檢查,節(jié)約了編程的工作量,并通過提高了代碼的可復(fù)用性, 減少了代碼量。且通過設(shè)置標(biāo)識單元,方便了查詢、檢索、分類等操作,減 輕了調(diào)試的難度,此外,還通過一個頭文件單元與至少一個源文件單元的匹 配結(jié)構(gòu),使得同 一個數(shù)據(jù)轉(zhuǎn)換邏輯單元可具有不同的行為實現(xiàn)和初始化參數(shù), 保證了編程的靈活性。
附圖i兌明
圖l是本發(fā)明數(shù)據(jù)轉(zhuǎn)換邏輯單元實施方式的示意圖; 圖2是
圖1中所述頭文件單元具體實施方式
的示意圖; 圖3是圖1中所述源文件單元具體實施方式
的示意圖; 圖4是所述顯示邏輯單元的工作流程圖。
具體實施例方式
背景技術(shù):
中所提到的對象至少包括數(shù)據(jù)元素、數(shù)據(jù)元素之間的關(guān)系以及 對數(shù)據(jù)元素的操作,而對象的接口是其與外界的通道,通過這些接口參數(shù)的 定義和表示,外界程序可將所需要對所述對象中的數(shù)據(jù)元素、數(shù)據(jù)元素之間 的關(guān)系以及對數(shù)據(jù)元素的操作進(jìn)行的處理傳輸至該對象內(nèi)部,獲得所需要的 結(jié)果。接口參數(shù)可以為數(shù)據(jù)元素、數(shù)據(jù)元素之間的關(guān)系以及對數(shù)據(jù)元素的操
5作中的任意組合。因此,接口參數(shù)的定義和表示將影響對象的所能實現(xiàn)的功
能。舉個例子來說,對于執(zhí)行乘法運算的對象A,具有兩個接口參數(shù),分別 為實數(shù)a和實數(shù)b,將a與b所賦值的乘積作為結(jié)果值予以返回,而對于執(zhí)行 乘冪運算的對象B,具有三個接口參數(shù),分別為實數(shù)c、實數(shù)d和實數(shù)e,將 c與d的賦值相乘后,再將乘積進(jìn)行e的賦值的冪運算,然后返回結(jié)果??梢姡?由于定義了不一樣的接口參數(shù),盡管是進(jìn)行乘法運算,所述對象的功能也不 一樣。這種接口的不統(tǒng)一一定意義上促進(jìn)了開發(fā)過程中的靈活性,但卻也增 大了調(diào)試、修改以及維護(hù)的難度;尤其是一些自定義的對象,對其的調(diào)用是 否符合其定義基本只能依靠人工的檢查來完成,增加了工作量和開發(fā)成本。
發(fā)明人正是基于對上述問題的綜合考慮,在對對象的架構(gòu)以及必要操作 進(jìn)行了大量的研究和試驗之后,提出了本發(fā)明。
本發(fā)明實施方式提供了 一種數(shù)據(jù)轉(zhuǎn)換邏輯單元,用于對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn) 換并輸出,具有標(biāo)準(zhǔn)化的對外數(shù)據(jù)類型以及源函數(shù),包括設(shè)置了頭文件單元 和源文件單元,所述頭文件單元設(shè)置了相應(yīng)的標(biāo)識單元,既保證了繼承、擴(kuò) 展等編程的靈活性,又大大簡化了編程的復(fù)雜性,節(jié)省了大量人力和時間, 節(jié)約了開發(fā)成本。
下面即結(jié)合附圖和實施例對本發(fā)明的具體實施方式
做詳細(xì)的說明。
每個所述數(shù)據(jù)轉(zhuǎn)換邏輯單元提供標(biāo)準(zhǔn)化的對外數(shù)據(jù)類型以及源函數(shù),由 于每一個邏輯單元對應(yīng)數(shù)據(jù)的一種轉(zhuǎn)換輸出方式,也就是說,同一個數(shù)據(jù)轉(zhuǎn) 換邏輯單元允許多種輸入數(shù)據(jù),但所有輸入數(shù)據(jù)和輸出數(shù)據(jù)還有源函數(shù)都是 標(biāo)準(zhǔn)化的。
具體來說,每個所述數(shù)據(jù)轉(zhuǎn)換邏輯單元可包括一個頭文件單元和一個源 文件單元。在同一個數(shù)據(jù)轉(zhuǎn)換邏輯單元中,源文件單元與該頭文件單元相匹 配,以便定義、檢索。
6參考圖1,在數(shù)據(jù)轉(zhuǎn)換邏輯單元1中,頭文件單元1對應(yīng)于源文件單元1; 在數(shù)據(jù)轉(zhuǎn)換邏輯單元2中,頭文件單元2分別對應(yīng)于源文件單元2;此外,數(shù) 據(jù)轉(zhuǎn)換邏輯單元1通過頭文件單元1,且數(shù)據(jù)轉(zhuǎn)換邏輯單元2通過頭文件單元 2,具有統(tǒng)一標(biāo)準(zhǔn)的輸入輸出數(shù)據(jù)。標(biāo)準(zhǔn)化的輸入輸出數(shù)據(jù),實際都是由統(tǒng)一 標(biāo)準(zhǔn)的源函數(shù)所決定的,數(shù)據(jù)轉(zhuǎn)換邏輯單元內(nèi)部有且僅有一個轉(zhuǎn)換函數(shù),在 編寫轉(zhuǎn)換函數(shù)時都遵守統(tǒng)——致的標(biāo)準(zhǔn)并能夠被編譯工具所識別,這樣使得 邏輯單元標(biāo)準(zhǔn)化后易于重復(fù)調(diào)用,并互通數(shù)據(jù)類型,而轉(zhuǎn)換函數(shù)所需要的數(shù)
據(jù)類型將在后述頭文件中將被定義。
參考圖2,所述頭文件單元對應(yīng)于數(shù)據(jù)轉(zhuǎn)換邏輯單元的轉(zhuǎn)換數(shù)據(jù)行為,用 于提供該數(shù)據(jù)轉(zhuǎn)換邏輯單元與外部進(jìn)行數(shù)據(jù)交換的參數(shù)定義以及內(nèi)部源函數(shù) 的函數(shù)聲明,可包括頭文件標(biāo)識單元和頭文件參數(shù)單元。
其中,所述頭文件標(biāo)識單元至少可包括頭文件名稱標(biāo)識以及頭文件描述 字標(biāo)識,用于提供對所述頭文件單元進(jìn)行分類和^r索的依據(jù),所述名稱標(biāo)識 還用于實現(xiàn)與所述源文件單元的匹配。所述頭文件標(biāo)識單元還可包括第一7> 共信息標(biāo)識,用于標(biāo)識開發(fā)人員、公司、版本信息等基本的公共信息,以提 供檢索的依據(jù)。
所述頭文件參數(shù)單元可包括函數(shù)聲明,輸入數(shù)據(jù)、輸出數(shù)據(jù)以及擴(kuò)展數(shù) 據(jù)的類型描述,參數(shù)定義,所定義的參數(shù)在所述數(shù)據(jù)轉(zhuǎn)換邏輯單元內(nèi)保持一 致。參數(shù)單元定義了本數(shù)據(jù)轉(zhuǎn)換邏輯單元內(nèi)源函數(shù)相關(guān)的數(shù)據(jù)類型,可通過 枚舉進(jìn)行參數(shù)標(biāo)識,包括輸入數(shù)據(jù)類型描述,輸出數(shù)據(jù)類型描述以及擴(kuò)展數(shù) 據(jù)描述等。
所述源文件單元是對所述數(shù)據(jù)轉(zhuǎn)換邏輯單元進(jìn)行數(shù)據(jù)轉(zhuǎn)換的具體實現(xiàn)。 舉個例子,為實現(xiàn)輸入二進(jìn)制參數(shù)11,輸出為3的操作,假設(shè)確定一個轉(zhuǎn)換 函數(shù)將二進(jìn)制參數(shù)進(jìn)行位數(shù)拆分,然后分別進(jìn)行乘法運算最后相加,即1x2+1=3。得到其十進(jìn)制結(jié)果的輸出。而二進(jìn)制輸入?yún)?shù)和十進(jìn)制輸出參數(shù)已 分別在頭文件中經(jīng)過定義。當(dāng)然,在具體實施中,所述數(shù)據(jù)轉(zhuǎn)換邏輯單元所 執(zhí)行的任務(wù)可以較為復(fù)雜,所述源文件的源函數(shù)編譯類型也可相應(yīng)的較多。
參考圖3,所述源文件單元是提供源函數(shù)并對數(shù)據(jù)轉(zhuǎn)換的具體實現(xiàn),可包 括源文件標(biāo)識單元和源函數(shù)單元,其中本數(shù)據(jù)轉(zhuǎn)換邏輯單元因為功能僅僅在 于對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn)換后輸出,其源文件單元只需要提供源函數(shù)即可,故并 不需要源文件標(biāo)識單元。但是為了保持文件單元結(jié)構(gòu)的統(tǒng)一、復(fù)用,可預(yù)留 標(biāo)識單元設(shè)為內(nèi)空并可擴(kuò)展。
下面提供一個具體的實施例,對所述源文件單元的工作流程進(jìn)一步介紹,
對于一個具有顯示功能的數(shù)據(jù)轉(zhuǎn)換邏輯單元,簡稱顯示邏輯單元來說, 其主要的功能在于將系統(tǒng)的狀態(tài)或其他行為,進(jìn)行可視化轉(zhuǎn)換,具體地,將 表征系統(tǒng)狀態(tài)或其他行為的核心數(shù)據(jù)轉(zhuǎn)換成圖形控件所需的顯示數(shù)據(jù)。 一種 顯示邏輯單元的數(shù)據(jù)處理方法,也即源函數(shù)工作流程如圖4所示
首先進(jìn)行步驟S1、讀取核心數(shù)據(jù);因為在顯示邏輯單元的頭文件中已經(jīng) 定義了輸入數(shù)據(jù)參數(shù),某種核心數(shù)據(jù)(假設(shè)表征音量的二進(jìn)制數(shù)據(jù)11)作為 符合要求的輸入數(shù)據(jù)類型,^C顯示邏輯單元讀取。
然后進(jìn)行步驟S2、對讀取的核心數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,如果顯示邏輯單元 的轉(zhuǎn)換源函數(shù)是將該表征音量的二進(jìn)制數(shù)據(jù)11,轉(zhuǎn)換成十進(jìn)制的字符串進(jìn)行 輸出顯示,則經(jīng)過源函數(shù)的轉(zhuǎn)換之后我們得到一個十進(jìn)制數(shù)據(jù)3。
再進(jìn)行步驟S3、將得到的顯示數(shù)據(jù)輸出,寫入存儲器,供后續(xù)的圖形控 件調(diào)用,最終顯示在可視化界面上,用字符串展示在使用者面前的將是十進(jìn) 制數(shù)據(jù)3,表征系統(tǒng)當(dāng)前狀態(tài)即設(shè)備音量為3。
在上述過程中,當(dāng)顯示邏輯單元的源函數(shù)將讀取的核心數(shù)據(jù)轉(zhuǎn)化成顯示 數(shù)據(jù)后,還可以插入擴(kuò)展數(shù)據(jù)整合,再進(jìn)行輸出。比如得到十進(jìn)制的顯示數(shù)
8據(jù)3之后,可以將其進(jìn)行擴(kuò)展向單純的數(shù)字信息3中再插入顏色信息紅色, 再寫入存儲器,并相應(yīng)地變更關(guān)聯(lián)的控件數(shù)據(jù)類型,最終在顯示屏幕得到紅 色的字符串3。
相較于現(xiàn)有技術(shù)僅通過檢查所使用的接口參數(shù)與頭文件中所聲明的是否 一致來獲得類型的安全檢查,本發(fā)明上述各實施方式具有較明顯的有益效果
首先,在本發(fā)明實施方式中,數(shù)據(jù)轉(zhuǎn)換邏輯單元的所有數(shù)據(jù)轉(zhuǎn)換實現(xiàn)都 提供統(tǒng)一標(biāo)準(zhǔn)的源函數(shù)以及對外數(shù)據(jù)類型,簡化了不同的數(shù)據(jù)轉(zhuǎn)換邏輯單元 之間相互調(diào)用時對接口函數(shù)的檢查,節(jié)約了編程的工作量,并通過提高了代 碼的可復(fù)用性,減少了代碼量。且通過工具生成頭文件單元的具體代碼以及 源文件單元的模版,減少了工作量,節(jié)約了大量人力和精力;
其次,在構(gòu)成數(shù)據(jù)轉(zhuǎn)換邏輯單元的頭文件單元中設(shè)置了頭文件標(biāo)識單元 和源文件標(biāo)識單元,方便了查詢、檢索、分類等操作,大大減輕了調(diào)試的難 度,減輕了工作量,縮短了開發(fā)周期;
此外,由于數(shù)據(jù)轉(zhuǎn)換邏輯單元設(shè)置為具有一個頭文件單元以及一個源文 件單元的結(jié)構(gòu),使得數(shù)據(jù)轉(zhuǎn)換邏輯單元可具有最基本的數(shù)據(jù)轉(zhuǎn)換行為,易于 邏輯單元中源函數(shù)的代碼復(fù)用,還能夠?qū)⒍喾N數(shù)據(jù)轉(zhuǎn)換邏輯單元的組合,使
得編程具有高度的靈活性。
雖然本發(fā)明已通過較佳實施例說明如上,但這些較佳實施例并非用以限 定本發(fā)明。本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),應(yīng)有能力 對該較佳實施例做出各種改正和補(bǔ)充,因此,本發(fā)明的保護(hù)范圍以權(quán)利要求 書的范圍為準(zhǔn)。
9
權(quán)利要求
1. 一種數(shù)據(jù)轉(zhuǎn)換邏輯單元,用于對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn)換并輸出,其特征在于,包括頭文件單元,用于提供所述數(shù)據(jù)轉(zhuǎn)換邏輯單元與外部進(jìn)行數(shù)據(jù)交換的參數(shù)定義;源文件單元,用于提供源函數(shù)對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn)換并輸出的具體實現(xiàn);所述數(shù)據(jù)轉(zhuǎn)換邏輯單元具有標(biāo)準(zhǔn)化的對外數(shù)據(jù)參數(shù)以及源函數(shù)。
2. 如權(quán)利要求1所述的數(shù)據(jù)轉(zhuǎn)換邏輯單元,其特征在于,所述頭文件單元包 括頭文件標(biāo)識單元,用于標(biāo)識本邏輯單元并纟是供分類和^r索的依據(jù); 頭文件參數(shù)單元,用于對本邏輯單元內(nèi)的源函數(shù)進(jìn)行聲明和定義。
3. 如權(quán)利要求2所述的數(shù)據(jù)轉(zhuǎn)換邏輯單元,其特征在于,所述頭文件標(biāo)識單 元至少包括頭文件名稱標(biāo)識,用于實現(xiàn)與所述源文件單元名稱的匹配;以 及頭文件描述字標(biāo)識,用于提供對所述頭文件單元進(jìn)行分類和檢索的依據(jù)。
4. 如權(quán)利要求3所述的數(shù)據(jù)轉(zhuǎn)換邏輯單元,其特征在于,所述頭文件標(biāo)識單 元還包括第一公共信息標(biāo)識,用于標(biāo)識開發(fā)人員、公司、版本信息等基本 的公共信息,以提供檢索的依據(jù)。
5. 如權(quán)利要求2所述的數(shù)據(jù)轉(zhuǎn)換邏輯單元,其特征在于,所述頭文件參數(shù)單 元至少包括函數(shù)聲明,輸入數(shù)據(jù)、輸出數(shù)據(jù)以及擴(kuò)展數(shù)據(jù)的類型描述,參數(shù) 定義,所定義的參數(shù)在所述數(shù)據(jù)轉(zhuǎn)換邏輯單元內(nèi)保持一致。
6. 如權(quán)利要求1所述的數(shù)據(jù)轉(zhuǎn)換邏輯單元,其特征在于,所述源文件單元有 且僅有一個源函數(shù),且函數(shù)名與頭文件所標(biāo)識定義的內(nèi)容相匹配。
全文摘要
一種數(shù)據(jù)轉(zhuǎn)換邏輯單元,用于對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn)換并輸出,其特征在于,包括頭文件單元,用于提供所述數(shù)據(jù)轉(zhuǎn)換邏輯單元與外部進(jìn)行數(shù)據(jù)交換的參數(shù)定義;源文件單元,用于提供源函數(shù)對輸入數(shù)據(jù)進(jìn)行轉(zhuǎn)換并輸出的具體實現(xiàn);所述數(shù)據(jù)轉(zhuǎn)換邏輯單元提供統(tǒng)一標(biāo)準(zhǔn)的對外數(shù)據(jù)參數(shù)和源函數(shù)。本發(fā)明所述邏輯單元具有標(biāo)準(zhǔn)化的對外數(shù)據(jù)類型以及源函數(shù),簡化了相互調(diào)用時對接口函數(shù)的檢查,節(jié)約了編程的工作量,并通過提高了代碼的可復(fù)用性,減少了代碼量。且提供了查詢、檢索、分類等操作,在保證了編程的靈活性的前提下,減輕了調(diào)試的難度,節(jié)省了大量成本。
文檔編號G06F9/44GK101510153SQ200910048039
公開日2009年8月19日 申請日期2009年3月20日 優(yōu)先權(quán)日2009年3月20日
發(fā)明者嵐 劉, 昊 殷, 琦 董 申請人:華亞微電子(上海)有限公司