Linux 桌面应用程序

要在Linux下开发具有图形界面的桌面应用程序,我们有许多选择。当然,除了语言方面的考虑外,我们更多的是考虑窗口部件工具箱(以前称为控件库或组件库)的选择,这将在很大程度上影响我们的开发效率。
如果考虑到跨平台应用,选择Java的Swing可能非常合适。但是目前的swing尽管很强大也很灵活,我们始终还是会觉得有些不顺手:例如默认的界面不好看也不像本地程序,第三方皮肤不好找;开发周期相对较长;执行速度相对慢些等等。
除了java之外,在Windows下,我们一般可以在MFC(VC)和VCL(Delphi)中做选择(当然还有别的);在Linux下,我们可以选择QT或GTK。

QT具有相当不错的架构以及先进的事件处理机制,文档也很齐全,当然还少不了一个功能不错的可视化窗体设计器QtDesigner。著名的桌面环境KDE就是使用qt库进行开发的。
GTK的架构也不错,不过界面相对而言没有qt的那么炫目。GTK当然也有自己的可视化窗体设计器glade。另一个著名的桌面环境gnome就是使用gtk库进行开发的。另外,gtk也获得了广泛的商业支持。

就我个人而言,我更喜欢QT,桌面环境也更喜欢KDE,因为界面确实很漂亮,看着养眼;执行效率也很不错。更重要的是,使用qt进行rad快速开发似乎更为方便。
可惜在linux下使用c++开发程序并非易事,至少你得先熟悉gnu版本的c/c++库才行。我虽然很希望能使用qt做出漂亮的gui桌面应用,但是面对c++本身的复杂以及完全陌生的函数库,我望而却步。
这时,我发现python。这是一种很简单的脚本语言,其语言特性本身就十分简单易用。更惊人的是,这种语言还可以绑定到多种部件工具箱,包括GTK、QT、MFC、Swing等而!而Pyqt就是python和qt部件库的结合。简单易用的python配合强大方便的QtDesigner。

为了使用pyqt进行编程,首先是安装和配置系统环境。

当然,这样还不够。我们当然可以使用记事本kate来编写代码,但是一款好用的IDE将能够使我们的开发工作事半功倍。我们可以选择KDevelop或者Eric。KDevelop是KDE下老牌的IDE了,支持N多种语言的开发,其中也包括python,还自带了pyqt的示例程序。
不过,我还是选择了Eric。Eric是KDE下的python集成开发环境,本身就是用pyqt开发的(由此可以看出pyqt的强大)。eric同样集成了版本管理系统、项目管理、重构等功能。和kdevelop相比,eric中的源代码分类功能更方便,py脚本、qt窗体、语言包等文件是分类管理的。除了任务窗格外,eric还集成了一个python的shell控制台窗格,显得更加适合开发pyqt程序。

总结:Pyqt用于RAD开发GUI桌面引用是相当不错的,至少比java、C++都要简单的多。除了能够使用python本身的系统函数之外,我们还可以直接调用qt的各种类,也能借助qt的信号/插槽机制秦颂实现实现事件处理。另外,我们还可以借由pyqt开发原型程序,在正式版开发时可以很轻松的将其转换为C/C++程序。
原文链接

你可能感兴趣的:(GUI,linux,运维,服务器)