用python实现客户端的设想(curses、Tkinter)

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

有一种说法:程序员是最懒的。只有懒人才会在多种的实现方式中寻找最省力的。

在长期的编程实践中,对客户端程序的零乱、开发不易、费时费力、不变于修改已经感到深恶痛绝。所以将其特点总结如下(特别是三层构架中的界面展现部分):

响应时间要求不严格,通常零点几秒是可以忍受的 功能不多,一般情况下是输入一些内容,通过功能键或者按钮提交到后台服务,将返回结果显示给用户 要求用户界面尽量简单,有助于客户学习 可能需要保存一些客户信息,如登录的用户名、登录日期等 基于上述考虑,考虑用python来实现客户端的开发是可行的:

python是“胶水”语言,可以方便调用C(c++)库 python是解释性的,语法足够简单,利用编程实现;相应的发布也简单,发布源文件(.py)或者编译中间产物(.pyc)都是可以的,占用空间小,发布快 python有丰富的类库,开发方便 相对于C来说,python是面向对象的,支持异常处理的,自动垃圾回收的(GC),能极大的提高效率 缺点:

速度慢。客户端编程不必太追求效率。另外,可以采用内存加载的方式,加快速度(后续blog中会提到) 对中文的支持不是天生的。这一点可以由开发平台来补充。 当前考虑用python实现类似autobranch(南天基于curses)的开发平台,如果可能用Tkinter实现类似图形界面开发平台。最终实现类似uniface的产品使得开发前端界面就像画草图一样简单,最好是图形界面下的。

可行性:当前已经开发出小的类似newt概念的基于ncurses的类库,提供初步的统一数据命名(bus)的支持,可以添加不通的报文生成方式(如: fml/carry/xml/分隔符),支持不同级别(窗口、控件)的事件(按键)。相对应的图形界面开发应当也是可行的。

初步想法:

抽取窗口,按钮,事件,数据总线概念,考虑平台思想。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航