WEB开发网
开发学院操作系统Linux/Unix 使用 GTK+ 绑定进行快速应用程序开发 阅读

使用 GTK+ 绑定进行快速应用程序开发

 2008-11-11 08:13:43 来源:WEB开发网   
核心提示: 工具除了使用相应语言来满足您的需求外,同样重要的是,使用 GTK+ 绑定进行快速应用程序开发(4),要使用最适合您的代码编写工作的工具,此类工具能以更智能的方式直接支持目标语言,您应该能够了解您所选择的语言和工具集的可能性,从而提高质量,或可以自动化或简化重复的任务,从而可以大幅度缩减开发

工具

除了使用相应语言来满足您的需求外,同样重要的是,要使用最适合您的代码编写工作的工具。此类工具能以更智能的方式直接支持目标语言,或可以自动化或简化重复的任务,从而可以大幅度缩减开发时间和成本。

UI 设计

在所有可用工具当中,GTX+ 编程中最重要的工具可能就是 libglade 了。通过使用 libglade(请参阅“GTK+ fundamentals, Part 2:How to use GTK+”),您可以大大增强代码的易读性、易维护性、模块性和简洁性——所有这些好处都是通过将指定 UI 的外观的视觉任务和编写代码(即应用程序逻辑)的过程分离来实现的。

由于该工具极其明显的重要性,语言绑定开发人员正在进行相关的工作,以在其语言中支持 libglade(虽然目前尚未将其包含在基础 GTK+ 库中)。因此,只要可以选择使用 GTK+,您就可以确定所选择的语言将支持 libglade。

要使用 libglade,必须为其创建接口描述文件。可以使用若干应用程序来完成此任务,第一个此类程序就是原来的 Glade2(该库的名称就是源于此)。不过,由于当前稳定版本 Glade2 的一些限制和 Glade3 开发工作方面的延迟,促成了一些替代 UI 编辑器的创建。目前,这其中最为成熟的是 Gazpacho(请参阅参考资料),该程序是作为 Glade3 设计理念的 Python 实现编写的。Gazpacho 也支持 libglade 的纯 Python 重实现版本,该版本针对 PyGTK+ 应用程序的需求进行了重新定制。

IDE

另一种支持工具类别是各种类型的 IDE,专门设计用于在开发的所有阶段提供全面的帮助。各种 IDE 均针对特定语言定制,通常可以为程序员提供极大的帮助。在这方面,Mono/.NET 具有良好的支持,这其中既包括 .NET 的原始创建者 (Microsoft) 提供的支持,也包括以 Mono 项目为核心的社区提供的支持,后者开发了一个相关的 IDE,称为 MonoDevelop。由于 Gtk# is 是 Mono 和 MonoDevelop 的创建者选择的 GUI 工具集,因此为其提供了良好的现成支持;不过,对于使用 Microsoft 系列工具的程序员,可以通过在 Microsoft Visual Studio® IDE 中进行相应的定义来方便地安装自定义程序包。

类似地,Java 程序员则可以使用 Eclipse 项目提供的异常出色的免费 IDE。要获得 GTK+ 代码的支持,除了将库导入到项目中外,还需要进行其他一些工作。可以在 Java-GNOME 项目页面(请参阅参考资料)上找到有关如何设置的详细说明。

不再简单地进行替换

除了简单地切换各种语言外,还可以采取各种方法来提高工作效率。最有用的技术之一来自选择合适的工具做合适的事情 这一古老规则的实际应用,采用嵌入 技术。

在此设置中,核心应用程序——通常具有非常严格的性能要求——采用低级语言编写(如 C 语言),以尽可能地利用硬件。不过,该应用程序随后会在不同的高级语言中公开扩展接口,以便方便简单地对该接口的行为进行增强和自定义。

通过使用嵌入脚本,通常可以同时最好地利用这两方面,获得精干且性能上佳的核心和方便的可扩展性。非常适合采用嵌入技术的语言是 Python,该语言的最初编写目的就在于此。有关此类组合如何工作的最好示例,请参阅 Nautilus 和 Epiphany(都是 GNOME 项目)如何向 Python 程序公开其扩展 API 的说明。由于 Python 的简洁性特征,您可以成功创建虽寥寥数行却非常有用的扩展。

提高质量,改进工作

正如在上面所看到的,只要希望使用 GTK+ 加速您的 GUI 开发,就有大量不同的选项供选择。在这篇短文中,仅尽可能提供了一个简单的概述。但通过使用这些信息和参考资料部分的链接,您应该能够了解您所选择的语言和工具集的可能性,从而提高质量,在更短的时间内更好地完成相关工作。

上一页  1 2 3 4 

Tags:使用 GTK 绑定

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接