如果能用python代替Javascript編寫基于瀏覽器的應(yīng)用,該有多好啊。但是,Javascript是唯一一種能在瀏覽器里執(zhí)行的語言(Flash或Silverlight除外)。換個思路,先用Python編寫代碼,然后在通過編譯器轉(zhuǎn)為為Javascript腳本,這樣確實是可行的。嗯,已經(jīng)有人這么干了,就是這個:Pyjamas
Pyjamas的介紹:
Google 的 Web Toolkit (GWT) 讓我們能夠完全用 Java™ 代碼開發(fā)具有 Ajax 功能的 Rich Internet Application (RIA)。可以使用豐富的 Java 工具集(IDE、重構(gòu)、代碼補全、調(diào)試器等等)開發(fā)出可以部署在所有主流 Web 瀏覽器中的應(yīng)用程序。在 GWT 的幫助下,可以編寫出在瀏覽器中運行但是表現(xiàn)與桌面應(yīng)用程序相似的應(yīng)用程序。
和GWT類似,Pyjamas是一個跨瀏覽器API,有了它,你可以使用Python編寫客戶端功能。 使用Pyjamas的優(yōu)點是你可以用 Python代替HTML和JavaScript編寫網(wǎng)絡(luò)程序,你可以重復(fù)使用和導(dǎo)入類和模塊。 此外AJAX庫還可以解決互用性問題,不用擔心程序在IE6, IE7, Firefox, Safari, Opera等瀏覽器上的兼容問題。
是不是覺得很酷呢?pyjamas有一個演示頁面,里面有多個的效果。
比如:
火星登陸游戲:http://pyjs.org/examples/asteroids/output/Space.html
郵件客戶端:http://pyjs.org/examples/mail/output/Mail.html
GWTCanvas:http://pyjs.org/examples/gwtcanvas/output/GWTCanvasDemo.html
(HTML5 Canvas?? 有人討論這個問題在這里)