KOOF

KOOF

KOOF,計算機程式語言術語,見於JAVA語言。

基本信息

公司簡介

北京世紀金政信息技術有限公司作為一家套用軟體開發商和套用系統集成商,本著高技術、高起點、高要求的發展原則,發揚信息產業的獨特優勢,致力於信息產業領域產品的研製、開發、工程調試和售後服務。主要業務集中在電子政務和電子商務套用領域,以自主開發的套用軟體產品為基礎,針對政府和企業網路建設的實際需求,推出多個專業領域的解決方案。公司正朝著以技術創新為基礎,迅速形成產業優勢的方向發展。

1. 前言

1.1. 開發者的挑戰

伴隨著信息管理系統的發展,它所需要解決的問題也越來越複雜,變化成為它最主要的特性之一。這種變化包含以下幾個方面
● 基本商業規則的變化
各行各業為了在競爭中立於不敗之地,都千方百計的細分市場,不斷變化自身的業務規則以滿足不同的市場需要。
● 基礎IT設施的變化
從作業系統的變化到資料庫的變化到套用伺服器的變化,這種變化會經常發生。
● 使用涉眾的變化
從當地到本國到全球,目標涉眾在不斷增加。

1.2. 開發平台的現狀

為了解決開發者面臨的挑戰,不同的商業公司提出了自己的解決方案,這類平台主要分成兩種:
● 開發型平台
這類平台為開發者提供了以組件為單位的開發支持,它們一般認為自己的組件技術能夠基本解決開發者90%以上的套用,但是使用這類組件的學習成本較高。平台的開發商一般都試圖禁止底層實現細節,但是這樣會導致另外一些細節問題的產生。另一方面,開發者將會被綁定在這類平台上從而失去了主動開發的能力,自身的核心價值只能通過該平台體現。
● 配置型平台
這類平台一般是為某類專用系統而定製的,平台提供商提供了套用的配置能力,但是這類平台對擴展開發不能提供有力的支持,並且不支持多人的協同開發,因此導致系統開發商花費很大的成本在定製開發上,最終得不償失。

1.3. KOOF 3.0的核心價值

KOOF 3.0開發平台是一款以開發為基礎,以配置為手段的可擴展的業務套用開發平台。管理軟體的核心價值是用戶的需求,當開發商能夠以工具的形式積累自身多年的用戶需求,其核心價值是顯而易見。KOOF 3.0正是以這個出發點為主旨而設計開發的,它使得任何一個開發商都可以自己來開發用於開發套用的工具。
另一方面,KOOF 3.0是完全基於開源軟體的一個平台,其本身並不試圖封裝過多的開發細節,而是依靠開源社區的力量,提供對軟體的最大支持。這使得開發商可以很輕易的找到適合的人員使用KOOF 3.0進行開發或對KOOF 3.0進行開發。
再次,KOOF 3.0以不同的形式對多作業系統、多資料庫、多套用伺服器和多語言提供了支持,使得開發商可以無任何後顧之憂的來面對形形色色的用戶。

2. KOOF 3.0開發平台簡介

2.1. KOOF 3.0的設計思路

KOOF 3.0認為設計是因地制宜的,是隨需應變的。它不試圖將用戶固化在所謂的三層結構或者是MVC框架下。它相信設計模式的存在,而每個“兩階段組件”都是用戶定義的一種模式。它希望開發商能夠以最簡單的設計完成用戶的需求,因此在KOOF 3.0中我們可以看到SPRING、看到HIBERNATE、看到STRUTS。
KOOF 3.0不認為目前存在任何一種形式或者結構能夠真正意義上衝破“銀彈理論”,任何認為開發軟體如同搭積木的理論其本質只能是金玉其外。軟體理論的發展和其它任何領域的理論發展都是一樣的,是需要經過漫長的歲月沉澱而逐步形成的,是必須經過一個否定再否定的過程而日臻完善的。當然,我們不反對真正意義上的天才的存在,他們能夠從巨觀上定義一種思想,一套理論。但是讓這些空中樓閣真正落地的是實幹家,而所有這些實幹家沒有哪個不是經歷數載甚至一生的拼搏才能對其畢生追尋的信仰有所詮釋。因此,從這個意義上看,KOOF 3.0並不承諾它能對某種開發帶來多少百分比的效率的提升,它要求使用者本身和KOOF 3.0一樣去積累、去實踐。

2.2. KOOF 3.0的設計結構

KOOF 3.0是以微核心思路建構的一個業務套用運行平台,它以容器的形式提供了組件在套用級的運行和管理環境,這些基礎服務環境包括:
● 可插拔的套用設計時IDE;
● 純JAVA的J2EE運行時套用;
● 基礎WEB層許可權校驗;
● 套用展現界面,
● 包括基本登入過程、樹形功能展現界面和套用展現界面;
● 基本套用的部署和快取機制;多語言環境的自動偵測和轉換;
● 多資料庫訪問的架構策略。
平台通過以上服務解決了一般性套用的基礎結構,達到了對於多作業系統、多資料庫、多套用伺服器和多語言的支持。
平台是基礎、是框架、是環境,但是在其上工作的組件是真正的主角,平台和組件共同組成我們需要的開發工具,在KOOF 3.0平台上可以運行如下三類組件:
● KOOF 3.0兩階段組件
KOOF 3.0兩階段組件是平台的核心組件。這種組件以工程的方式定義一類對象,並設定了這類對象的兩個階段-設計階段和運行階段。在設計階段,通過對業務對象的展現和保存完成設計活動,通過對它的校驗和發布完成部署。在運行階段,它可以選擇性接受平台提供的各種服務,並完成指定的功能。
這類組件的核心思想是設計器建模驅動運行期的運行,支持無代碼開發和使用代碼的調整。目前平台中提供的這些組件體現了KOOF 3.0對於套用開發的模型構造思路,即對於一般性管理軟體的解決方案。但同時這些組件還只能覆蓋部分管理軟體的解決方案,不能滿足所有的需求。KOOF 3.0對此的解決方案就是開放,以開放的心態接受各種形式的模型。而這點正是它協助開發商積累模型經驗的主要優勢。
● KOOF 3.0基礎數據組件
基礎數據組件指的是維護一組數據關係的組件,這類組件包括被最佳化過的資料庫結構、對於數據關係的維護界面和一套設計完善的對於數據關係的訪問接口。KOOF 3.0把這類組件稱為基礎數據組件,為套用系統提供數據支持。
● KOOF 3.0套用開發組件
套用開發組件指對於開發套用的常見行為、方式提供封裝、從而完成特定功能的一類組件。
通過三類組件從不同維度完成對於系統的分割,並且以自身的方式提供對於套用開發的支持。

2.3. KOOF 3.0的主要用途

KOOF3.0適合以下幾種用戶進行系統規劃和構造:
● 基本的企業化信息系統的構造人員
KOOF 3.0的三類組件提供了基本的企業信息化構造的能力,構造人員可以通過配置完成流程建立,協同工作,信息檢索和許可權控制。
● 隨需應變的系統開發團隊
為開發團隊提供基本的開發框架,伴隨著三類組件的合理運用,以及在組件中注入的個性化代碼,確保團隊具有即使回響和隨需應變的能力。
● 在垂直行業建立核心價值的開發團隊
以兩階段組件為基礎,建立可以對特定行業進行覆蓋的KOOF 3.0擴展系統,進一步降低開發成本,確保一致性的軟體開發質量。

3. KOOF 3.0基礎平台簡介

正如前文提到,KOOF3.0平台在設計之初,其著眼點就是要構造一個可擴展、可持續開發的平台,平台本身是提供了一個用於運行組件的基本環境,並且完成一類基礎功能。
● KOOF 3.0兩階段組件設計IDE

圖:集成的IDE環境,可在IDE中直接調式開發的套用
它是基本的兩階段組件的設計平台,提供了組件顯示、保存、校驗和部署的框架,並且為組件的配置管理信息和調試方式提供了支持。它使用Eclipse RCP的形式開發,運行在其上的外掛程式系統根據自身需要完成模型數據的設計和部署。兩階段組件的核心意圖是將可以參數化的系統通過配置的方式在系統中建立,並且運行在J2EE的環境中,這使得軟體最大限度的保證了一致性的質量。當然,它需要設計者對需要建立的系統有深刻的認識和全面的分析,並且能夠熟練的利用J2EE的各種標準完成各種形式的部署。目前對於兩階段組件,開發平台提供資料庫訪問、修改資源檔案、生成JAVA位元組碼並拷貝到伺服器端、向伺服器端拷貝檔案、部署HIBERNATE HBM檔案,部署SPRING配置檔案等工具協助兩階段組件完成部署。當然,用戶自定義的兩階段組件還可以根據需要自定義部署過程。
● 純JAVA的J2EE運行套用
在伺服器端KOOF 3.0是一個標準的J2EE的應用程式,它使用的全部是於容器無關的輕量級組件技術,從而保證它可以被部署到多種套用伺服器上,並且運行到多個作業系統中。
● 基礎WEB層許可權校驗
許可權問題是任何套用系統必然需要考慮的問題,目前平台上實現了基於一維角色的許可權管理系統,並且提供了ACL訪問控制的API接口。在許可權系統之上,提供了對於WEB資源的認證和授權。
● 套用展現界面
圖:套用展現界面
一個基本的WEB顯示界面,包括基本登入過程、樹形功能展現界面,功能選擇列表(可配置、帶許可權授權)、一個可定製的捷徑桌面、一個顯示系統概要信息的頂部標題欄。
圖:流程監控
● 平台級數據的部署和快取機制
平台級數據目前包括許可權信息、選單信息,平台提供統一的快取機制,提高系統的回響速度。同時,這個機制是可以擴展的,用戶可以通過註冊添加其它的平台級數據,完成數據的快取。另一方面,考慮到數據遷移的問題,平台集數據支持導入和導出功能,方便平台的使用者在不同的伺服器上部署套用。
● 多語言環境的自動偵測和轉換
多語言環境有兩種形式,一種是使用第三方語言建立套用系統,另一種是套用系統需要工作在多國語言的環境下。無論在那種形式下,對於多語言開發的一個主要難題就是開發商都會被陷入翻譯的汪洋之中。對於這種問題,KOOF 3.0提出了單一語言版本,結合編碼翻譯工具和翻譯替換工具解決多語言環境的方案。在這個方案中,開發商只要在開發前遵循幾個很簡單的規則來進行開發,所有的編碼轉換和翻譯過程可以交給KOOF 3.0來完成(當然,KOOF 3.0需要用戶提供語言的對照翻譯字典)。另一方面,對於多語言的套用系統,資源檔案的翻譯只是一方面,還有很多其它需要考慮的問題,例如人員姓名信息的處理、JS檔案中文的處理等等,所有這些KOOF3.0都會提供解決方案。
● 多資料庫訪問的架構策略
平台底層使用HIBERNATE完成對於持久化信息的保存,基本的多資料庫策略也是基於它完成的。但是,由於HIBERNATE的局限性,對於複雜的查詢支持不十分完備,因此,系統使用了一套基於SPRING的資料庫分離結構,完成對於HIBERNATE方案不足的補充,並且經過測試,這種結構和原有的HIBERNATE的方式可以很好的協同工作。

相關詞條

相關搜尋

熱門詞條

聯絡我們