專利名稱:基于樣板代碼的代碼文件生成系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明為有關(guān)于一種代碼文件生成系統(tǒng)及其方法,特別是指一種將樣板文件轉(zhuǎn)換 為代碼文件的基于樣板代碼的代碼文件生成系統(tǒng)及其方法。
背景技術(shù):
近年來,隨著電腦的普及與軟件科技的蓬勃發(fā)展,簡單的視窗界面或稱之為圖形 使用者界面(Graphical User Interface,⑶I)已逐漸無法滿足使用者的需求,因此,如何 提高視窗界面的開發(fā)效率便成為各家廠商亟欲解決的問題。一般而言,在開發(fā)圖形使用者界面的應(yīng)用軟件時,需要先開發(fā)其視窗界面,例如
設(shè)定對話框、表格、按鈕......等界面元素,接著,再針對各界面元素撰寫相應(yīng)的程序代
碼。然而,以此方式開發(fā)該應(yīng)用軟件將無法有效提高其開發(fā)效率,而且當(dāng)視窗界面數(shù)量越 多,其維護(hù)相對而言就越困難。有鑒于此,便有廠商將視窗界面作為外掛模塊,以便與相應(yīng)的程序代碼分別開發(fā), 而以此方式所開發(fā)的應(yīng)用軟件在開啟時,便能夠以附加(plug-in)的方式顯示視窗界面, 如此一來,即可方便地對視窗界面進(jìn)行維護(hù)與修改。然而,若能夠直接根據(jù)使用“可擴(kuò)展標(biāo) 示語言”(extensible Markup Language,XML)的樣板文件來自動產(chǎn)生相應(yīng)視窗界面的程序 代碼,相較于前述方式更可大幅提高開發(fā)效率。綜上所述,可知現(xiàn)有技術(shù)中長期以來一直存在無法自動產(chǎn)生視窗界面的程序代碼 的問題,因此實有必要提出改進(jìn)的技術(shù)手段,來解決此一問題。
發(fā)明內(nèi)容
有鑒于現(xiàn)有技術(shù)存在的問題,本發(fā)明遂公開一種基于樣板代碼的代碼文件生成系 統(tǒng)及其方法。本發(fā)明所公開的基于樣板代碼的代碼文件生成系統(tǒng),包含樣板資料庫、載入模 塊、分析模塊及轉(zhuǎn)換模塊。其中,樣板資料庫用以儲存樣板文件,此樣板文件包含樣板名稱 及樣板代碼;載入模塊用以根據(jù)選擇條件自樣板資料庫載入此樣板文件的樣板名稱及樣板 代碼;分析模塊用以根據(jù)所載入的樣板名稱產(chǎn)生相應(yīng)的代碼文件;轉(zhuǎn)換模塊用以根據(jù)代碼 對照表將樣板代碼轉(zhuǎn)換為程序代碼,并且將此程序代碼寫入代碼文件。至于本發(fā)明所公開的基于樣板代碼的代碼文件生成方法,其步驟包括于樣板資 料庫建立樣板文件,此樣板文件包含樣板名稱及樣板代碼;根據(jù)選擇條件自樣板資料庫載 入樣板文件的樣板名稱及樣板代碼;根據(jù)所載入的樣板名稱產(chǎn)生相應(yīng)的代碼文件;根據(jù)代 碼對照表將樣板代碼轉(zhuǎn)換為程序代碼,并且將程序代碼寫入代碼文件。本發(fā)明所公開的系統(tǒng)與方法如上,與現(xiàn)有技術(shù)之間的差異在于本發(fā)明是通過分析 所載入的樣板文件以取得樣板名稱及樣板代碼,并且根據(jù)樣板名稱產(chǎn)生代碼文件,以及根 據(jù)代碼對照表將樣板代碼轉(zhuǎn)換為程序代碼后,將程序代碼寫入代碼文件中。通過上述的技術(shù)手段,本發(fā)明可以達(dá)到提高生成代碼文件的便利性技術(shù)功效。
圖1為本發(fā)明基于樣板代碼的代碼文件生成系統(tǒng)的方塊圖。圖2為本發(fā)明基于樣板代碼的代碼文件生成方法的流程圖。圖3為應(yīng)用本發(fā)明將樣板文件轉(zhuǎn)換為代碼文件的示意圖。圖4為應(yīng)用本發(fā)明產(chǎn)生代碼文件后進(jìn)行編輯的示意圖。圖5為應(yīng)用本發(fā)明對樣板文件進(jìn)行編輯的示意圖。主要元件符號說明101樣板資料庫102載入模塊103分析模塊104轉(zhuǎn)換模塊110程序編輯模塊111樣板編輯模塊300轉(zhuǎn)換視窗310選擇區(qū)塊320預(yù)覽元件330預(yù)覽區(qū)塊340轉(zhuǎn)換元件350狀態(tài)顯示區(qū)塊400代碼視窗410路徑輸入?yún)^(qū)塊411瀏覽元件420代碼編輯區(qū)塊421程序代碼430儲存元件431重置元件500樣板視窗510路徑輸入?yún)^(qū)塊511瀏覽元件520名稱編輯區(qū)塊521樣板名稱530代碼編輯區(qū)塊531樣板代碼540儲存元件541重置元件
具體實施例方式以下將配合圖式及實施例來詳細(xì)說明本發(fā)明的實施方式,借此對本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題并達(dá)成技術(shù)功效的實現(xiàn)過程能充分理解并據(jù)以實施。在說明本發(fā)明所公開的基于樣板代碼的代碼文件生成系統(tǒng)及其方法之前,先對本 發(fā)明所自行定義的名詞進(jìn)行說明。在本發(fā)明中所提到的樣板文件是指“可擴(kuò)展標(biāo)示語言 (extensible Markup Language,XML) ”的文件,該樣板文件中的第一行內(nèi)容為“〈? xml version = " 1.0" encoding = " UTF-8" >”,而且樣板文件中包含樣板名稱(例如: "IoginDlg")及樣板代碼(例如:"<base>. · · </base> “),在實際實施上,所述樣板文件可 儲存于樣板資料庫中,并且為標(biāo)簽型態(tài)的結(jié)構(gòu)化文件架構(gòu)。特別要說明的,在樣板文件中
所出現(xiàn)的標(biāo)簽,如“<baSe>. . .〈/base〉”,甚至是標(biāo)簽中的屬性名稱,如“name”......等
皆是由使用者所自行定義,XML只提供基本的語法讓使用者可以用來表示資料的結(jié)構(gòu),由于 XML及其語法皆為現(xiàn)有技術(shù),故在此不再多作贅述。以下配合圖式對本發(fā)明基于樣板代碼的代碼文件生成系統(tǒng)及其方法作進(jìn)一步的 說明,請參閱圖1,圖1為本發(fā)明基于樣板代碼的代碼文件生成系統(tǒng)的方塊圖,包含樣板 資料庫101、載入模塊102、分析模塊103及轉(zhuǎn)換模塊104。其中,樣板資料庫101用以儲 存樣板文件,在實際實施上,樣板資料庫101中可儲存多個樣板文件,且各個樣板文件皆 分別包含樣板名稱及樣板代碼,由于所述樣板文件已于前述自行定義的名詞中作說明,故 在此不再作贅述。特別要強(qiáng)調(diào)的是,此樣板資料庫101可以是關(guān)連式資料庫(Relational Database),并可通過結(jié)構(gòu)化查詢語言(Structured Query Language, SQL)來查詢樣板資料 庫101中的樣板文件。載入模塊102用以根據(jù)選擇條件自樣板資料庫101載入樣板文件的樣板名稱及 樣板代碼,所述選擇條件記錄使用者所選擇的樣板文件,舉例來說,使用者輸入所需的樣板 文件的存放路徑O^th),并且將此存放路徑作為選擇條件,如此一來,載入模塊102即可 根據(jù)此選擇條件載入所需樣板文件的樣板名稱及樣板代碼,舉例來說,假設(shè)選擇條件記錄 為 “c:\a_ xml,,,且樣板文件"a. xml” 的內(nèi)容包含“<Package name =" uibuilder. demo, pi"name ="loginDig"><base>. . .〈/base〉,,,則載入模塊102將根據(jù)此選擇條件載入樣板 文件‘‘a(chǎn). xml,,的樣板名稱 “l(fā)oginDig” 及樣板代碼 “〈kise〉. · · </base>,,。分析模塊103用以根據(jù)所載入的樣板名稱來產(chǎn)生相應(yīng)的代碼文件,以前例而言, 由于載入模塊102所載入的樣板名稱為“l(fā)oginDlg”,以及所載入樣板代碼為“〈base〉. . . </ base〉”,那么分析模塊103將根據(jù)此樣板名稱產(chǎn)生相應(yīng)的代碼文件,如“l(fā)0ginDlg. Java", 其中代碼文件的檔名即為樣板名稱“l(fā)oginDlg”,而副檔名則為“Java”。特別要說明的是, 分析模塊103所產(chǎn)生的代碼文件是內(nèi)容為空的檔案,也就是說,尚未有內(nèi)容儲存于該代碼 文件之中。轉(zhuǎn)換模塊104用以根據(jù)代碼對照表將樣板代碼轉(zhuǎn)換為程序代碼,并且將此程 序代碼寫入代碼文件,所述代碼對照表記錄樣板代碼與爪哇(Java)代碼的對應(yīng)關(guān)系, 舉例來說,代碼對照表中記錄樣板代碼“〈FlowLayout preferred = "χ, y”>”與爪哇 (Java)代碼“· setPreferedSize(new Dimension (χ, y)) ” 相對應(yīng),因此轉(zhuǎn)換模塊 104 當(dāng) 偵測到 “〈FlowLayout preferred = “50,25” >” 時,將轉(zhuǎn)換為“· setPreferedSize (new Dimension(50,25))”,其中數(shù)值“50”及數(shù)值“25”分別代表寬及高的像素值。特別要說明 的是,在實際的轉(zhuǎn)換過程中,轉(zhuǎn)換模塊104會偵測樣板代碼中的標(biāo)簽,以及該標(biāo)簽中的屬性 名稱及屬性值,以樣板代碼“〈FlowLayout preferred = " x,y〃 >”為例,所偵測到的標(biāo)簽為“〈FlowLayout〉”、屬性名稱為“〈preferred〉”及屬性值為“x,y”。稍后將配合實施例詳 細(xì)說明樣板代碼轉(zhuǎn)換為爪哇(Java)代碼的方式。除此之外,本發(fā)明基于樣板代碼的代碼文件生成系統(tǒng)更可包含程序編輯模塊 110及樣板編輯模塊111,其中,程序編輯模塊110用以顯示代碼文件中的程序代碼,并且允 許使用者對此程序代碼進(jìn)行編輯,除此之外,當(dāng)使用者編輯完畢后,程序編輯模塊110可將 編輯后的程序代碼以覆寫的方式儲存于代碼文件中。特別要說明的是,本發(fā)明并未以此限 定編輯完畢后的儲存方式,在實際實施上,亦可將編輯后的程序代碼儲存于另一個檔案中。樣板編輯模塊111用以允許對樣板資料庫101中的樣板文件的樣板名稱及樣板代 碼進(jìn)行編輯,舉例來說,使用者可自樣板資料庫101中開啟欲編輯的樣板文件,用以對樣板 文件中的樣板名稱及樣板代碼進(jìn)行編輯,并且于編輯完畢后回存于樣板資料庫101中。如圖2所示,圖2為本發(fā)明基于樣板代碼的代碼文件生成方法的流程圖,包含下列 步驟于樣板資料庫101建立樣板文件,此樣板文件包含樣板名稱及樣板代碼(步驟210); 根據(jù)選擇條件自樣板資料庫載入樣板文件的樣板名稱及樣板代碼(步驟220);根據(jù)所載入 的樣板名稱產(chǎn)生相應(yīng)的代碼文件(步驟230);根據(jù)代碼對照表將樣板代碼轉(zhuǎn)換為程序代 碼,并且將此程序代碼寫入代碼文件(步驟M0)。除此之外,更可在步驟210之后,允許對 樣板資料庫101中的樣板文件的樣板名稱及樣板代碼進(jìn)行編輯(步驟211);以及于步驟 240之后,顯示代碼文件中的程序代碼,并且允許對此程序代碼進(jìn)行編輯(步驟Ml)。通過 上述步驟,即可通過分析所載入的樣板文件以取得樣板名稱及樣板代碼,并且根據(jù)樣板名 稱產(chǎn)生代碼文件,以及根據(jù)代碼對照表將樣板代碼轉(zhuǎn)換為程序代碼后,將程序代碼寫入代 碼文件中,如此一來,使用者即可方便且快速地將樣板代碼轉(zhuǎn)換為程序代碼,以利后續(xù)的程 序代碼的編譯處理(Compiler),進(jìn)而達(dá)到有效提高生成代碼文件的便利性。以下配合圖3至圖5以實施例方式進(jìn)行如下說明。首先,如圖3所示意,圖3為應(yīng) 用本發(fā)明將樣板文件轉(zhuǎn)換為代碼文件的示意圖,包含轉(zhuǎn)換視窗300、選擇區(qū)塊310、預(yù)覽元 件320、預(yù)覽區(qū)塊330、轉(zhuǎn)換元件340及狀態(tài)顯示區(qū)塊350。特別要說明的是,本發(fā)明并未以 此限定轉(zhuǎn)換視窗300之中所包含的元件數(shù)量及類型。承上所述,當(dāng)使用者欲將XML的樣板文件轉(zhuǎn)換為代碼文件時,可通過轉(zhuǎn)換視窗300 來實現(xiàn),舉例來說,使用者可通過選擇區(qū)塊310來設(shè)定選擇條件,如以下拉式選單來選擇 樣板文件的檔案名稱或儲存路徑,此時載入模塊102將根據(jù)此選擇條件自樣板資料庫101 中載入所選擇的樣板文件(例如“a. xml”)的樣板名稱及樣板代碼,舉例來說,假設(shè)樣板文 件“a. xml”的部分內(nèi)容如下:"< ? xml version = “ 1.0〃 encoding = “ UTF-8" ? >〈Package name = “ uibuilder. demo, pi“ name = “ IoginDlg" ><base>. . . </base>"載入模塊102將根據(jù)此樣板文件內(nèi)的標(biāo)簽“〈lockage〉,,,載入屬性值“l(fā)oginDlg,, 作為樣板名稱,并且載入標(biāo)簽“〈base〉”至“〈/base〉”的所有內(nèi)容作為樣板代碼。在實際實 施上,使用者亦可通過點選預(yù)覽元件320于預(yù)覽區(qū)塊330中顯示此樣板文件的樣板名稱及 樣板代碼,用以確認(rèn)是否為欲轉(zhuǎn)換的樣板文件,若使用者確認(rèn)無誤后,即可通過點選轉(zhuǎn)換元 件340開始進(jìn)行轉(zhuǎn)換。此時,分析模塊103將根據(jù)上述所載入的樣板名稱來產(chǎn)生相應(yīng)的代碼文件,以前例而言,由于載入模塊102所載入的樣板名稱為“l(fā)oginDlg”,那么分析模塊103將根據(jù)此 樣板名稱產(chǎn)生相應(yīng)的代碼文件,如“l(fā)oginDlg. Java”,其中代碼文件的檔名即為樣板名稱 “l(fā)oginDlg”,而副檔名則可預(yù)設(shè)為“Java”。特別要說明的是,分析模塊103所產(chǎn)生的代碼文 件“l(fā)oginDlg. Java”是內(nèi)容為空的檔案,也就是說,尚未有內(nèi)容儲存于該代碼文件之中。接下來,轉(zhuǎn)換模塊104根據(jù)預(yù)設(shè)的代碼對照表將樣板代碼轉(zhuǎn)換為程序代碼,并且 將此程序代碼寫入代碼文件,假設(shè)預(yù)設(shè)的代碼對照表所記錄的樣板代碼如下
權(quán)利要求
1.一種基于樣板代碼的代碼文件生成系統(tǒng),其特征在于,包含一樣板資料庫,用以儲存一樣板文件,該樣板文件包含一樣板名稱及一樣板代碼;一載入模塊,用以根據(jù)一選擇條件自該樣板資料庫載入該樣板文件的該樣板名稱及該 樣板代碼;一分析模塊,用以根據(jù)所載入的該樣板名稱產(chǎn)生相應(yīng)的一代碼文件;及一轉(zhuǎn)換模塊,用以根據(jù)一代碼對照表將該樣板代碼轉(zhuǎn)換為一程序代碼,并且將該程序 代碼寫入該代碼文件。
2.如權(quán)利要求1所述的基于樣板代碼的代碼文件生成系統(tǒng),其特征在于,該系統(tǒng)更包 含一程序編輯模塊,用以顯示該代碼文件中的該程序代碼,并且允許對該程序代碼進(jìn)行編 輯。
3.如權(quán)利要求1所述的基于樣板代碼的代碼文件生成系統(tǒng),其特征在于,該系統(tǒng)更包 含一樣板編輯模塊,用以允許對該樣板資料庫中的該樣板文件的該樣板名稱及該樣板代碼 進(jìn)行編輯。
4.如權(quán)利要求1所述的基于樣板代碼的代碼文件生成系統(tǒng),其特征在于,該樣板文件 為標(biāo)簽型態(tài)的結(jié)構(gòu)化文件架構(gòu)。
5.如權(quán)利要求1所述的基于樣板代碼的代碼文件生成系統(tǒng),其特征在于,該程序代碼 為可進(jìn)行編譯的計算機(jī)語言。
6.一種基于樣板代碼的代碼文件生成方法,其特征在于,其步驟包括于一樣板資料庫建立一樣板文件,該樣板文件包含一樣板名稱及一樣板代碼;根據(jù)一選擇條件自該樣板資料庫載入該樣板文件的該樣板名稱及該樣板代碼;根據(jù)所載入的該樣板名稱產(chǎn)生相應(yīng)的一代碼文件;及根據(jù)一代碼對照表將該樣板代碼轉(zhuǎn)換為一程序代碼,并且將該程序代碼寫入該代碼文件。
7.如權(quán)利要求6所述的基于樣板代碼的代碼文件生成方法,其特征在于,該方法更包 含顯示該代碼文件中的該程序代碼,并且允許對該程序代碼進(jìn)行編輯的步驟。
8.如權(quán)利要求6所述的基于樣板代碼的代碼文件生成方法,其特征在于,該方法更包 含允許對該樣板資料庫中的該樣板文件的該樣板名稱及該樣板代碼進(jìn)行編輯的步驟。
9.如權(quán)利要求6所述的基于樣板代碼的代碼文件生成方法,其特征在于,該樣板文件 為標(biāo)簽型態(tài)的結(jié)構(gòu)化文件架構(gòu)。
10.如權(quán)利要求6所述的基于樣板代碼的代碼文件生成方法,其特征在于,該程序代碼 為可進(jìn)行編譯的計算機(jī)語言。
全文摘要
本發(fā)明公開了一種基于樣板代碼的代碼文件生成系統(tǒng)及其方法,通過分析所載入的樣板文件以取得樣板名稱及樣板代碼,并且根據(jù)樣板名稱產(chǎn)生代碼文件,以及根據(jù)代碼對照表將樣板代碼轉(zhuǎn)換為程序代碼后,將程序代碼寫入代碼文件中,達(dá)成提高生成代碼文件的便利性的技術(shù)功效。
文檔編號G06F9/44GK102073484SQ20091022514
公開日2011年5月25日 申請日期2009年11月25日 優(yōu)先權(quán)日2009年11月25日
發(fā)明者蔡敏捷, 邱全成 申請人:英業(yè)達(dá)股份有限公司