Haxe简介Haxe与ActionScript3.0区别
我们公司现在用的是as3转haxe然后最终转成C++的方案;
Flash没落:
自智能手机普及以来,Flash Player插件的浏览器支持一直在下降,随着HTML5 技术的出现,让网站可以在没有插件的情况下运行包括视频、小游戏在内的视觉元素。许多网站也纷纷转向 HTML 5。
1.
Haex:
相比其他语言(Java的平台是 JVM,C#的平台是.Net,ActionScript的平台是Flash Player等等),Haxe才是真正的多平台语言。不管是开发原生iOS、Android应用,还是网页;不论是应用于服务器还是个人桌面,Haxe都 可以胜任。同时Haex程序可以编译成为.swf(flash)、js(javascript)、.php(PHP)、C++的code,NME库使用这个特性再IOS和Android上直接运行,同时也能生成对应的java.C# code。所以我们平台目前先把ActionScript3.0转换为Haex再装换为C++,从而完成对AS到C++的迁移。2.AS3.0 与HAEX:
AS3.0:
String
Number
int
Boolean
String
Object
void
HAXE用途Float和Int作为核心类型,这是类似Number与int在ActionScript。Haxe用于Dynamic描述通配符类型,类似于ActionScript *类型,并且接近ActionScript Object类型。
HAXE:
String
Float
Int
Bool
Dynamic
Void
3.AS与Haex命名空间不一样:;*
AS支持public、protected、private与自定义internal
*
Haex只支持public和private(private行为类似于AS的protection)
*
Haxe将这些控制简化为两级访问。public行为与ActionScript public访问级别private类似,其行为与Actionscript protected访问级别类似。
*
可以使用@:access,@:allow或@:privateAccess元数据HAXE访问或允许类之间的私人通道,支持其他使用情况。
4.常量:
常量是具有固定值的属性,并且永远不会更改。ActionScript 3.0 const在声明常量属性时定义关键字,而Haxe则使用inline关键字。
Haxe与ActionScript3.0区别
1、基本类型:
ActionScript3:
Boolean
int
Number
Object
void
Array
Vector.
HAXE:
Bool
Int
Float
Dynamic
Void
Array
Array
2、包声明:
AS3:
package com.example.myappliction{}
HAXE:
package com.example.myappliction;
3、类定义:
AS3:
public class MyClass{
public function MyClass(){
}
}
HAXE:
class MyClass{
public function new(){}
}
4、循环:
AS3.0:
for(var i :uint =0;i<100;i++){}
for each (var value:String in items){}
for (var propertyName:String in Object){}
HAXE:
for (i in 0…100){}
for (value in items){}
var fields = Reflect.fields(object);
for(properrtyName in fields){}
5、switch语句:
AS3.0:
switch(value){
case 1:
trace(“Equal to 1”);
break;
default:;
trace(“Not equal to 1”);
break;
}
HAXE:
switch(value):
case 1:
trace(“Equal to 1”);
default:
trace(“Not equal to 1”);
}
6.类型转换:
ActionScript3:
var car:Car = vehicle as Car;
var toString:String = string(10);
var toNumber :Number = Number(“10”);
var toInteger:int = int(10.1);
Haxe:
var car:Car = cast vehicle;
var car = cast(vehicle,Car);
var toString = Std.string(10);
var toNumber = Std.parseFloat(“10”);
var toInteger = Std.int(10.1);
7.反射:
AS3:
var foo object[“foo”];
bar.apply(this,[“hi”];
Haxe:
var foo = Reflect.field(object,“foo”);
Reflect.callMethod(this, bar, [“hi”]);
8.常量:
ActionScript3:
private const gravity:Number = 9.8;
Haxe:
private inline static var gravity =9.8;
Haxe简介Haxe与ActionScript3.0区别相关推荐
- html5 canvas 版 hello world! 暨haXe简介
没想到我的第一个移动项目会是 html5 项目. 前一阵给一海外客户开发了Flash 版的电子杂志,客户还需要 ipad 版的.我最开始提出这样一种解决方案:在现有Flash程序基础上,使用AIR 2 ...
- ActionScript3.0自定义Flex组件问题 重写组件的使用
最近在做Flex的一些学习,需要对Flex组件重写,当然可以两种选择MXML和ActionScript3.0重写,当然MXML的可视化的操作为重写提供了方便,但是要是更改组件的默认属性和添加一些框架属 ...
- C语言 NULL 和 0 区别 - C语言零基础入门教程
目录 一.关于 NULL 定义 二.NULL 和 0 区别 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.关于 NULL 定义 NU ...
- actionscript 3.0 怎么写android 程序,(ActionScript3.0笔记)第一个程序HelloWorld!
(ActionScript3.0笔记)第一个程序HelloWorld! 创建我的第一个ActionScript3.0程序--HelloWord! 首先下载ActionScript3.0的集成开发环境, ...
- 0 0 0 ’\0’ 区别
ASCII码值0 0 0,0 . '0' . "0" . '\0' 区别 ① '0' 代表 字符0 ,对应ASCII码值为 0x30 (也就是十进制 48) ② '\0' 代表 空 ...
- 《点睛:ActionScript3.0游戏互动编程》——第2章 融会贯通—大话图层样式与滤镜2.1 Photoshop图层样式初体验...
本节书摘来自异步社区<点睛:ActionScript3.0游戏互动编程>一书中的第2章,第2.1节,作者:游志德 , 彭文波 更多章节内容可以访问云栖社区"异步社区"公 ...
- 等保(网络安全等级保护)2.0与定级备案之——等保2.0与等保1.0区别解读
等保2.0与等保1.0区别解读 这4900+的字儿也太多了,哈哈,就先这样吧,听讲座去了 什么是等保? 等保,即网络安全等级保护标准. 2007年我国信息安全等级保护制度正式实施,通过十余年的时间的发 ...
- mysql5.7和mysql8.0区别
mysql5.7和mysql8.0区别 mysql5.7之后的一个版本就是mysql8.0,之所以版本号跨度这么大是因为这5.7之后的版本区别确实很大,很多地方不一样了. mysql5.7字符编码的问 ...
- 基于ActionScript3.0的DoodleJump 游戏实现
基于ActionScript3.0的DoodleJump 游戏实现 <附加>: 分工: 王钊:游戏整体设计 陈旻:算法细节实现 1.流程图: 2.UML图: 3.为了游戏性和稳 ...
最新文章
- 微软宣布 Win10 设备数突破8亿,距离10亿还远吗?
- 数据蒋堂 | 怎样生成有关联的测试数据
- Zabbix监控MongoDB
- Java troubleshooting guide
- java获取json中的某个值_接口测试之json中的key获取
- bash中 21 的解释
- Web框架之Django_05 模型层了解(单表查询、多表查询、聚合查询、分组查询)
- 盖茨发文谈如何实现零碳目标 称看好电动车未来
- zeppelin报错master is set as yarn, but spark.submit.deployMode is not specified
- 提交表单数据到数据库_普通表单不仅适用于数据库
- python按键退出循环_Python的for循环退出
- pygame之mouse模块
- 解决word各级标题序号后面有长空格
- edge浏览器被毒霸导航锁定如何解除
- Scikit-learn学习系列 | 1. sklearn的简要使用介绍与数据集获取
- 牵一发动全身【Nhibernate基本映射】
- 云计算通俗解释,什么叫云计算
- 什么是SAP HANA?
- /Users/xxxx/.zshrc:export:101: not valid in this context: /Users/xxxx/xxxx
- 【STM32单片机】推箱子游戏设计
热门文章
- SQL Server直接读取同花顺股票数据
- 爬虫怎么使用代理IP
- 语言模型指的什么意思?
- 前端js调用后端API获取数据的三种方法(2022.7.25)
- android类京东到家开发源码
- 四川传媒学院计算机应用技术分数,2017四川传媒大学分数线_四川传媒学院专业排名及分数线...
- 蚂蜂窝上线酒店预订 商业化进展步骤之一
- linux14.04设置DNS,Ubuntu 14.04 DNS 配置重启不失效
- 知识增强图语义理解技术
- 蓝牙Bluetooth BR/EDR 和 Bluetooth Smart 必需要知道的十个不同点