haXe 介绍,快速入门.

时间:2022-08-27 13:29:15

haXe 2.01 现在增加对 Flash 10 支持

Flash的世界还真是很乱呀,很早就听说HAXE了,不过一直也没有时间研究一下到底是个什么东东,和FLASH什么关系。今天看到ADOBE的新闻,查了查,粘一些资料,供大家提高和普及吧。要不听别人说什么HAXE和FLASH等等,心里毛突突的,感觉又落伍似的。

直接应用http://blog.icebirds.net/的文章了

haXe 介绍

早在去年,就已经从MTASC的主页上看到了介绍,说MTASC的开发小组已经停止开发MTASC,并且全面转向开发这个新的跨平台跨语言的开发环境了。前些天试了一下,功能还不错。

haXe是一个专注于协助程序员编写网站和web应用的高级面向对象程序语言。它可以非常简单的提供跨平台跨语言的支持,目前支持以下几种语言:

1 . Javascript :你可以非常简单的利用一个haxe类集生成单独的js文件,可以访问多种浏览器的DHTML API。haXe是非常好的开发Ajax大型应用的中间语言之一。

2. Flash : 你可以通过haXe编译出用于flash player 6-9各版本使用的swf文件。这种语言是强类型的动态脚本语言。所有的flash actionscript API都可以方便的被访问。

3. Neko : haXe 可以编译在Neko虚拟机上运行的字节码。可以使用Apache (用mod_neko模块)作为服务器端运行。这个特性可以让你编写服务器端运行的程序。


haXe 的获取和安装

注意:要安装haXe必须有互联网连接。

到haXe的官方主页去下载windows安装包(Windows 用户选择第一项即可)。

http://www.haxe.org/download

下载完毕后打开安装包,程序会自动下载安装相应的程序。

haXe 程序手册(一)

基本数据类型

Void 空值

空值没有任何取值和内容。多用于定义函数和方法的返回值。

Float 浮点

表示一个整数或小数值。取值范围与运行环境相关。

Int 整形

表示一个整数值。取值范围与运行环境相关。

Bool 布尔

布尔是一个判断值,只有两个取值,分别为true(真)或false(假)。

Dynamic 动态

动态类型的使用将在后面说明。

这里快速说明一下类的使用,它们和其他的面向对象语言相差不大。

package my.pack;
/*
this will define the class my.pack.MyClass
*/
class MyClass {
// ....
}

一个类可以有多个属性和方法。

package my.pack;

class MyClass {

var id : Int;

static var name : String = "MyString";

function foo() : Void {
}

static function bar( s : String, v : Bool ) : Void {
}
}

第一个haXe actionscript程序


通过haXe,程序员可以在极大程度上摆脱flash IDE,实现完全使用代码来编写flash应用。同时,由于haXe是开源程序,可以不必担心版权的困扰,放心使用。最重要的,是使用Linux的朋友终于有了一个完美的flash开发环境,虽然看起来还比较简陋,但是它几乎已经可以完成我们大多数的编码工作需要了。
和大多数面向对象的语言一样,haXe也是基于类的,语法几乎和CPP、Java没什么区别。下面请看我们的第一个程序:

class Test {
static function main() {
trace("Hello world !");
}
}

在上面的代码中,我们写了一个名为Test的类。并且在里面实现了一个main方法。语句只有一句: trace("Hello world !") 。 只要稍了解一些面向对象的语言,这段程序根本就不难理解。我们先把它存成Test.hx文件。.hx是haXe的源代码文件。

OK,让我们来看看haXe和其他语言不同的地方。由于haXe提供跨平台跨语言的特性,这要求我们指定它究竟是要把语言编译成什么程序。因此需要一个被成为.hxml的配置文件来指定参数。

我们创建一个complie.hxml文件,然后输入如下内容:

-swf test.swf
-main Test

这个文件提供了两行配置参数。第一行指定编译器将代码编译为swf文件,并指定文件名为test.swf,第二行则指定运行时的默认类为Test类。

现在,我们可以编译我们的代码了。

$ haxe complie.hxml

我是在Linux下使用的,用win的朋友命令行用法类似。

看一下运行结果:

 

实例查看

 

来自:http://snowyrock.spaces.live.com/Blog/cns!B8CBEB7169880B1D!1112.entry