上文中我提到了haxe是一个非常值得学习的编程语言,今天就来详细说说其中缘由。
本人最早学习的语言是basic, 那还是上高中时了。当时不是在PC上,而是在传说中的“小霸王”上写basic程序。之所以想学习编程,其实唯一的目的是因为自己非常喜欢玩游戏,有着自己写一个游戏的冲动。现在仍然记得当时用basic写的一个类似“小蜜蜂”的游戏。学习机上的那个basic语言真的很不错,它封装了基本的图形绘制功能,让我一个完全的初学者,也能通过简单的程序代码,做出自己的小游戏,体会到编程的乐趣。
是的,乐趣,这是你能把一件事做熟,做精的必须条件。如果我当时学的不是basic,而是C(当然,我当时也没钱买PC),我想我可能会被C彻底打败,甚至可能永远不会和程序打教导(被C语言打击过的人应该不少吧)。所以说,选择了一个好的入门编程语言,是相当重要的。
回到现实中,对于初学者, 现在主流的编程语言,无非就是java, C#, C/C++以及各种脚本语言和函数式语言, C/C++和函数式语言就不说了,毫无疑问不适合初学者。剩下就是java, C#和脚本语言了。脚本语言(例如lua, ruby, python),虽然简单,但是想写点有趣的东西,也是难事(你试着用lua去写个图形化的小程序看看)。java是个不错的语言,但是对于初学者,用起来是很无趣的(用java画个园要怎么画...你还得学一堆东西)。C#呢,微软的东西,一向都是拖拖拽拽就能出来东西的,可如果你想用C#绘制一个精灵动画,要怎么做?C#要干这事还真不容易啊...
是haxe闪亮登场的时候了,让我们来看看haxe是怎么实现初学者的愿望的吧:
1. 如果你想玩玩基本的图形绘制,haxe里的Graphics对象就能满足你,例如画个小球(圆形):
this.graphics.beginFill(0xff00ff);
this.graphics.drawCircle(0, 0 100); // 画一个半径100的圆形
this.graphics.endFill();
2. 如果你想移动一个小蜜蜂,那么直接用Bitmap对象:
var myBitmap:Bitmap = new Bitmap(Assets.getBitmapData("小蜜蜂.png")); // 加载透明位图
addChild(myBitmap);
myBitmap.x = 100; // 移动x
myBitmap.y = 100; // 移动y
3. 如果你想做个按钮,那很简单,只要监听一个对象(例如上面的Bitmap对象)的各种鼠标事件(例如MouseEvent.CLICK)。就可以做个最简单的图形按钮了。
熟悉flash的同学们应该注意到了,上面的语法,对象和flash AS3里的一模一样。没错,haxe和flash本身就是很有亲缘的。
有的人可能要问了,那为啥不直接学AS3呢?其实从入门来说haxe和AS3都是很好的,但是从长远的眼光来看,haxe是远优于AS3的(不明白的去看我的第一篇关于haxe的文章)
当然,haxe远不只是适合初学者,haxe有足够的强大,它可以伴随着你,从一个入门者,一直走到牛人,甚至是大牛(如果你有能力去影响haxe本身,甚至是创造一个比haxe更好的语言)。
心动不如行动,赶紧去下载haxe尝试下吧!
下载地址:http://www.haxenme.org/download/
遇到haxe之前,我最爱 C/C++,遇到haxe之后,才发现玩C/C++真是弱爆了,haxe才是程序员自己的语言!
为什么?还是下回分解吧~