如果能用python代替Javascript編寫基于瀏覽器的應用,該有多好啊。但是,Javascript是唯一一種能在瀏覽器里執行的語言(Flash或Silverlight除外)。換個思路,先用Python編寫代碼,然后在通過編譯器轉為為Javascript腳本,這樣確實是可行的。嗯,已經有人這么干了,就是這個:Pyjamas
Pyjamas的介紹:
Google 的 Web Toolkit (GWT) 讓我們能夠完全用 Java™ 代碼開發具有 Ajax 功能的 Rich Internet Application (RIA)。可以使用豐富的 Java 工具集(IDE、重構、代碼補全、調試器等等)開發出可以部署在所有主流 Web 瀏覽器中的應用程序。在 GWT 的幫助下,可以編寫出在瀏覽器中運行但是表現與桌面應用程序相似的應用程序。
和GWT類似,Pyjamas是一個跨瀏覽器API,有了它,你可以使用Python編寫客戶端功能。 使用Pyjamas的優點是你可以用 Python代替HTML和JavaScript編寫網絡程序,你可以重復使用和導入類和模塊。 此外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?? 有人討論這個問題在這里)