haxe - Haxe值得学习吗?

标签 haxe

对于那些使用 Haxe 的人,它对您有何用处?阅读该网站,它看起来非常有前途。它是否提供了显着的可移植性?

现实世界中有哪些可能未被重视的优势?

有哪些陷阱或陷阱?

最佳答案

Is Haxe worth learning?

简短的回答是:绝对!

For people out there using Haxe, what makes it useful for you?

如果您是一名 Web 开发人员,您就会知道您不能长期坚持使用单一技术。迟早您将不得不处理环境或目标的变化(您为 .NET 开发,但重要客户需要 PHP,或者该小部件可能应该使用 Flash 而不是 Javascript),这是最好的情况。在最坏的情况下,您将不得不不断地切换,通常在同一工作日内多次切换。

这些切换可能会浪费您大量的时间,因为您需要多次更改编程范例,并且可能是因为您在针对特定目标编写库时会有很多重叠。 Haxe 试图通过只有一种源语言(Haxe 语言)和许多输出(通过 Haxe 编译器)来减轻过渡的痛苦。无论您的背景如何,该语言都非常友好且易于学习。

Reading the website it looks very promising. Does it provide significant portability?

无论您部署到什么平台,语言都是相同的。因此,您可以以与 JS、Flash、C++ 等相同的方式定义类/接口(interface)/枚举/typedef。如果您定义的这些类型不依赖于特定平台 API,则可以毫不费力地在不同平台之间重用它们。所有平台还共享通用 API,例如 XML 访问、HTTP 连接和反射。具有共同点的平台(即 Neko 和 PHP)共享相同的 API,用于文件访问或 Web 服务器开发等。

What are some real world and perhaps under appreciated advantages?

  • 如果您有使用 Flash/Flex 的经验,您就会知道编译器如何减慢您的工作速度(唯一的好处是可以在等待时喝杯咖啡休息一下;))。 Haxe 编译器的速度要快很多倍,快到大多数时候您甚至没有注意到它在工作。
  • 生成的字节码比 Adob​​e 工具生成的等效字节码快得多。
  • 此外,在闪存领域,Haxe 还可以“内联”函数或访问仅通过使用 Alchemy 在其他地方可用的内存功能。
  • 如果您需要,您还可以决定以哪个版本的 Flash 为目标,从 6 到 10; API 发生了很大变化,但 Haxe 语言完全相同。

说到服务器端,我们都知道 PHP 是多么普遍。您可以使用 Haxe 来开发应用程序,如果您的 Web 应用程序增长,则可以扩展到 Neko 甚至 C++。

What are the pitfalls or gotchas?

以下是常见误解的列表:

  • Haxe 还年轻且不成熟 事实并非如此,Haxe 现在已经快 4 岁了,已经发布了 25 个正式版本(不是构建版本)+ 13 个 alpha 和 beta,它不断更新并且具有一个非常专注的社区。它被多个开发领域的许多人专业使用;看看mailing list archive了解人们如何使用 Haxe。

  • Haxe 很复杂 因为 Haxe 的主要目标毫无疑问是 AS3,所以人们期望它必须有向导或 GUI。如前所述,Haxe 是一种语言和编译器,这使得它适合程序员,但不太适合设计师。

  • 没有任何 IDE 真正的部分是 IDE 可以在很多方面进行改进,以更好地与 Haxe 集成,但已经有很多 valid options .

  • 出版的唯一一本书已经过时了这里也有一些事实,不幸的是,这本书是在主要版本(从 V1 到 V2)发生前几个月出版的。该主要版本没有太大变化,但确实增加了一些不兼容性。这本书仍然是一个有效的资源(我这么说不仅仅是因为我写了它;))

关于haxe - Haxe值得学习吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1384647/

相关文章:

haxe - 如何将ufront与sqlite连接?

inheritance - 静态方法不能继承?

haxe - 如何获取 map 的大小?

terminal - 如何为 Haxe 设置 Jeash?

haxe - 如何在 Haxe 的 C# 代码输出中保留泛型类型?

asynchronous - 如何不等待函数结束?

javascript - JS 兼容的 Haxe promise ?

node.js - haxe node js 拆分js,而不是一个js

haxe - 在 HaxeFlixel 中编码 Assets 的最佳解决方案

compiler-optimization - 将 Haxe 编译为完全剥离的 cpp 目标?