線上編程

線上編程

線上編程也稱線上IDE,是指不需要經過安裝編程的環境,直接在網際網路瀏覽器上編寫程式,並且可以運行出結果。

原理

線上編程的原理比較複雜,因為其涉及web前端以及後端編譯系統。

web前端需要提供用戶代碼錄入,行號、高亮語法、自動補全功能。並需要使用異步更新(Ajax) 的方法來實現上述功能。

後端編譯系統接收到用戶的代碼,並調用正確的編譯器進行編譯並將結果返回前端進行顯示。

特性

1、方便:無論何時何地,打開網址,就可以進行代碼編寫。更可以將現有代碼拷貝過去運行驗證結果,是驗證代碼,學習語言、算法的快捷工具。而且再也不需像傳統一樣,為了編寫一點程式,就必須在自己電腦上安裝很大的軟體,配置非常複雜的環境。

2、跨平台,無論使用Windows、Mac、Linux還是使用安卓平板、iPad,都可以進行線上編程,而且程式語言可以是任何語言,在iPad上編寫Java代碼是件很輕鬆地事。

3、集成性:所有的線上編程的程式語言網站都支持多種語言的編譯或解釋,具有較強的集成性,是傳統IDE無法比擬的。

實現

國外多家網站以及國內的少數網站都已經實現了線上編程的功能。比如:

anycodes

該網站智慧型支持中英韓三種語言。並且該網站支持九種程式語言,如C/C++/Java/Tcl/Matlab/Perl/Ruby/Python/Php,支持多檔案,標準輸入,命令行參數,語法高亮,代碼可摺疊,支持全螢幕模式及代碼下載,其中Matlab語言支持圖像化輸出,該平台還有對應的手機客戶端(線上編程),可以用手機寫代碼,同時還擁有對應的微信平台,垂直論壇,移動課堂,線上題庫,雲資源庫等功能。該網站比較簡潔,使用起來也很方便,回響速度較快。

codepad

該網站只支持英文,支持C/C++/D/Haskell,Lua/OCaml/PHP/Perl/Plain Text/Python/Ruby/Scheme/Tcl,相比anycodes而言支持語言更多,適合於團隊合作,代碼可生成一個簡短的URL。缺點是不支持語法高亮,也無法完成自動縮進功能,同時也無法使用scanf等需要從標準輸出中獲取值之類的函式,同時需要頁面跳轉,回響速度較慢。

Ideone

該網站支持英文,和上述兩個相比,支持包括C++,Java,JavaScript,Perl,PHP,Python和Ruby在內的40多種程式語言,且含有代碼demo,供初學者學習。缺點是,使用不夠簡潔,且回響速度較慢。

imooc

該網站支持包括HTML,CSS、JavaScript、PHP、Python和Ruby等多種程式語言,提供初學者學習demo。支持多檔案,標準輸入,資料庫操作,語法高亮,代碼摺疊,自動縮進,全螢幕預覽模式及代碼下載。缺點是平台還需要諸多細節最佳化,相應速度有待加強。

碼農谷

該網站支持包括C語言、C++、C#、Java及PHP等多種程式語言線上編譯與調試,同時支持包括HTML(CSS)、JavaScript、jQuery、BootStrap及EsayUI等前端語言線上運行與調試。

1.

anycodes

該網站智慧型支持中英韓三種語言。並且該網站支持九種程式語言,如C/C++/Java/Tcl/Matlab/Perl/Ruby/Python/Php,支持多檔案,標準輸入,命令行參數,語法高亮,代碼可摺疊,支持全螢幕模式及代碼下載,其中Matlab語言支持圖像化輸出,該平台還有對應的手機客戶端(線上編程),可以用手機寫代碼,同時還擁有對應的微信平台,垂直論壇,移動課堂,線上題庫,雲資源庫等功能。該網站比較簡潔,使用起來也很方便,回響速度較快。

2.

codepad

該網站只支持英文,支持C/C++/D/Haskell,Lua/OCaml/PHP/Perl/Plain Text/Python/Ruby/Scheme/Tcl,相比anycodes而言支持語言更多,適合於團隊合作,代碼可生成一個簡短的URL。缺點是不支持語法高亮,也無法完成自動縮進功能,同時也無法使用scanf等需要從標準輸出中獲取值之類的函式,同時需要頁面跳轉,回響速度較慢。

3.

Ideone

該網站支持英文,和上述兩個相比,支持包括C++,Java,JavaScript,Perl,PHP,Python和Ruby在內的40多種程式語言,且含有代碼demo,供初學者學習。缺點是,使用不夠簡潔,且回響速度較慢。

4.

imooc

該網站支持包括HTML,CSS、JavaScript、PHP、Python和Ruby等多種程式語言,提供初學者學習demo。支持多檔案,標準輸入,資料庫操作,語法高亮,代碼摺疊,自動縮進,全螢幕預覽模式及代碼下載。缺點是平台還需要諸多細節最佳化,相應速度有待加強。

5.

碼農谷

該網站支持包括C語言、C++、C#、Java及PHP等多種程式語言線上編譯與調試,同時支持包括HTML(CSS)、JavaScript、jQuery、BootStrap及EsayUI等前端語言線上運行與調試。

套用

目前在教學方面的套用比較廣泛。

相關詞條

熱門詞條

聯絡我們