代碼轉(zhuǎn)換方法與裝置制造方法
【專利摘要】本發(fā)明實施例提供一種代碼轉(zhuǎn)換方法與裝置,包括:獲取原始文件,所述原始文件包含超文本標記語言html語句、帶編程語言標志的C++語句,所述編程語言標志用于標示所述C++語句的屬性;將所述html語句作為C++語言中流對象輸出語句的輸出流對象;根據(jù)所述流對象輸出語句以及所述帶編程語言標志的C++語句生成C++源文件。本發(fā)明實施例提供的代碼轉(zhuǎn)換方法與裝置能夠?qū)崿F(xiàn)將由C++代碼應(yīng)用于動態(tài)網(wǎng)頁開發(fā)技術(shù),從而實現(xiàn)基于動態(tài)網(wǎng)頁的開發(fā)過程,使用C++代碼開發(fā)網(wǎng)絡(luò)應(yīng)用。
【專利說明】代碼轉(zhuǎn)換方法與裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種代碼轉(zhuǎn)換方法與裝置。
【背景技術(shù)】
[0002] 動態(tài)網(wǎng)頁技術(shù)是目前的主要網(wǎng)絡(luò)應(yīng)用開發(fā)技術(shù),通常使用動態(tài)網(wǎng)頁技術(shù)開發(fā)的網(wǎng) 絡(luò)應(yīng)用的源碼包括用于描述頁面的html (hypertext markup language,超文本標記語言) 代碼以及用于邏輯運算的編程語言代碼。在使用動態(tài)網(wǎng)頁技術(shù)進行網(wǎng)絡(luò)應(yīng)用開發(fā)時,首先 需要進行UI (User Interface,用戶界面)設(shè)計,以生成html代碼,之后向源碼中嵌入用 于進行邏輯運算的編程語言代碼。目前主要使用的編程語言為VB ScripUVisual Basic Script,可視化基礎(chǔ)腳本)語言、PHP(Professional Hypertext Preprocessor,專業(yè)超文本 預(yù)處理)語言、Java語言、C#語言等。在使用嵌入上述編程語言代碼的網(wǎng)絡(luò)應(yīng)用時,需要調(diào) 用解釋器、虛擬機等第三方應(yīng)用,效率較低的同時也增加了資源的開銷以及實現(xiàn)的復(fù)雜度。
[0003] C++語言是目前應(yīng)用最廣泛的編程語言之一,其運行也不需要第三方的解釋器或 者虛擬機,運行速度較上述編程語言代碼更快,并且也節(jié)省資源的開銷。如果將C++語言應(yīng) 用于動態(tài)網(wǎng)頁開發(fā)技術(shù)中,就能夠加快網(wǎng)絡(luò)應(yīng)用的運行速度,并且節(jié)省資源的開銷,因此需 要有一種能夠?qū)崿F(xiàn)將由C++代碼應(yīng)用于動態(tài)網(wǎng)頁開發(fā)技術(shù)的方法與裝置,從而實現(xiàn)基于動 態(tài)網(wǎng)頁的開發(fā)過程,使用C++代碼開發(fā)網(wǎng)絡(luò)應(yīng)用。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的實施例提供了一種能夠?qū)–++代碼以及html語言代碼的網(wǎng)頁源碼 完全轉(zhuǎn)換為C++代碼的方法,通過以下技術(shù)方案實現(xiàn):
[0005] 獲取原始文件,該原始文件包含超文本標記語言html語句、帶編程語言標志的 C++語句。
[0006] 根據(jù)html語句生成C++語言中流對象輸出語句,其中,所述C++語言中流對象輸 出語句的輸出流對象為所述html語句。
[0007] 根據(jù)流對象輸出語句以及帶編程語言標志的C++語句生成C++源文件。
[0008] 上述原始文件中記載的即為網(wǎng)絡(luò)應(yīng)用的網(wǎng)頁源碼,編程語言標志用于C++語句的 屬性。
[0009] 在本方案中通過引入編程語言標志,明確了對于原始文件中C++代碼以及html代 碼的處理方法,使之能夠順利地轉(zhuǎn)換為C++源文件,從而能夠使得C++語言應(yīng)用于基于動 態(tài)網(wǎng)頁技術(shù)的網(wǎng)絡(luò)應(yīng)用開發(fā)中,節(jié)約了運行上述網(wǎng)絡(luò)應(yīng)用時資源的開銷以及提升了運行效 率,同時由于C++語言具有跨平臺能力,所以使用本發(fā)明實施例所提供的方案開發(fā)的網(wǎng)絡(luò) 應(yīng)用也具有跨平臺的能力。并且,由于使用本發(fā)明實施例所提供的方法開發(fā)的網(wǎng)絡(luò)應(yīng)用不 是解析執(zhí)行,也沒有使用腳本語言,所以在網(wǎng)絡(luò)安全性上也有一定優(yōu)勢。
[0010] 優(yōu)選地,編程語言標志包括定義類編程語言標志及腳本類編程語言標志。
[0011] 優(yōu)選地,根據(jù)流對象輸出語句以及帶編程語言標志的C++語句生成C++源文件,包 括:將帶定義類編程語言標志的C++語句中的C++語句作為C++源文件的全局定義語句;將 帶腳本類編程語言標志的C++語句中的C++語句與流對象輸出語句,構(gòu)成C++源文件的類 成員函數(shù)。該類成員函數(shù)的名稱和參數(shù)可以和編譯時所連接的類庫中的類名稱保持一致。
[0012] 此外,編程語言標志可以還包括注釋類編程語言標志,優(yōu)選地,根據(jù)流對象輸出語 句以及帶編程語言標志的C++語句生成C++源文件,還包括:將帶注釋類編程語言標志的 C++語句中的C++語句作為C++源文件的注釋語句。
[0013] 上述步驟明確了各類編程語言標志的含義,明確了對于網(wǎng)頁源碼中包含的C++語 句以及html語句的處理方法,能夠順利地轉(zhuǎn)換為C++源文件。其中,由于注釋類語句并不 影響C++語句最后的執(zhí)行,因此在一個C++源文件中可以沒有注釋類語句,因此也可以沒有 注釋類的編程語言標志。
[0014] 優(yōu)選地,將帶腳本類編程語言標志的C++語句中的C++語句與流對象輸出語句,構(gòu) 成C++源文件的類成員函數(shù)包括:將帶腳本類編程語言標志的C++語句中的C++語句與流 對象輸出語句按照其在原始文件中的先后順序構(gòu)成C++源文件的類成員函數(shù)。
[0015] 上述步驟可以簡化轉(zhuǎn)換的步驟,保障轉(zhuǎn)換的C++源文件的正確性。
[0016] 優(yōu)選地,根據(jù)流對象輸出語句以及帶編程語言標志的C++語句生成C++源文件,包 括:在C++源文件中配置訪問數(shù)據(jù)庫的頭文件與類對象;根據(jù)訪問數(shù)據(jù)庫的頭文件與類對 象、流對象輸出語句以及帶編程語言標志的C++語句生成C++源文件。
[0017] 在一些網(wǎng)絡(luò)應(yīng)用中,需要訪問數(shù)據(jù)庫以獲得生成目標頁面的數(shù)據(jù),因此在源文件 中就需要配置訪問數(shù)據(jù)庫的頭文件與類對象,使其具有訪問特定數(shù)據(jù)庫的能力。
[0018] 本發(fā)明實施例還提供了一種代碼轉(zhuǎn)換裝置,包括讀取模塊,用于或取原始文件,原 始文件包含超文本標記語言html語句、帶編程語言標志的C++語句。語句轉(zhuǎn)換模塊,用于 根據(jù)所述html語句生成C++語言中流對象輸出語句的輸出流對象,其中,所述C++語言中 流對象輸出語句的輸出流對象為所述html語句。源文件生成模塊,根據(jù)流對象輸出語句以 及帶編程語言標志的C++語句生成C++源文件。
[0019] 優(yōu)選地,源文件生成模塊還用于,將帶注釋類編程語言標志的C++語句中的C++語 句作為C++源文件的注釋語句。將帶定義類編程語言標志的C++語句中的C++語句作為 C++源文件的全局定義語句。將帶腳本類編程語言標志的C++語句中的C++語句與流對象 輸出語句,構(gòu)成C++源文件的類成員函數(shù)。
[0020] 優(yōu)選地,源文件生成模塊還用于,將帶腳本類編程語言標志的C++語句中的C++語 句與流對象輸出語句按照其在原始文件中的先后順序構(gòu)成C++源文件的類成員函數(shù)。
[0021] 優(yōu)選地,源文件生成模塊還用于,在所述C++源文件中配置訪問數(shù)據(jù)庫的頭文件 與類對象;根據(jù)所述訪問數(shù)據(jù)庫的頭文件與類對象、流對象輸出語句以及所述帶編程語言 標志的C++語句生成C++源文件。
[0022] 在本發(fā)明實施例所提供的代碼轉(zhuǎn)換方法及其相應(yīng)裝置中通過引入編程語言標志, 明確了對于原始文件中C++代碼以及html代碼的處理方法,使之能夠順利地轉(zhuǎn)換為C++源 文件,從而能夠使得C++語言應(yīng)用于基于動態(tài)網(wǎng)頁技術(shù)的網(wǎng)絡(luò)應(yīng)用開發(fā)中,節(jié)約了運行上 述網(wǎng)絡(luò)應(yīng)用時資源的開銷以及提升了運行效率。同時由于C++語言的特點,使用本發(fā)明是 實力所提供的代碼轉(zhuǎn)換方法及裝置開發(fā)的動態(tài)網(wǎng)頁具有輕量級以及跨平臺能力。并且,由 于使用本發(fā)明實施例所提供的方法開發(fā)的網(wǎng)絡(luò)應(yīng)用不是解析執(zhí)行,也沒有使用腳本語言, 所以在系統(tǒng)性能以及網(wǎng)絡(luò)安全性上也有一定優(yōu)勢。
【專利附圖】
【附圖說明】
[0023] 圖1為本發(fā)明實施例提供的代碼轉(zhuǎn)換方法的主要步驟的流程圖;
[0024] 圖2為本發(fā)明實施例所提供的代碼轉(zhuǎn)換方法的一個具體實施例的流程圖;
[0025] 圖3為本發(fā)明實施例所提供的代碼轉(zhuǎn)換方法的另一個具體實施例的流程圖;
[0026] 圖4為使用本發(fā)明實施例所提供的代碼轉(zhuǎn)換方法所開發(fā)的網(wǎng)絡(luò)應(yīng)用的流程圖;
[0027] 圖5為本發(fā)明實施例所提供的代碼轉(zhuǎn)換裝置的流程圖。
【具體實施方式】
[0028] 為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明作進 一步地詳細描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施 例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的 所有其它實施例,都屬于本發(fā)明保護的范圍。
[0029] 在執(zhí)行本發(fā)明實施例所提供的代碼轉(zhuǎn)換方法之前,應(yīng)當進行如下的預(yù)備工作。
[0030] 首先,定義不同的編程語言標志,本發(fā)明實施例中,在網(wǎng)頁源碼(即原始文件)中 C++語句是放置在編程語言標志中的,編程語言標志與其中語句的屬性關(guān)系如下表所示:
[0031]
【權(quán)利要求】
1. 一種代碼轉(zhuǎn)換方法,其特征在于,包括: 獲取原始文件,所述原始文件包含超文本標記語言html語句、帶編程語言標志的C++ 語句; 根據(jù)所述html語句生成C++語言中流對象輸出語句,其中,所述C++語言中流對象輸 出語句的輸出流對象為所述html語句; 根據(jù)所述流對象輸出語句以及所述帶編程語言標志的C++語句生成C++源文件。
2. 如權(quán)利要求1所述的方法,其特征在于,所述編程語言標志包括定義類編程語言標 志及腳本類編程語言標志; 根據(jù)所述流對象輸出語句以及所述帶編程語言標志的C++語句生成C++源文件,包括: 將帶定義類編程語言標志的C++語句中的C++語句作為所述C++源文件的全局定義語句; 將帶腳本類編程語言標志的C++語句中的C++語句與所述流對象輸出語句,構(gòu)成所述 C++源文件的類成員函數(shù)。
3. 如權(quán)利要求2所述的方法,其特征在于,所述編程語言標志還包括注釋類編程語言 標志; 所述根據(jù)所述流對象輸出語句以及所述帶編程語言標志的C++語句生成C++源文件, 還包括: 將帶注釋類編程語言標志的C++語句中的C++語句作為所述C++源文件的注釋語句。
4. 如權(quán)利要求2所述的方法,其特征在于,所述將帶腳本類編程語言標志的C++語句中 的C++語句與所述流對象輸出語句,構(gòu)成所述C++源文件的類成員函數(shù),包括: 按照其在所述原始文件中的位置的先后順序,將所述帶腳本類編程語言標志的C++語 句中的C++語句與所述流對象輸出語句構(gòu)成所述C++源文件的類成員函數(shù)。
5. 如權(quán)利要求1所述的方法,其特征在于,根據(jù)所述流對象輸出語句以及所述帶編程 語言標志的C++語句生成C++源文件,包括 : 在所述C++源文件中配置訪問數(shù)據(jù)庫的頭文件與類對象; 根據(jù)所述訪問數(shù)據(jù)庫的頭文件與類對象、流對象輸出語句以及所述帶編程語言標志的 C++語句生成C++源文件。
6. -種代碼轉(zhuǎn)換裝置,其特征在于,包括: 讀取模塊,用于讀取原始文件,所述原始文件包含超文本標記語言html語句、帶編程 語目標志的C++語句; 語句轉(zhuǎn)換模塊,用于根據(jù)所述html語句生成C++語言中流對象輸出語句的輸出流對 象,其中,所述C++語言中流對象輸出語句的輸出流對象為所述html語句; 源文件生成模塊,用于根據(jù)所述流對象輸出語句以及所述帶編程語言標志的C++語句 生成C++源文件。
7. 如權(quán)利要求6所述的裝置,其特征在于,所述編程語言標志包括定義類編程語言標 志及腳本類編程語言標志; 所述源文件生成模塊還用于,將帶定義類編程語言標志的C++語句中的C++語句作為 所述C++源文件的全局定義語句; 將帶腳本類編程語言標志的C++語句中的C++語句與所述流對象輸出語句,構(gòu)成所述 C++源文件的類成員函數(shù)。
8. 如權(quán)利要求7所述的裝置,其特征在于,所述變成語言標志包括注釋類編程語言標 志; 所述源文件生成模塊還用于,將帶注釋類編程語言標志的C++語句中的C++語句作為 所述C++源文件的注釋語句。
9. 如權(quán)利要求6所述的裝置,其特征在于,所述源文件生成模塊還用于,將帶腳本類編 程語言標志的C++語句中的C++語句與所述流對象輸出語句按照其在所述原始文件中的 先后順序構(gòu)成所述C++源文件的類成員函數(shù)。
10. 如權(quán)利要求6所述的裝置,其特征在于,所述源文件生成模塊還用于,在所述C++源 文件中配置訪問數(shù)據(jù)庫的頭文件與類對象;根據(jù)所述訪問數(shù)據(jù)庫的頭文件與類對象、流對 象輸出語句以及所述帶編程語言標志的C++語句生成C++源文件。
【文檔編號】G06F9/44GK104267935SQ201410461415
【公開日】2015年1月7日 申請日期:2014年9月11日 優(yōu)先權(quán)日:2014年9月11日
【發(fā)明者】趙軍, 劉志森 申請人:聯(lián)動優(yōu)勢電子商務(wù)有限公司