計算機(jī)軟件數(shù)據(jù)接口的應(yīng)用分析
一、現(xiàn)狀分析
本文引用地址:http://m.butianyuan.cn/article/202235.htm目前,MIS系統(tǒng)已與多個管理信息系統(tǒng)建立接口,包括集團(tuán)科設(shè)部系統(tǒng)、集團(tuán)煤炭系統(tǒng)、鐵路TMIS系統(tǒng)、公司電量采集系統(tǒng)和磅房稱重系統(tǒng)。在運行的數(shù)據(jù)庫應(yīng)用中,實現(xiàn)方式為:以一個等價于DBA(Database Administrator,數(shù)據(jù)庫管理員)權(quán)限的用戶創(chuàng)建所有的表、試圖、存儲過程、觸發(fā)器等數(shù)據(jù)庫對象,然后由應(yīng)用開發(fā)人員通過代碼對這些數(shù)據(jù)庫對象進(jìn)行操作。這種方式會造成一定問題隱患。
(一)隨著用戶對數(shù)據(jù)庫的掌握和理解的深入,一部分用戶掌握了SQL(Structured Query Language,結(jié)構(gòu)化查詢語言)語句的使用,繞開應(yīng)用程序直接使用交互式SQL,利用種方式訪問數(shù)據(jù)庫對象時,可能會產(chǎn)生一系列的安全問題,從而導(dǎo)致數(shù)據(jù)的不一致。
(二)在應(yīng)用程序開發(fā)時,采用前臺應(yīng)用程序直接調(diào)用數(shù)據(jù)庫對象的方式,這就為系統(tǒng)惡意攻擊者提供了很大的便利,攻擊者只需要對應(yīng)用程序所引用的對象進(jìn)行分析,就可以很容易的了解后臺數(shù)據(jù)庫的基本邏輯結(jié)構(gòu)。
(三)在分布式遠(yuǎn)程數(shù)據(jù)庫接口訪問時,程序開發(fā)人員需要完整描述應(yīng)用數(shù)據(jù)庫對象的詳細(xì)信息,包括:遠(yuǎn)程主機(jī)名、數(shù)據(jù)庫名、用戶名和用戶對象,在語句編寫方面會非常繁瑣,并且如果有一點差錯就還造成數(shù)據(jù)庫找不到應(yīng)用對象,查找問題依然復(fù)雜。
其實計算機(jī)軟件的數(shù)據(jù)接口是軟件開發(fā)商向用戶或者第三方軟件開發(fā)商所提供的系列的標(biāo)準(zhǔn)規(guī)范,其作用是進(jìn)行特定數(shù)據(jù)的交流,不但具有一定的靈活性,可以讓用戶或第三方開發(fā)商應(yīng)用軟件時更加有效,而且可以保證開發(fā)商軟件數(shù)據(jù)的安全性。這些標(biāo)準(zhǔn)規(guī)范可以是經(jīng)過封裝的、應(yīng)用程序的接口函數(shù),即我們常說的API函數(shù),也可以是一些格式固定的數(shù)據(jù)文件,或者是數(shù)據(jù)庫形式。
三、計算機(jī)軟件數(shù)據(jù)接口的設(shè)計原則
在設(shè)計計算機(jī)軟件的數(shù)據(jù)接口時需要遵循以下幾個原則:
(一)滿足客戶的應(yīng)用要求
軟件數(shù)據(jù)接口可以提供何種服務(wù)功能是取決于軟件本身的,而軟件程序的應(yīng)用范圍又通過軟件數(shù)據(jù)接口進(jìn)行擴(kuò)展。設(shè)計軟件數(shù)據(jù)接口的最終目的就是為了服務(wù)于軟件應(yīng)用客戶的需求,不過如何可以最大化滿足用戶需求,則要針對具體的問題做出具體的分析。
(二)面向?qū)ο蟮脑瓌t
提高軟件數(shù)據(jù)接口設(shè)計的合理性與科學(xué)性可以大幅度提高軟件程序的使用效果與效率。在設(shè)計軟件數(shù)據(jù)接口時遵循面向?qū)ο蟮脑瓌t,將其所提供的功能盡可能的進(jìn)行準(zhǔn)確描述。而對于開發(fā)者來說,接口越復(fù)雜、越詳細(xì),效果就越好,能夠降低各個程序模塊間的耦合性,最終降低了程序開發(fā)的難度及成本。
(三)軟件數(shù)據(jù)接口的高容錯性及高健壯性
所謂的健壯性指的是處理輸入規(guī)范要求外的情況的能力,也可以稱之為魯棒性。如果一個系統(tǒng)的健壯性高,則就說明其當(dāng)有規(guī)范要求外的情況輸入時,其可以做出該輸入與規(guī)范要求不相符的判斷,并提供合理的處理方法。因為軟件數(shù)據(jù)接口與程序開發(fā)的多個方面均有聯(lián)系,因此程序接口的高容錯性及高健壯性是必不可少的設(shè)計要求之一,以便其能夠提供更為強(qiáng)大的錯誤處理機(jī)制。并且使用接口的過程中用戶可以準(zhǔn)確找出產(chǎn)生錯誤的根本原因,防止接口自身的錯誤對軟件系統(tǒng)的運行造成影響。
(四)軟件數(shù)據(jù)接口要具有可擴(kuò)展性
由于軟件接口是以軟件本身為基礎(chǔ)的。用戶對軟件的應(yīng)用程度越來越高,軟件自身也會不斷升級,那么相應(yīng)的軟件數(shù)據(jù)接口就要隨之不斷升級;而數(shù)據(jù)接口的升級又必然會對第三方開發(fā)商軟件接口的應(yīng)用帶來直接影響。所以在設(shè)計軟件數(shù)據(jù)接口時要充分考慮其擴(kuò)展性,盡量減少大規(guī)模變動對方廠商程序的機(jī)率,維護(hù)用戶的利益。
(五)盡量與業(yè)內(nèi)的標(biāo)準(zhǔn)數(shù)據(jù)接口規(guī)范相符
由于計算機(jī)的應(yīng)用已經(jīng)遍及各行各業(yè),一個行業(yè)內(nèi)可能會有多個不同的軟件開發(fā)商,每個開發(fā)商進(jìn)行
程序開發(fā)時其所用的編程語言及數(shù)據(jù)庫技術(shù)均各不相同,并且對于自己所設(shè)計的接口也會自定義其標(biāo)準(zhǔn)。這些軟件數(shù)據(jù)接口由于缺乏一個統(tǒng)一的標(biāo)準(zhǔn),會使軟件的升級、后續(xù)第三方軟件開發(fā)商的設(shè)計變得困難,并且也不利于用戶對軟件的維護(hù)與管理。因此國家針對不同的行業(yè)已經(jīng)制訂出了一部分軟件數(shù)據(jù)接口行業(yè)規(guī)范,在進(jìn)行軟件開發(fā)時要負(fù)起責(zé)任,盡可能的遵守這些規(guī)范標(biāo)準(zhǔn)。
四、計算機(jī)軟件數(shù)據(jù)接口的設(shè)計與實現(xiàn)
(一)文件交換模式
所謂的文件交換模式指的是利用特定數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)文件實現(xiàn)用戶、軟件開發(fā)商以及第三方開發(fā)商的數(shù)據(jù)交互過程。軟件開發(fā)商會先指定一個數(shù)據(jù)結(jié)構(gòu),用戶或者第三方開發(fā)商再按照該數(shù)據(jù)強(qiáng)求構(gòu)提交一個文件,一旦軟件掃描到對應(yīng)的文件后,就會按照系統(tǒng)所設(shè)定的內(nèi)部規(guī)則返回一個文件給用戶,用戶或者第三方開發(fā)接收到該文件后,根據(jù)其所制定的規(guī)則進(jìn)行文件的讀取,即可實現(xiàn)數(shù)據(jù)交互。數(shù)據(jù)文件的形式?jīng)]有特別規(guī)定,可以是任何一種,比較常用的包括ini文件或者txt文件等等。開發(fā)商對于格式文件可以自行定義,也可以利用通用的格式文件。下面我們簡單介紹一下幾種常用的文件交換模式: 1.ini文件
Ini文件是Windows系統(tǒng)自行配置的文件,不過因為Windows也提供API函數(shù),其可以操作ini文件,所以多數(shù)軟件都會利用ini文件記錄自己的配置信息。此外,操作ini文件也能夠?qū)崿F(xiàn)交互數(shù)據(jù)的作用。
2.txt文件
Txt文件也是Windows系統(tǒng)中的一種文本文件,程序開發(fā)人員在進(jìn)行軟件的開發(fā)時,一些比較特殊的格式會常常采用txt進(jìn)行記錄。例如字符串##AAA##BB##C##,以“##”分割字符串,讀?。LM.COM整理#之間的數(shù)據(jù)即可。而且?guī)缀趺糠N程序開發(fā)語言都會提供操作txt的方法。對于程式開發(fā)人員來說,文件的交換模式相對比較自由,能夠靈活的完成用戶的應(yīng)用需求,而編程語言不會對其造成限制。不過在采用這種方法時要注意,第一開發(fā)商要對第三方開發(fā)商是否提產(chǎn)接口文件進(jìn)行定期檢測。
(二)應(yīng)用程序接口函數(shù)模式
軟件數(shù)據(jù)接口函數(shù)模式指的是開發(fā)商先將一系列的函數(shù)提前定義好,把用戶或者第三方開發(fā)商需要介入的數(shù)據(jù)操作提前完成,這個過程對于用戶和第三方開發(fā)商均不開放,從而保證了數(shù)據(jù)的機(jī)密性。用戶及第三方開發(fā)商在進(jìn)行其所允許的數(shù)據(jù)操作時,只需將其提供的函數(shù)調(diào)用出來即可??梢哉f應(yīng)用程序接口函數(shù)模式是現(xiàn)階段應(yīng)用比較廣泛的接口模式,多數(shù)軟件開發(fā)商會將自己的接口函數(shù)公布出來,以便于用戶更為深入的應(yīng)用軟件產(chǎn)品。
(三)中間數(shù)據(jù)庫模式
軟件開發(fā)商會建立一個數(shù)據(jù)庫,其性質(zhì)是公用的,用戶或第三方開發(fā)商經(jīng)過一定的授權(quán)后即可訪問,雙方在遵循相應(yīng)規(guī)則的前提下通過對數(shù)據(jù)庫中數(shù)據(jù)的操作實現(xiàn)數(shù)據(jù)交互。中間數(shù)據(jù)庫模式需要用戶訪問軟件開發(fā)商所指定的數(shù)據(jù)庫格式,其形式多數(shù)為諸如Access、Oracle或者SqlServer以及sybase等現(xiàn)在各種主流數(shù)據(jù)庫。這種模式對于第三方開發(fā)商而言,其開發(fā)過程相對容易,而且數(shù)據(jù)操作的靈活性更強(qiáng)。不過這種方法需要用到額外的數(shù)據(jù)庫,而有些數(shù)據(jù)庫自身的配置就比較復(fù)雜,因此使用起來也是有一定難度的,所以這種模式的應(yīng)用范圍相對較小。
總之,計算機(jī)技術(shù)的應(yīng)用范圍越來越方泛,而計算機(jī)軟件數(shù)據(jù)接口使得一個個獨立的計算機(jī)軟件組成了一條成規(guī)模的流水線,用戶工作信息化的進(jìn)程向著整體性的方向發(fā)展,提高了行業(yè)內(nèi)大規(guī)模使用計算機(jī)軟件系統(tǒng)的可行性。
更多計算機(jī)與外設(shè)信息請關(guān)注:21ic計算機(jī)與外設(shè)頻道
評論