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代碼片段中,標注編輯代碼的文本區域,

主站蜘蛛池模板: 四虎免费视频网站| 国产最新无码专区在线| 国产精品片在线观看手机版 | 日本成人不卡视频| 狠狠做深爱婷婷综合一区| 波多野结衣久久高清免费| 亚洲欧美精品日韩欧美| 拍国产真实乱人偷精品| 国产精选自拍| 亚洲精品爱草草视频在线| 国产伦片中文免费观看| 97se亚洲综合| 波多野结衣AV无码久久一区| 欧美综合成人| 国产裸舞福利在线视频合集| 国产精品丝袜视频| 亚洲无码高清一区| 成人午夜免费观看| 亚洲天堂视频在线免费观看| 手机在线免费毛片| 亚洲av日韩av制服丝袜| A级全黄试看30分钟小视频| 被公侵犯人妻少妇一区二区三区| 国产美女91视频| 亚洲日韩国产精品无码专区| 国产成人一区免费观看| 午夜日本永久乱码免费播放片| 欧美高清国产| 在线观看亚洲精品福利片| 欧美天天干| 亚洲国产欧美目韩成人综合| 国产婬乱a一级毛片多女| 国产最新无码专区在线| 精品视频一区在线观看| 国产一区二区三区日韩精品| 久久永久精品免费视频| 手机成人午夜在线视频| 国产永久无码观看在线| 天天躁日日躁狠狠躁中文字幕| 在线观看国产小视频| 这里只有精品在线播放| 国产精品爆乳99久久| 成人国内精品久久久久影院| 无码在线激情片| 久久久噜噜噜久久中文字幕色伊伊| 国产视频欧美| 91精品啪在线观看国产91九色| 亚洲性影院| aaa国产一级毛片| 9cao视频精品| 成人在线欧美| 日本a∨在线观看| 91无码人妻精品一区| 国产欧美日韩va| 爽爽影院十八禁在线观看| 国内老司机精品视频在线播出| 日韩色图区| 一级看片免费视频| 亚洲成人一区二区三区| 日本伊人色综合网| 国产欧美成人不卡视频| 国产亚洲日韩av在线| 欧美精品在线视频观看| 色天堂无毒不卡| 久久亚洲黄色视频| 久久精品丝袜高跟鞋| 99免费在线观看视频| 国产一级一级毛片永久| 好吊妞欧美视频免费| 亚洲伊人天堂| 日韩123欧美字幕| 亚洲国产成熟视频在线多多| 久久频这里精品99香蕉久网址| 精品国产中文一级毛片在线看| 波多野结衣一区二区三区四区| 天堂va亚洲va欧美va国产| 欧美精品伊人久久| 老司机精品一区在线视频| 亚洲啪啪网| 国产办公室秘书无码精品| 欧美成人怡春院在线激情| 国产精品漂亮美女在线观看|