当前位置: 首页 > 工具软件 > Vala > 使用案例 >

Vala学习笔记(一) - HelloWorld!

都才俊
2023-12-01
  • 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
  1. 下载Vala IDE。最新版本为Valide 0.7.1。在安装Vala IDE的过程中,可以选择自动下载并安装Vala以及MinGW(minimalist GNU environment for Windows,MinGW提供了GNU C Compiler),也可以手动下载安装vala
  2. 下载libgee。libgee提供了非常丰富的容器类和接口,比如ArrayList, HashSet, HashMap等等。下载后直接把包中的include、lib、bin、share目录解压到vala安装目录下,覆盖原有的include、lib、bin、share目录。
  3. 下载MinGW API for MS-Windows。下载后直接把包中的include、lib目录解压到vala安装目录下,覆盖原有的include,lib目录。如果不安装这个MinGW API,在编译使用到GTK的程序时,会报不能加载libcomdlg32的错误。

 

  • HelloWorld!

 

 

编译代码,运行程序:

 

 

  • 有趣的事情:
  1. 上述HelloWorld程序的vala文件名和类名并不一致!
  2. 有一个名叫vala的微博网站,不知道在国内的微博大战中能否有立足之地?
 类似资料: