999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Web的在線編譯環境設計

2015-05-30 10:48:04梅剛林齡潘峰
計算機時代 2015年5期

梅剛 林齡 潘峰

摘 要: 為了提供一種即上網即使用的編譯環境,提出了一種基于Web應用模式的在線式編譯環境的設計方法。該方法設計一種中間件來無縫集成編譯器等實用軟件工具,將用戶提交的程序在服務器端編譯并運行,將運行結果返回客戶端;運行時所需要的數據采用I/O重定向技術傳給執行程序。實驗表明,該設計方法是可行的,在線式編譯環境為編程人員提供了一種便捷的開發與測試環境。

關鍵詞: 在線編譯環境; 中間件; I/O重定向; Web應用

中圖分類號:TP311 文獻標志碼:A 文章編號:1006-8228(2015)05-29-03

Abstract: In order to provide a conveniently used compilation environment, this paper proposes a design of Web-based online compilation environment. The design integrates a set of practical software tools such as a compiler by using middleware, to compile the program submitted by the user and run it on the server, and return the results back to the user, the run-time data is transferrd to the program via the I/O redirection technology. Experiments show that the design is feasible, the on-line compilation environment provides the programmer with a convenient test and development environment.

Key words: online compile environment; middleware; I/O redirection; Web application

0 引言

以集成開發環境IDE(Integrated Development Environment)為主流平臺的軟件開發工具集成了編輯、編譯和調試等實用且強大的功能,但也顯現出它的一些不足。在Windows系統中使用Visual Studio,Mac OS系統中使用XCode,以及可以在多種系統中使用的Netbeans等為典型的IDE,適合于桌面系統上使用,但不能通過瀏覽器使用,這樣就使得它們難以在線共享使用。IDE盡管功能強大,但也相當復雜,對于僅僅需要編譯功能的編程者而言,IDE的大部分功能是閑置的。將復雜而龐大的IDE裁剪,提煉出最基本功能,使這些功能能夠共享使用,提供一個容易使用的接口是本文設計的目標。

從軟件使用者角度而言,簡單、方便、功能完善且成本低廉是選擇軟件系統的重要條件。Internet的迅速發展和深入應用正逐漸改變軟件的設計模式和應用模式,其中基于Web的軟件系統已成為一種最為成功的設計標準。基于Web的軟件系統具有面向大眾和良好的跨平臺應用特性,它以Web瀏覽器作為用戶與系統的標準接口。

基于Web的軟件工程逐漸成為眾多學者研究的熱點,基于Web的系統已成為未來軟件發展的一個重要方向,文獻[1-7]中實現了基于Web的軟件系統,提供了一種基于Web的應用環境。本文通過對網絡中間組件的有效集成,提供了一個簡單易用的基于Web的在線式編譯環境,以下詳細描述它的應用實例及關鍵實現技術。

1 系統設計

1.1 系統基本設計思想

系統客戶端采用Web界面,用戶通過Web表單提交程序;服務器端由Web服務器、中間組件和編譯工具組成。中間組件主要功能分為四個功能模塊:讀程序和保存模塊,調用編譯器編譯程序并捕捉編譯信息模塊,加載運行程序并捕捉運行結果模塊,分析編譯或運行結果文件并給出評判模塊。

1.2 系統工作原理

如圖1所示,用戶的HTTP請求提交給Web服務器,Web服務器調用中間組件處理提交數據,中間組件首先將相關數據寫入文件,然后調用編譯器或解釋器等工具處理寫入文件,處理產生的信息使用重定向技術寫入文件。中間組件集是一些運行在Ch環境[8]的Ch腳本,使用C語言編寫。文件集在這里主要是指文本文件,它包括兩類,一類是高級語言的源程序代碼和數據文件,它們由Web表單提交,并由中間組件讀取生成;另一類是結果文件,它們由編譯器或其他命令行工具執行時產生,是通過重定向技術寫入的標準輸出(STDOUT)或標準錯誤(STDERR),由Web服務器向客戶端返回。

1.3 功能模塊設計

1.3.1 用戶界面設計

用戶界面是編程者與系統交互的接口,源程序通過Web中表單進行提交,系統對程序的處理結果也采用Web文件形式在客戶端瀏覽器中顯示。這里我們采用Web框架集形式,即把瀏覽器客戶區分割為若干個矩形區域,使得輸入輸出都在同一個界面中,類似一個集成開發環境。簡單地把用戶界面劃分為以下三個部分。

⑴ 功能選擇界面。該界面主要供用戶選擇相關功能和服務。主要采用超鏈接標題實現導航功能。

⑵ 編輯與提交界面。該界面既作為功能選題界面的輸出區域,又是用戶提交任務的輸入區域,它采用嵌入式Web框架實現。

⑶ 輸出界面。該界面與提交界面一樣,采用嵌入式Web框架實現,主要作為服務器端的返回結果顯示。

如圖2所示,功能選擇界面作為導航界面,用戶選擇鏈接頁面在提交界面中顯示,提交界面提交的請求結果在結果頁面中顯示。

[功能選擇界面\&編輯與提交界面\&處理結果界面\&]

圖2 基于Web框架的用戶界面

1.3.2 中間件設計

網絡中間組件是系統業務中心,接受Web服務器的調用,擴展了Web服務器功能。它讀取HTTP請求數據,將讀取的程序源代碼寫入文件,同時調用服務器端編譯器編譯程序,通過編譯的程序裝載于Shell外殼運行。編譯結果或運行結果采用重定向到文件,向客戶端返回結果文件的URL,以便用戶查看。

1.4 關鍵應用技術

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

2 系統實現

2.1 用戶界面實現

用戶界面主要包括頁面功能導航區域、編輯與提交區域和處理結果顯示區域。在三個區域所在的Web頁中,使用頁內框架標簽標注區域名。導航區域使用超鏈接標簽鏈接Java程序的編輯頁面javaPro.html和顯示位置EditFrame。

在上面HTML代碼片段中,標注編輯代碼的文本區域,

主站蜘蛛池模板: 秋霞午夜国产精品成人片| 免费看一级毛片波多结衣| 欧美日一级片| 国产高潮流白浆视频| 欧美另类第一页| 亚洲开心婷婷中文字幕| 欧美自慰一级看片免费| 国产无码在线调教| 国产99欧美精品久久精品久久| 亚洲AⅤ波多系列中文字幕| 精品久久久无码专区中文字幕| 国产精品福利社| 激情综合网址| 国内丰满少妇猛烈精品播 | 日韩AV无码一区| 亚洲91精品视频| 中国国产高清免费AV片| 五月婷婷欧美| 国产黄在线观看| 在线观看国产精品第一区免费| 女同国产精品一区二区| 色噜噜狠狠色综合网图区| 午夜a视频| 中文字幕无线码一区| 亚洲国产欧美国产综合久久| 99精品热视频这里只有精品7| 中文字幕人妻av一区二区| 久久国产精品娇妻素人| 区国产精品搜索视频| 亚洲V日韩V无码一区二区| 国产成人福利在线视老湿机| 国模沟沟一区二区三区| 91久久精品国产| 国产第四页| 色丁丁毛片在线观看| 国国产a国产片免费麻豆| 少妇精品在线| 亚洲国产欧洲精品路线久久| 国产h视频免费观看| 久久亚洲美女精品国产精品| 久久亚洲国产一区二区| 潮喷在线无码白浆| 欧美日韩午夜| 欧美日韩北条麻妃一区二区| 日韩欧美综合在线制服| 女人18毛片一级毛片在线 | 97视频免费在线观看| 亚洲天堂成人| 国产日产欧美精品| 这里只有精品在线播放| 日韩欧美国产综合| 久久狠狠色噜噜狠狠狠狠97视色| 精品国产毛片| 一本大道在线一本久道| 91人人妻人人做人人爽男同| 亚洲成人免费看| 99久久精品免费看国产免费软件| 伊人久久大线影院首页| 国产又粗又猛又爽视频| 欧美三級片黃色三級片黃色1| 欧美天堂久久| 国产精品视频免费网站| 无码高潮喷水专区久久| 毛片网站观看| 亚洲国产精品无码久久一线| av在线手机播放| 白浆免费视频国产精品视频| 99热这里只有精品免费| 999精品在线视频| 高清不卡一区二区三区香蕉| 国产主播喷水| 国产高清在线观看| 国产免费观看av大片的网站| 国产一级小视频| 中国毛片网| 亚洲精品福利视频| 91精品专区| 久久免费视频6| 国产自产视频一区二区三区| 青青草原国产av福利网站| 亚洲午夜天堂| 激情综合五月网|