标签:特性 辅助 附加 类型 mono 相对 直接 规范 虚拟
Vala 是一门新兴的编程语言,为那些依赖 GNOME 平台运行时(runtime),尤其是依赖 GLib 和
GObject 库的应用程序的编写提供了大量现代的编程技术的支持。目前,GNOME 平台长期持支了一套完整
的编程环境,拥有诸如动态类型系统,辅助内存管理等特性。在 Vala 诞生之前,要在 GNOME 平台上编程,
只能去调用原生的 C 语言接口,但是这样的编程方法暴露了很多根本不需要知道的细节,如果用更高级
的语言,诸如 Python,Mono C#,则需要相应的虚拟机环境,否则就只能调用 C++ 封装的库。
Vala 不同于以上提到的任何语言,Vala 最终会转换成 C 语言,然后再编译运行,不用依赖 GNOME 平
台的其他附加的库(除了 GLib 和 GObject 之外)。
由此,造成了一些细微的但又非常重要的影响:
• 使用 Vala 编写应用程序和直接使用 C 编写应用程序,运行的效率非常相似,但是 Vala 相
比 C,更加容易,快速地编写和维护。
• 使用 Vala 做不到 C 语言也做不到的事情,尽管 Vala 相对 C 语言来说,提供了很多 C 语言没
有的特性,但实际上 Vala 所有的特性都是映射到 C 语言本身的,只不过如果直接用 C 语言来实现
这些特性的话,非常耗时,也非常困难。
综上所述,即便 Vala 提供了全部我们所希望的现代编程特性,但其实这些都是得益于一个已经存在
的强力平台,因此我们在使用 Vala 的时候,必须遵守这个平台的编程规范。
标签:特性 辅助 附加 类型 mono 相对 直接 规范 虚拟
原文地址:https://www.cnblogs.com/zhouxuejia/p/13543060.html