构建基于网页的GUI客户端首选哪种技术?

5 投票
5 回答
3008 浏览
提问于 2025-04-15 18:29

我有一个功能完善的Python服务器,里面有工作流程、视图、对象 - ORM/OSV等等。服务器和客户端之间的通信是基于socket协议的,可以通过以下任意服务来实现:

  1. XMLRPC服务
  2. Socket服务

现在我想开发一个完全基于Ajax的图形用户界面(GUI)网页客户端。我已经有了与服务器通信的网页/socket服务。

我需要选择一种技术,我有几个选项,比如:

  1. ExtJS - CherryPy
  2. GWT
  3. Ext-GWT
  4. CheeryPy
  5. Django + JQuery
  6. Django + Extjs
  7. ???
  8. ???...

5 个回答

1

你说你有一个服务器。那么这个服务器能理解什么协议呢?如果它只支持HTTP,那你就不需要像Django或CherryPy这样的网络框架。你可以使用任何JavaScript框架,比如jQuery加上jQuery Tools、MooTools、ExtJS等等,写一些JavaScript脚本,通过AJAX请求和你的服务器进行沟通,并把服务器的回复以HTML的形式展示出来。

如果你的服务器需要用自定义的TCP/IP协议来交流,那你就需要搭建一个代理。你可以使用像Django这样的框架来实现,但为了简单起见,我建议你使用普通的WSGI加上Werkzeug

1

我不太确定我对服务器端的理解是否完全正确,但我非常喜欢Flex这个工具,因为它能帮助我们为浏览器开发合适的软件,而不是费劲去让HTML做一些它本来就不擅长的事情。这部分是出于理想主义的考虑,但我对基于JavaScript的图形用户界面(GUI)的使用体验也不是很满意。

Flex在与服务器沟通方面有很多不错的选择,比如网络服务、套接字、远程对象等等。

5

可以试试 pyjamas,这是一个把GWT移植到Python上的工具。这样你就不用直接写让人头疼的JavaScript代码了,而是可以用Python编程,然后把它转换成JavaScript。

撰写回答