- Vala是什么?
Vala官方网站对它的描述:
Compiler for the GObject type system Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C.
百度百科对Vala的描述:
Vala是一种新的编程语言,其目标是为GNOME开发者提供现代化的编程语言功能,同时没有额外的运行时要求,并且相对于C语言编写的应用程序和库,无需使用不同的ABI。
我个人的认识:
Vala是对C语言的高级封装,拥有C#(其实和JAVA也基本相同啊)的形,C语言的魂。所谓高级、形,即是面向对象;而魂,则是说Vala编译器先把Vala代码转换成C代码,再编译成机器码。另外,官方介绍中提到了ABI这个概念,与常见的API是不同的。API(Application Program Interface)是对代码进行约束,比方说.JAVA文件的文件结构是什么样的,类对外提供了哪些方法供别人调用;ABI(Application Binary Interface)是对最终的执行码进行约束,比方说Java中class文件的文件结构,调用指令,或者说linux下可执行程序elf的文件内容约束。
- 在Windows下安装Vala
- 下载Vala IDE。最新版本为Valide 0.7.1。在安装Vala IDE的过程中,可以选择自动下载并安装Vala以及MinGW(minimalist GNU environment for Windows,MinGW提供了GNU C Compiler),也可以手动下载安装vala。
- 下载libgee。libgee提供了非常丰富的容器类和接口,比如ArrayList, HashSet, HashMap等等。下载后直接把包中的include、lib、bin、share目录解压到vala安装目录下,覆盖原有的include、lib、bin、share目录。
- 下载MinGW API for MS-Windows。下载后直接把包中的include、lib目录解压到vala安装目录下,覆盖原有的include,lib目录。如果不安装这个MinGW API,在编译使用到GTK的程序时,会报不能加载libcomdlg32的错误。
- HelloWorld!
public class Main{ public static int main (string[] args) { print("Hello World~~0.12/n"); return 0; } }
编译代码,运行程序:
valac HelloWorld.vala HelloWorld.exe
- 有趣的事情:
- 上述HelloWorld程序的vala文件名和类名并不一致!
- 有一个名叫vala的微博网站,不知道在国内的微博大战中能否有立足之地?
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于