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