一種基于類庫的代碼生成器及其實現方法
【專利摘要】本發(fā)明提供的一種基于類庫的代碼生成器及其實現方法,所述代碼生成器包括:用戶界面模塊創(chuàng)建模塊、用戶界面模塊和擴展類庫;通過將所述代碼生成器的應用嵌入到瀏覽器中,使用用戶界面模塊接收用戶輸入的數據信息,根據預設的類庫調用指令把從所述用戶界面模塊接收到的數據信息生成代碼,并將生成的代碼通過用戶界面模塊進行顯示。所述代碼生成器僅通過瀏覽器便可以實現可以跨平臺應用,并且其不依賴外部的數據庫或者外部的類,使用者不需要熟悉數據庫設計技術和數據庫軟件方面的知識便可以對其進行使用,從而在降低了代碼生成器使用的難度之外,提高了軟件開發(fā)的速度和效率。
【專利說明】一種基于類庫的代碼生成器及其實現方法
【技術領域】
[0001] 本發(fā)明涉及網絡信息安全領域,尤其涉及的是一種基于類庫的代碼生成器及其實 現方法。
【背景技術】
[0002] 首先,傳統(tǒng)的代碼生成工具本身就是一個軟件,必須在特定的軟件環(huán)境下才能運 行,當需要更換平臺或者變更工作環(huán)境的時候需要重新安裝很不方便,不能體現快捷自動 化的優(yōu)點,比如codesmith必須依賴微軟的· net環(huán)境。
[0003] 其次,傳統(tǒng)的代碼生成必須依賴外部數據,比如:必須依賴數據庫模型來驅動,因 此要求必須建立好數據庫表,然后才能解析表數據結構生成代碼,并且如果代碼變動則必 須先修改數據庫,非常的繁瑣。 因此,現有技術有待于進一步的改進。
【發(fā)明內容】
[0004] 鑒于上述現有技術中的不足之處,本發(fā)明的目的在于為用戶提供一種基于類庫的 代碼生成器及其實現方法,以解決現有技術中傳統(tǒng)的代碼生成工具必須在特定的平臺下才 能運行及其代碼生成需要依賴外部數據的缺點,提供一種可以自源的代碼生成器。
[0005] 為了達到上述目的,本發(fā)明采取了以下技術方案: 一種基于類庫的代碼生成器,其中,包括:相互連接的用戶界面創(chuàng)建模塊、用戶界面模 塊和擴展類庫; 所述用戶界面創(chuàng)建模塊,用于當接收到用戶打開所述代碼生成器的指令后,根據預設 的腳本插入指令調用所述擴展類庫中的類將所述代碼生成器的應用加載到瀏覽器中; 所述用戶界面模塊,用于接收用戶輸入的數據信息,并將所述擴展類庫中生成的與所 述數據信息相對應的代碼進行顯示;所述數據信息為字段名、類型和長度; 所述擴展類庫,用于根據預設的類庫調用指令把從所述用戶界面模塊接收到的數據信 息生成代碼。
[0006] 所述基于類庫的代碼生成器,其中,所述用戶界面模塊還包括表數據結構顯示單 元; 所述表數據結構顯示單元,用于當所述用戶界面模塊接收到用戶輸入的數據信息后, 預先設定的程序首先將所述數據信息生成表數據結構在用戶界面模塊上顯示,用戶對所述 表數據結構信息進行確認。
[0007] 所述基于類庫的代碼生成器,其中,所述用戶界面模塊上還包括與類相映射的表 數據結構操作按鈕以及生成代碼按鈕,所述表數據結構操作按鈕用來對表數據中的數據進 行刪除或者修改。
[0008] 所述基于類庫的代碼生成器,其中,還包括數據存儲模塊,用于將用戶界面模塊接 收到所述數據信息的操作指令及其配置數據存儲到本地硬盤。
[0009] 所述代碼生成器的實現方法,其中,包括: 當接收到用戶打開所述代碼生成器的指令后,根據預設的腳本插入指令調用所述擴展 類庫中的類將所述代碼生成器的應用加載到瀏覽器中; 通過用戶界面模塊接收用戶輸入的數據信息;所述數據信息為字段名、類型和長度 根據預設的類庫調用指令調用擴展類庫中的類將所述數據信息生成代碼; 通過用戶界面模塊將生成的代碼進行顯示。
[0010] 所述代碼生成器的實現方法,其中,當所述用戶界面模塊接收到用戶輸入的數據 信息后,預先設定的程序首先將所述數據信息生成表數據結構在用戶界面模塊上顯示. 所述代碼生成器的實現方法,其中,用戶對用戶界面模塊上顯示的所述表數據結構的 信息進行確認;若表數據結構信息錯誤,則通過與類相映射的表數據結構操作按鈕對表數 據結構信息進行刪除或者修改,確認無誤后,通過點擊與類相映射的生成代碼按鈕生成代 碼。
[0011] 所述代碼生成器的實現方法,其中,將用戶界面模塊接收到所述數據信息的操作 指令及其配置數據通過數據存儲模塊存儲到本地硬盤。
[0012] 有益效果:本發(fā)明提供的一種基于類庫的代碼生成器及其實現方法,通過將代碼 生成器嵌入到瀏覽器上,實現跨平臺使用,并且通過調用擴展類庫中的類來自動實現代碼 的生成,不依賴外部的數據庫或者外部的類生成代碼,從而提高了軟件開發(fā)的速度和效率。
【專利附圖】
【附圖說明】
[0013] 圖1為本發(fā)明一種基于類庫的代碼生成器的結構原理圖。
[0014] 圖2為本發(fā)明用戶界面模塊在用戶未輸入數據信息的結構示意圖。
[0015] 圖3為本發(fā)明用戶界面模塊在用戶輸入數據信息后的結構示意圖。
[0016] 圖4為本發(fā)明一種基于類庫的代碼生成器的實現方法步驟流程圖。
【具體實施方式】
[0017] 本發(fā)明提供了一種基于類庫的代碼生成器及其實現方法。為使本發(fā)明的目的、技 術方案及效果更加清楚、明確,以下參照附圖并舉實例對本發(fā)明進一步詳細說明。應當理 解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0018] 本發(fā)提供的一種基于類庫的代碼生成器,如圖1所示,所述代碼生成器包括:相互 連接的用戶界面創(chuàng)建模塊10、用戶界面模塊20和擴展類庫30 ; 所述用戶界面創(chuàng)建模塊10,用于當接收到用戶打開所述代碼生成器的指令后,根據預 設的腳本插入指令調用所述擴展類庫中的類將所述代碼生成器的應用加載到瀏覽器中; 代碼生成器加載到瀏覽器中之后,用戶便可以在打開的瀏覽器上找到所述代碼生成器 所屬的"代碼生成.html"應用程序,通過打開該應用程序開啟本發(fā)明所述代碼生成器的功 能,通過所述代碼生成器實現代碼的生成。
[0019] 具體的,當用戶打開所述代碼生成.html"應用程序后,用戶界面創(chuàng)建模塊便根據 預設的腳本插入指令調用擴展類庫中的與打開所述用戶界面模塊相映射的類,打開所述代 碼生成器的用戶界面模塊,便于用戶輸入數據信息和查看輸入數據信息相對應的代碼。
[0020] 進一步的,由于將所述代碼生成器嵌入到瀏覽器中,因此擴展了瀏覽器的運行環(huán) 境,代碼生成器的用戶界面模塊是由瀏覽器根據預定的程序繪制而成,因此當擴展類庫加 載到瀏覽器后可以自動實現對瀏覽器版本的監(jiān)聽,實現擴展類庫與瀏覽器之間數據的自動 更新,使瀏覽器支持復雜的數據雙向綁定技術。
[0021] 所述用戶界面模塊20,用于接收用戶輸入的數據信息,并將所述擴展類庫中生成 的與所述數據信息相對應的代碼進行顯示;所述數據信息為字段名、類型和長度。
[0022] 代碼生成器的用戶界面模塊打開后,用戶通過其在瀏覽器中顯示出的用戶界面輸 入其所想要生成代碼的數據信息,所述數據信息為字段名、類型、長度或者其他是否必須輸 入的信息,當所述用戶界面模塊接收到所述數據信息后,將所述數據信息自動在界面上進 行顯示,并且當擴展類庫將所述數據信息轉化成代碼后,將轉化成的代碼在界面上顯示。
[0023] 所述擴展類庫30,用于根據預設的類庫調用指令把從所述用戶界面模塊接收到的 數據信息生成代碼。
[0024] 在擴展類庫中包括很多類,當用戶界面模塊接收到用戶輸入的數據信息后,預設 的類庫調用指令調用擴展類庫中相對應的類將所述數據信息生成表數據結構,并且根據生 成的表的數據結構生成代碼。
[0025] 為便于用戶對其輸入的信息更加的明了,使本發(fā)明所述代碼生成器具有更好的用 戶體驗和較佳的代碼生成速度,在所述用戶界面模塊上還包括表數據結構顯示單元以及所 述代碼生成器還包括數據存儲模塊; 所述表數據結構顯示單元,用于當所述用戶界面模塊接收到用戶輸入的數據信息后, 預先設定的程序首先將所述數據信息生成表數據結構在用戶界面模塊上顯示,用戶對所述 表數據結構信息進行確認。
[0026] 所述用戶界面模塊上還包括與類相映射的表數據結構操作按鈕以及生成代碼按 鈕,所述表數據結構操作按鈕用來對表數據中的數據進行刪除或者修改。
[0027] 所述數據存儲模塊,用于將用戶界面模塊接收到所述數據信息的操作指令及其配 置數據存儲到本地硬盤。
[0028] 具體的,在具體應用中,使用一種自定義的基于json的文件,用來存儲用戶界面 模塊接收到的數據信息的各種指令和配置數據。所述基于json的文件可以通過瀏覽器擴 展運行環(huán)境保存到本地硬盤,若用戶需要對其發(fā)出的數據信息進行修改的時,可以通過對 之前所保存的文件進行快速還原,在來數據信息的基礎上進行修改,避免重復工作;這種結 構還可以避免依賴外部的數據庫表來生成代碼,達到自源的目的。
[0029] 為了對所述代碼生成器進行更加詳細的解釋,以圖2和圖3所示的所述代碼生成 器的具體應用時的示意圖為依據,對其進行進一步的說明。
[0030] 圖2為本發(fā)明所述代碼生成器用戶界面模塊的示意圖,當用戶打開瀏覽器中加載 的所述代碼生成器的應用程序后,該用戶界面模塊以瀏覽器的形式顯示出來,用戶則通過 所述用戶界面模塊輸入數據信息,從圖2中可以看出在用戶界面模塊上設置有不同數據信 息的輸入區(qū)域,比如:序號、字段名、類型和注釋,還設置有對字段進行修改保存和生成代碼 的按鈕。用戶可以選擇輸入其想要獲取代碼的數據信息到用戶界面模塊上,實現代碼的生 成。
[0031] 圖3為用戶在用戶界面模塊上輸入數據信息之后用戶界面模塊顯示的示意圖,如 圖所述,用戶輸入數據信息之后,預先設定的程序首先調用擴展類庫中的程序將所述數據 信息生成表數據結構在用戶界面模塊上顯示出來,用戶可以對顯示出的表數據結構進行刪 除或者修改,確認無誤后,通過點擊用戶界面模塊上的生成代碼按鈕生成代碼。
[0032] 優(yōu)選的,本發(fā)明中所述代碼生成器所生成的代碼是基于Python語言的,可以用于 訪問,修改,刪除已知的python模型庫中數據的代碼,并且根據表的數據結構生成相應web 程序常用的html網頁代碼和js代碼,提高了軟件開發(fā)的速度和效率。
[0033] 可以想到的是,上述代碼生成器所生成的代碼也可以通過擴展接口擴展成其他語 言。
[0034] 從以上所公開的內容可以得到,本發(fā)明所述的代碼生成器可以實現僅通過一個瀏 覽器實現跨平臺使用,自動生成代碼,不依賴任何計算機語言環(huán)境。
[0035] 在本發(fā)明所述的代碼生成器的基礎上,本發(fā)明還提供了所述代碼生成器的實現方 法,如圖4所示,所述實現方法包括以下步驟: S1、當接收到用戶打開所述代碼生成器的指令后,根據預設的腳本插入指令調用所述 擴展類庫中的類將所述代碼生成器的應用加載到瀏覽器中;具體如所述用戶界面創(chuàng)建模塊 功能所述。
[0036] S2、通過用戶界面模塊接收用戶輸入的數據信息;所述數據信息為字段名、類型和 長度。
[0037] S3、根據預設的類庫調用指令調用擴展類庫中的類將所述數據信息生成代碼。
[0038] S4、通過用戶界面模塊將生成的代碼進行顯示。
[0039] 在上述實現方法的實施例的基礎上,與所述代碼生成器相對應的,所述實現方法 中還可以包括以下方法步驟: 當所述用戶界面模塊接收到用戶輸入的數據信息后,預先設定的程序首先將所述數據 信息生成表數據結構在用戶界面模塊上顯示。
[0040] 用戶對用戶界面模塊上顯示的所述表數據結構的信息進行確認;若表數據結構的 信息存在錯誤,則通過與類相映射的表數據結構操作按鈕對表數據結構信息進行刪除或者 修改,確認無誤后,通過點擊與類相映射的生成代碼按鈕生成代碼。
[0041] 用戶界面模塊接收到所述數據信息的操作指令及其配置數據通過數據存儲模塊 存儲到本地硬盤。
[0042] 本發(fā)明提供的一種基于類庫的代碼生成器及其實現方法,所述代碼生成器包括: 用戶界面創(chuàng)建模塊、用戶界面模塊和擴展類庫;用戶界面模塊創(chuàng)建模塊用于將所述代碼生 成器的應用嵌入到瀏覽器中,所述用戶界面模塊用于接收用戶輸入的數據信息,并將所述 擴展類庫中生成的與所述數據信息相對應的代碼進行顯示;所述擴展類庫,用于根據預設 的類庫調用指令把從所述用戶界面模塊接收到的數據信息生成代碼。所述代碼生成器僅通 過瀏覽器便可以實現可以跨平臺應用,并且其不依賴外部的數據庫或者外部的類,使用者 不需要熟悉數據庫設計技術和數據庫軟件方面的知識便可以對其進行使用,從而在降低了 代碼生成器使用的難度之外,提高了軟件開發(fā)的速度和效率。
[0043] 可以理解的是,對本領域普通技術人員來說,可以根據本發(fā)明的技術方案及其發(fā) 明構思加以等同替換或改變,而所有這些改變或替換都應屬于本發(fā)明所附的權利要求的保 護范圍。
【權利要求】
1. 一種基于類庫的代碼生成器,其特征在于,包括:相互連接的用戶界面創(chuàng)建模塊、用 戶界面模塊和擴展類庫; 所述用戶界面創(chuàng)建模塊,用于當接收到用戶打開所述代碼生成器的指令后,根據預設 的腳本插入指令調用所述擴展類庫中的類將所述代碼生成器的應用加載到瀏覽器中; 所述用戶界面模塊,用于接收用戶輸入的數據信息,并將所述擴展類庫中生成的與所 述數據信息相對應的代碼進行顯示;所述數據信息為字段名、類型和長度; 所述擴展類庫,用于根據預設的類庫調用指令把從所述用戶界面模塊接收到的數據信 息生成代碼。
2.根據權利要求1所述基于類庫的代碼生成器,其特征在于,所述用戶界面模塊還包 括表數據結構顯示單元; 所述表數據結構顯示單元,用于當所述用戶界面模塊接收到用戶輸入的數據信息后, 預先設定的程序首先將所述數據信息生成表數據結構在用戶界面模塊上顯示,用戶對所述 表數據結構信息進行確認。
3.根據權利要求2所述基于類庫的代碼生成器,其特征在于,所述用戶界面模塊上還 包括與類相映射的表數據結構操作按鈕以及生成代碼按鈕,所述表數據結構操作按鈕用來 對表數據中的數據進行刪除或者修改。
4.根據權利要求2所述基于類庫的代碼生成器,其特征在于,還包括數據存儲模塊,用 于將用戶界面模塊接收到所述數據信息的操作指令及其配置數據存儲到本地硬盤。
5.如權利要求1所述代碼生成器的實現方法,其特征在于,包括: 當接收到用戶打開所述代碼生成器的指令后,根據預設的腳本插入指令調用所述擴展 類庫中的類將所述代碼生成器的應用加載到瀏覽器中; 通過用戶界面模塊接收用戶輸入的數據信息;所述數據信息為字段名、類型和長度 根據預設的類庫調用指令調用擴展類庫中的類將所述數據信息生成代碼; 通過用戶界面模塊將生成的代碼進行顯示。
6.根據權利要求5所述代碼生成器的實現方法,其特征在于,當所述用戶界面模塊接 收到用戶輸入的數據信息后,預先設定的程序首先將所述數據信息生成表數據結構在用戶 界面模塊上顯示。
7.根據權利要求6所述代碼生成器的實現方法,其特征在于,用戶對用戶界面模塊上 顯示的所述表數據結構的信息進行確認;若表數據結構信息錯誤,則通過與類相映射的表 數據結構操作按鈕對表數據結構信息進行刪除或者修改,確認無誤后,通過點擊與類相映 射的生成代碼按鈕生成代碼。
8.根據權利要求5所述代碼生成器的實現方法,其特征在于,將用戶界面模塊接收到 所述數據信息的操作指令及其配置數據通過數據存儲模塊存儲到本地硬盤。
【文檔編號】G06F9/44GK104142824SQ201410321887
【公開日】2014年11月12日 申請日期:2014年7月8日 優(yōu)先權日:2014年7月8日
【發(fā)明者】陳熾昌, 莫劍斌, 崔勇, 闞長鑫 申請人:北京彩云動力教育科技有限公司