公務(wù)員期刊網(wǎng) 論文中心 正文

Web在線編譯環(huán)境設(shè)計分析

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了Web在線編譯環(huán)境設(shè)計分析范文,希望能給你帶來靈感和參考,敬請閱讀。

Web在線編譯環(huán)境設(shè)計分析

1系統(tǒng)設(shè)計

實(shí)現(xiàn)用戶與遠(yuǎn)程軟件工具的交互主要是使用重定向技術(shù)實(shí)現(xiàn)。操作系統(tǒng)Shell環(huán)境中支持輸入輸出重定向,用符號"<"和">"來表示。0、1和2分別表示標(biāo)準(zhǔn)輸入STDIN、標(biāo)準(zhǔn)輸出STDOUT和標(biāo)準(zhǔn)錯誤STDERR信息輸出,可以用來指定需要重定向的標(biāo)準(zhǔn)輸入或輸出,比如2>error.txt表示將錯誤信息輸出到文件error.txt中。又比如用ls命令時,本來是查看目錄內(nèi)容,而用了重定向">"后可以直接把屏幕輸出寫入一個文件中,再到文件里去看結(jié)果。輸入也是一樣,可以把輸入重定向到一個文件里,重定向操作符可以用來將命令輸入和輸出數(shù)據(jù)流從默認(rèn)位置重定向到其他位置,其輸入或輸出數(shù)據(jù)流的位置稱為句柄;常見的句柄有三種,即:標(biāo)準(zhǔn)輸入、標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤。

2系統(tǒng)實(shí)現(xiàn)

2.1用戶界面實(shí)現(xiàn)

用戶界面主要包括頁面功能導(dǎo)航區(qū)域、編輯與提交區(qū)域和處理結(jié)果顯示區(qū)域。在三個區(qū)域所在的web頁中,使用頁內(nèi)框架<ahref=”javaPro.html”target=”EditFrame”>…</a>鏈接Java程序的編輯頁面javaPro.html和顯示位置EditFrame。<formaction="Process.ch"target="ResultFr"><textAreaname="JAVACODE"></textArea><inputtype="submit"value="submit"></form>在上面HTML代碼片段中,<textArea>標(biāo)注編輯代碼的文本區(qū)域,<form>標(biāo)簽的action屬性值Process.ch為處理提交代碼的服務(wù)器端程序,target屬性值表明處理結(jié)果顯示在name屬性值為ResultFrame的框架。

2.2中間件實(shí)現(xiàn)

網(wǎng)絡(luò)中間組件Process.ch是一個使用C語言編classCRequestreq;//Ch-CGI包提供char*value=NULL;value=Req.getForm("JAVACODE");//讀取FILE*fp;if(fp=fopen("Main.java","w"))fprintf(fp,"%s\n",value);//代碼寫入文件fclose(fp);system("javacMain.java2>javaCResult.txt1>&2");system("javaMain<in.txt1>javaRResult.txt2>&1");以上代碼中最后兩行分別表示編譯Java程序并將編譯輸出重定向到j(luò)avaCResult.txt文件和解釋運(yùn)行Java程序,其中文件in.txt中為運(yùn)行時所需要的輸入數(shù)據(jù),輸出結(jié)果重定向到文件javaRResult.txt。

3實(shí)驗(yàn)

3.1Java程序測試

如圖4所示,我們將源程序編輯區(qū)域,程序運(yùn)行時的數(shù)據(jù)輸入和運(yùn)行結(jié)果顯示區(qū)域都集成在一個Web頁面中,這種透明設(shè)計類似桌面系統(tǒng)的集成開發(fā)環(huán)境。選擇Java程序后,完成程序編輯并輸入數(shù)據(jù)后提交,在網(wǎng)頁的底部區(qū)域顯示三個超鏈接,分別是鏈接源代碼文件、編譯結(jié)果文件、運(yùn)行結(jié)果文件。在輸出區(qū)域顯示運(yùn)行結(jié)果;若程序有誤,例如將輸出語句中的分號去掉,則通過“Compiling…”超鏈接查看編譯錯誤提示,編譯通過則超鏈接看到的為空。

3.2實(shí)驗(yàn)環(huán)境

實(shí)驗(yàn)服務(wù)器端系統(tǒng)為WindowsServer2008,使用IIS(InternetInformationServer)提供Web服務(wù)器功能,同時安裝Ch專業(yè)版作為Ch腳本運(yùn)行環(huán)境。網(wǎng)絡(luò)中間組件是使用C語言編寫的Ch腳本,它在C/C++的解釋計算環(huán)境Ch中執(zhí)行。Ch-CGI工具包與Web服務(wù)器的無縫集成,實(shí)現(xiàn)了客戶端與服務(wù)器的交互。安裝JDK1.7提供Java程序的編譯器與解釋器等工具。

4結(jié)束語

Web系統(tǒng)擴(kuò)展了計算的環(huán)境,方便了大眾?;赪eb的在線編譯環(huán)境是對傳統(tǒng)集成開發(fā)環(huán)境的有利擴(kuò)展,它在改變軟件使用模式的同時,也改變了軟件的設(shè)計模式,軟件由一種商品轉(zhuǎn)變?yōu)橐环N服務(wù)。在線式、共享性、方便性、成本低等眾多優(yōu)點(diǎn)是基于Web的系統(tǒng)的優(yōu)點(diǎn)。該系統(tǒng)可以為編程學(xué)習(xí)者提供一個簡單方便的編程開發(fā)環(huán)境,實(shí)現(xiàn)即上網(wǎng)即使用的共享使用,通過題目設(shè)計的擴(kuò)展,可進(jìn)一步設(shè)計為一個在線式判定系統(tǒng)。

作者:梅剛 林齡 潘峰 單位:貴州民族大學(xué)預(yù)科教育學(xué)院 貴州民族大學(xué)理學(xué)院 貴州民族大學(xué)信息

精選范文推薦