Web在線編譯環(huán)境設計分析論文
1系統(tǒng)設計
實現用戶與遠程軟件工具的交互主要是使用重定向技術實現。操作系統(tǒng)Shell環(huán)境中支持輸入輸出重定向,用符號"<"和">"來表示。0、1和2分別表示標準輸入STDIN、標準輸出STDOUT和標準錯誤STDERR信息輸出,可以用來指定需要重定向的標準輸入或輸出,比如2>error.txt表示將錯誤信息輸出到文件error.txt中。又比如用ls命令時,本來是查看目錄內容,而用了重定向">"后可以直接把屏幕輸出寫入一個文件中,再到文件里去看結果。輸入也是一樣,可以把輸入重定向到一個文件里,重定向操作符可以用來將命令輸入和輸出數據流從默認位置重定向到其他位置,其輸入或輸出數據流的位置稱為句柄;常見的句柄有三種,即:標準輸入、標準輸出和標準錯誤。
2系統(tǒng)實現
2.1用戶界面實現
用戶界面主要包括頁面功能導航區(qū)域、編輯與提交區(qū)域和處理結果顯示區(qū)域。在三個區(qū)域所在的Web頁中,使用頁內框架…鏈接Java程序的編輯頁面javaPro.html和顯示位置EditFrame。在上面HTML代碼片段中,
標注編輯代碼的文本區(qū)域,
標簽的action屬性值Process.ch為處理提交代碼的服務器端程序,target屬性值表明處理結果顯示在name屬性值為ResultFrame的框架。
2.2中間件實現
網絡中間組件Process.ch是一個使用C語言編classCRequestreq;//Ch-CGI包提供char*value=NULL;value=Req.getForm("JAVACODE");//讀取FILE*fp;if(fp=fopen("Main.java","w"))fprintf(fp,"%s ",value);//代碼寫入文件fclose(fp);system("javacMain.java2>javaCResult.txt1>&2");system("javaMainjavaRResult.txt2>&1");以上代碼中最后兩行分別表示編譯Java程序并將編譯輸出重定向到javaCResult.txt文件和解釋運行Java程序,其中文件in.txt中為運行時所需要的輸入數據,輸出結果重定向到文件javaRResult.txt。
3實驗
3.1Java程序測試
如圖4所示,我們將源程序編輯區(qū)域,程序運行時的數據輸入和運行結果顯示區(qū)域都集成在一個Web頁面中,這種透明設計類似桌面系統(tǒng)的集成開發(fā)環(huán)境。選擇Java程序后,完成程序編輯并輸入數據后提交,在網頁的底部區(qū)域顯示三個超鏈接,分別是鏈接源代碼文件、編譯結果文件、運行結果文件。在輸出區(qū)域顯示運行結果;若程序有誤,例如將輸出語句中的分號去掉,則通過“Compiling…”超鏈接查看編譯錯誤提示,編譯通過則超鏈接看到的為空。
3.2實驗環(huán)境
實驗服務器端系統(tǒng)為WindowsServer2008,使用IIS(InternetInformationServer)提供Web服務器功能,同時安裝Ch專業(yè)版作為Ch腳本運行環(huán)境。網絡中間組件是使用C語言編寫的Ch腳本,它在C/C++的解釋計算環(huán)境Ch中執(zhí)行。Ch-CGI工具包與Web服務器的無縫集成,實現了客戶端與服務器的交互。安裝JDK1.7提供Java程序的編譯器與解釋器等工具。
4結束語
Web系統(tǒng)擴展了計算的`環(huán)境,方便了大眾。基于Web的在線式編譯環(huán)境是對傳統(tǒng)集成開發(fā)環(huán)境的有利擴展,它在改變軟件使用模式的同時,也改變了軟件的設計模式,軟件由一種商品轉變?yōu)橐环N服務。在線式、共享性、方便性、成本低等眾多優(yōu)點是基于Web的系統(tǒng)的優(yōu)點。該系統(tǒng)可以為編程學習者提供一個簡單方便的編程開發(fā)環(huán)境,實現即上網即使用的共享使用,通過題目設計的擴展,可進一步設計為一個在線式判定系統(tǒng)。
【Web在線編譯環(huán)境設計分析論文】相關文章:
生態(tài)環(huán)境設計的分析與思考論文11-14
編譯原理小論文03-30
研究分析幼兒園環(huán)境設計論文11-02
幼兒園環(huán)境設計研究分析論文11-02
關于《在線分析儀表》教學的思考論文02-04