陳紅彭婕
(大慶油田信息技術(shù)公司物聯(lián)網(wǎng)分公司,黑龍江 大慶163000)
在當(dāng)今的社會發(fā)展下,軟件在各行各業(yè)已經(jīng)成了不可替代的一種產(chǎn)品了,尤其是一些辦公軟件,為人們減輕了不少的煩惱和工作量,在石油行業(yè)更是如此,石油專業(yè)的應(yīng)用軟件更是起著無可替代的作用,要想使大慶油田在整個(gè)石油行業(yè)中有突出的競爭力,石油軟件開發(fā)能力上的提升是不容忽視的。
現(xiàn)在單就國內(nèi)的石油行業(yè)軟件來說,我們遠(yuǎn)遠(yuǎn)不及國外的發(fā)展現(xiàn)狀,我們的技術(shù)水平遠(yuǎn)遠(yuǎn)落后于國外的哈里伯頓等大型企業(yè),現(xiàn)在我國的軟件普遍存在的問題就是重復(fù)利用率差,編碼規(guī)則沒有統(tǒng)一,這在大慶油田的鉆井,采油等方面表現(xiàn)他必然明顯。另外在開發(fā)人員的質(zhì)量和數(shù)量上跟國外也是不可匹敵的。
就目前的軟件發(fā)展形式看,軟件開發(fā)比較趨向模塊化,工程化,標(biāo)準(zhǔn)化等方向,無論是國內(nèi)還是國外,只要是有影響的軟件,他們都可以根據(jù)用戶的需求隨時(shí)做出適當(dāng)?shù)恼{(diào)整,及時(shí)的滿足用戶的生產(chǎn)生活要求,這樣的開發(fā)極大的提高了公司的軟件競爭力。
Eclipse可以準(zhǔn)確的說是一個(gè)軟件的開發(fā)項(xiàng)目,專門對開放的源代碼進(jìn)行開發(fā),同時(shí)它也是利用Java語言的一個(gè)具有擴(kuò)展性強(qiáng)的平臺,我們也可以說Eclipse是由一些簡單的框架與服務(wù)構(gòu)成,完全是通過一些插件進(jìn)行開發(fā)的,所以Eclipse又有一種說法,叫做插件集,正是這個(gè)小小的插件集,得到了廣大開發(fā)者的歡迎與熱愛,隨著Eclipse的慢慢發(fā)展,就逐漸有了新的更新,就是這里重點(diǎn)介紹的MyEclipse平臺,利用這個(gè)平臺,我們可以在結(jié)合Java語言的基礎(chǔ)上,對數(shù)據(jù)庫就可以進(jìn)行開發(fā)了。MyEclipse這個(gè)平臺具有非常強(qiáng)大的集成開發(fā)功能,其中包括了代碼的編譯、運(yùn)行、測試和調(diào)試等功能,并且它完全支持本文所用到的數(shù)據(jù)庫MySQL。
MyEclipse的特點(diǎn)可以歸結(jié)為以下7條:
1)J2EE模型
2)Web技術(shù)的開發(fā)擴(kuò)展工具
3)EJB開發(fā)工具
4)服務(wù)器的連接器
5)J2EE項(xiàng)目服務(wù)
6)數(shù)據(jù)庫服務(wù)
7)幫助MyEclipse進(jìn)行整合
對于上面的這7個(gè)特點(diǎn)功能來說,MyElipse中均含有相應(yīng)的插件來進(jìn)行實(shí)現(xiàn),MyEclipse在結(jié)構(gòu)上是可以模塊化的,開發(fā)設(shè)計(jì)人員是可以在不影響其他模塊的功能的情況下,對其中的任一個(gè)模塊進(jìn)行修改和擴(kuò)展庫
J2EE是一種標(biāo)準(zhǔn)與規(guī)范,是由Sun公司提出來開發(fā)的,它主要在企業(yè)級別的開發(fā)上應(yīng)用廣泛,這個(gè)標(biāo)準(zhǔn)是可以在Java平臺上實(shí)現(xiàn)的,這就確保了Java的諸多優(yōu)勢可以在J2EE的平臺上得到體現(xiàn)。這個(gè)標(biāo)準(zhǔn)目前已經(jīng)成為企業(yè)開發(fā)者的一種行為規(guī)范了,J2EE平臺的發(fā)展目的是使企業(yè)在開發(fā)系統(tǒng)的時(shí)候盡量縮小資金,縮短軟件上市的時(shí)間。J2EE體系不單為廣大使用者提供了應(yīng)用規(guī)范模板,還為他們塑造了一些開發(fā)上的規(guī)范,程序開發(fā)人員可以根據(jù)J2EE提供的規(guī)范標(biāo)準(zhǔn)中的中間架構(gòu),對可靠性高與擴(kuò)展性強(qiáng)并存的軟件系統(tǒng)進(jìn)行開發(fā)了,這樣就可以很容易的滿足了企業(yè)的不同的需求。這樣不但降低了程序開發(fā)的繁瑣程度,還大大減少了開發(fā)系統(tǒng)的資金的投入。
大慶油田的軟件開發(fā)平臺可以采用、借鑒上面所說的平臺架構(gòu),但是要注意融入石油工程的專業(yè)特點(diǎn),使其能夠更好的為大慶油田相關(guān)軟件應(yīng)用開發(fā)平臺的建設(shè)服務(wù)。
分層設(shè)計(jì)的出現(xiàn),使得應(yīng)用軟件的發(fā)展與突破變得迅速起來。其中,3層架構(gòu)應(yīng)用的比較多,而且技術(shù)較為成熟,整個(gè)業(yè)務(wù)被分為3個(gè)層次:表現(xiàn)層、業(yè)務(wù)邏輯層以及數(shù)據(jù)訪問層。在大慶油田軟件開發(fā)方面,MVC(Model-View-Control模型-視圖-控制)模式被廣泛應(yīng)用,這種架構(gòu)的層次是分為:模型(業(yè)務(wù)邏輯)層、視圖(表現(xiàn))層、控制層。而它的實(shí)質(zhì)都是在體現(xiàn)分層思想。
視圖是用戶看到并與之交互的界面。MVC的視圖有很多種,能為不同的應(yīng)用程序服務(wù)。不論其中的數(shù)據(jù)如何,視圖并沒有做出真正的處理,僅是一種輸出數(shù)據(jù)并允許用戶操縱的方式。模型代表企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則。模型在MVC中擁有最多的處理任務(wù)。模型在返回?cái)?shù)據(jù)的時(shí)候,與數(shù)據(jù)格式無關(guān),這一特點(diǎn)使模型可以為多個(gè)視圖提供數(shù)據(jù)。控制器接受用戶的輸入并調(diào)用模型和視圖去完成用戶的需求,當(dāng)用戶頁面中做出操作時(shí),控制器自身是沒有輸出的,并且不做任何處理。僅按照請來決定調(diào)用哪個(gè)模型構(gòu)件完成處理,然后選擇相應(yīng)的視圖來顯示返回的數(shù)據(jù)。
分層的設(shè)計(jì)可以把復(fù)雜的軟件功能簡單化,通過分類、抽取以及封裝,把軟件功能放在不同的層上面,層與層之間存在接口,接口保持不變就不會影響其他的層,這樣的方法使得系統(tǒng)的擴(kuò)展以及維護(hù)變得簡單的多。
插件式的設(shè)計(jì)思想應(yīng)用也較為廣泛,Eclipse以及普元公司的EOS,都是通過插件式設(shè)計(jì)來實(shí)現(xiàn)軟件的開發(fā)與信息集成的。一個(gè)插件就是一個(gè)最小的功能單元,可見性可以變換,甚至可以動態(tài)變化。模塊之間需要標(biāo)準(zhǔn)的接口來實(shí)現(xiàn)連接,這樣連接因?yàn)橐Ш隙炔桓?,是利于擴(kuò)展系統(tǒng)功能以及進(jìn)行維護(hù)。各個(gè)模塊是可插拔的,是基于松耦合的設(shè)計(jì)理念建立的,單個(gè)模塊的變動不會影響整個(gè)系統(tǒng)的變動。
插件式設(shè)計(jì)的應(yīng)用程序由應(yīng)用程序框架、插件接口、插件和公共函數(shù)庫四部分組成。實(shí)際的設(shè)計(jì)會更比上述的四部分復(fù)雜一些,但原理都是一樣的。應(yīng)用程序框架負(fù)責(zé)應(yīng)用程序的整體運(yùn)作,它在適當(dāng)?shù)臅r(shí)候調(diào)用一些插件,來完成真正的功能。插件接口是一個(gè)協(xié)議,可以是IDL描述、頭文件或者一段文字說明。插件是完成實(shí)際功能的實(shí)體,會按照接口協(xié)議的要求實(shí)現(xiàn),而實(shí)現(xiàn)的方式及內(nèi)容由插件自己決定。公共函數(shù)庫是一組函數(shù)或者類,可以被應(yīng)用程序框架和插件調(diào)用,一般是一個(gè)獨(dú)立的動態(tài)庫。
通過以上的分析,軟件分層、插件式等技術(shù)都已經(jīng)比較成熟了,這為搭建一個(gè)石油工程軟件應(yīng)用開發(fā)平臺奠定了技術(shù)基礎(chǔ)。目前,大慶油田軟件開發(fā)常使用的軟件開發(fā)工具有:Microsoft Visual Studio,Microsoft.net等。我們不斷積累開發(fā)經(jīng)驗(yàn),進(jìn)一步消化吸收技術(shù)的精髓,達(dá)到熟練使用。
設(shè)計(jì)建設(shè)一個(gè)開放的、可擴(kuò)展的平臺是個(gè)系統(tǒng)的工程。在技術(shù)方面要考慮開放性、可擴(kuò)展性、安全性、穩(wěn)定性等等。而規(guī)劃組織方面也要注意一些原則:統(tǒng)一規(guī)劃、統(tǒng)一標(biāo)準(zhǔn)、統(tǒng)一實(shí)施、先簡后繁、分步實(shí)現(xiàn)。想要完成這一工程需要長期發(fā)展,先建立簡單的架構(gòu)體系,再不斷地發(fā)展完善。大慶油田的單位部門眾多,開發(fā)使用的軟件也較多,要充分發(fā)揮各部分的優(yōu)勢,每一個(gè)專業(yè)之間協(xié)同,分析業(yè)務(wù)及需求,完成共用功能,通過把軟件進(jìn)行封裝,形成一個(gè)個(gè)的組件。如井身結(jié)構(gòu)圖、綜合錄井圖、測井成果圖、GIS導(dǎo)航圖等。
綜上所述,軟件復(fù)用的技術(shù)可以以較小的成本實(shí)現(xiàn)大慶油田軟件研發(fā)的組件化、模塊化、松耦合,通過這一技術(shù)使已經(jīng)使用或?qū)⒁_發(fā)的應(yīng)用之間實(shí)現(xiàn)互相通訊、協(xié)同工作,研發(fā)出適合大慶油田整個(gè)企業(yè)可以應(yīng)用的軟件應(yīng)用開發(fā)平臺,使原來各個(gè)獨(dú)立的應(yīng)用系統(tǒng)相互連通,不再存在信息孤島,完成信息資源整合以及信息共享,實(shí)現(xiàn)協(xié)同辦公。