doc/why [en]
Differences between version #7117 and #7197
1c1 < Haxe is a powerful modern language with many compelling features. It is aimed at giving developers a tool to create websites & applications in a single unified language. Whether you use Haxe for its crossplatform features, or focus on a single platform, there are many reasons to adopt it: --- > Haxe is a powerful modern language with many compelling features. It is aimed at giving developers a tool to create websites & applications using a single unified programming language. Whether you use Haxe for its cross-platform features, or focus on a single platform, there are many reasons to adopt it: 3c3 < * **ECMA style programming for clientside, serverside & desktop** --- > * **ECMA style programming for client-side, server-side & desktop** 8,10c8,10 < Haxe offers very tight type checking. Having compile-time checks in place allows you to catch errors in your code BEFORE testing it in the browser. This allows for a faster workflow for dynamically typed targets such as PHP and JavaScript. < * **Haxe adds missing language features to target platforms** < Haxe has been created out of a desire for better features and tools for web oriented development. It adds missing features to many of the targets - eg. inlining & generics to Flash development, packages & typing to JavaScript & PHP, dynamic objects & Runtime Type Information (enabling Reflection) to C++, and much more. Adding features to targets where they are lacking enables a Haxe developer to have the same rich set of features available for use on ALL platforms that they want to target. --- > HaXe offers very tight type checking. Having compile-time checks in place allows you to catch errors in your code BEFORE testing it in the browser. This allows for a faster workflow for dynamically typed targets such as PHP and JavaScript. > * **HaXe adds missing language features to target platforms** > HaXe has been created out of a desire for better features and tools for web-oriented development. It adds missing features to many of the targets - eg. inlining & generics to Flash development, packages & typing to JavaScript & PHP, dynamic objects & Runtime Type Information (enabling Reflection) to C++, and much more. Adding features to targets where they are lacking enables a Haxe developer to have the same rich set of features available for use on ALL platforms that they want to target. 13c13 < Haxe allows you to work across many platforms, this can be quite useful. --- > HaXe allows you to work across many platforms, this can be quite useful. 16c16 < You can use remoting classes to pass objects between different platforms. Using the same codebase for difference platforms means that the same classes can be compiled for many platforms. This allows for successful de-serialization making the remoting elegant and fast. --- > You can use remoting classes to pass objects between different platforms. Using the same codebase for different platforms means that the same classes can be compiled for many platforms. This allows for successful de-serialization making the remoting elegant and fast. 20c20 < Code may be tailored for a single target platform, or designed for many platforms. For instance tween classes can be used in ActionScript, JavaScript and C++. Code logic can be transferred to the most suitable target in the platform with few changes, so if frontend code is running too slow, you can quickly move and test the same code running on the backend --- > Code may be tailored for a single target platform, or designed for many platforms. For instance tween classes can be used in ActionScript, JavaScript and C++. Code logic can be transferred to the most suitable target in the platform with few changes, so if front-end code is running too slow, you can quickly move and test the same code running on the back-end 22c22 < ScreenweaverHx allows you to embed flash in a neko application. This allows a Flash application to act as a desktop application & access system functionality. All of your system access is written in haxe and can communicate with your haxe SWF with ease. --- > ScreenweaverHx allows you to embed Flash in a Neko application. This allows a Flash application to act as a desktop application & access system functionality. All of your system access is written in haxe and can communicate with your haxe SWF with ease. 32,33c32,33 < You can compile back to Flash 6 if needed, without having to write AS 1 code. This make backward compatability easy. < * **Faster & more optimized than the Flex compiler and more easy to use and setup than the Flex SDK** --- > You can compile back to Flash 6 if needed, without having to write AS 1 code. This makes backward compatability easy. > * **Faster & more optimized than the Flex compiler and easier to use and setup than the Flex SDK** 36c36 < You can load a Haxe SWF into one made by Flash or Flex or vice versa, without any troubles. --- > You can load a Haxe SWF into one made by Flash or Flex or vice-versa, without any troubles. 38c38 < Using the SWC Export feature you can generate an SWC. This can then be loaded by Flex. This will allow library makers to use Haxe for its great features, while still supporting the their AS3 user-base. --- > Using the SWC Export feature you can generate an SWC. This can then be loaded by Flex. This will allow library makers to use Haxe for its great features, while still supporting their AS3 user-base. 48c48 < JavaScript2 promised a lot of great features for the future. HaXe provides a quite similar experience, except it is available now and is fully compatible with current browsers. --- > JavaScript2 promised a lot of great features for the future. HaXe provides a very similar experience, except it is available now and is fully compatible with current browsers. 50c50 < As expected, when using Haxe to target JavaScript, you get nice autocompletion of the DOM. You'll be amazed what properties are tucked away in there, which you never realized before! --- > As expected, when using Haxe to target JavaScript, you get nice autocompletion of the DOM. You'll be amazed at the properties that are tucked away in there, which you may never have realized before! 57c57 < Neko is a lightweight virtual machine which offers great speed and features for developing commandline and desktop applications. Haxe has full access to its features, making writing crossplatform (mac, pc, linux) applications fast and easy. --- > Neko is a lightweight virtual machine which offers great speed and features for developing command-line and desktop applications. Haxe has full access to its features, making writing crossplatform (mac, pc, linux) applications fast and easy. 69c69 < Via writing wrapper classes, the full range of PHP libraries can be accessed - and all fully type-checked. --- > By writing wrapper classes, the full range of PHP libraries can be accessed - and all fully type-checked. 74c74 < For tasks which require a little more grunt that a virtual machine like neko can provide, C++ can give you that power. It's currently only on the CVS - but soon to be released. --- > For tasks which require a little more grunt than a virtual machine like neko can provide, C++ can give you that power. It's currently only on the CVS - but soon to be released. 79,80c79,80 < * **Compiler based autocompletion** < HaXe provides a compiler based autocompletion system which allows IDEs to integrate completion on many otherwise hard to predict objects, such as those using type inference. This makes Haxe autocompletion fast and accurate. Check out FlashDevelop for example. \ No newline at end of file --- > * **Compiler based auto-completion** > HaXe provides a compiler based auto-completion system which allows IDEs to integrate completion on many otherwise hard to predict objects, such as those using type inference. This makes Haxe auto-completion fast and accurate. Check out FlashDevelop for example. \ No newline at end of file
| Ver | Date | User | Action |
|---|---|---|---|
| #15276 | 2012-08-06 10:57:14 | hbatra | Changed title from Why use HaXe? to Why use Haxe? |
| #15275 | 2012-08-06 10:56:47 | hbatra | View | Diff |
| #15273 | 2012-08-04 23:23:44 | hbatra | Changed title from Why use Haxe? to Why use HaXe? |
| #15272 | 2012-08-04 23:23:13 | hbatra | View | Diff |
| #15271 | 2012-08-04 23:18:34 | hbatra | View | Diff |
| #13875 | 2012-05-01 15:58:59 | unzoo | View | Diff |
| #12593 | 2012-02-23 16:00:37 | cambiata | View | Diff |
| #12592 | 2012-02-23 15:59:23 | cambiata | View | Diff |
| #12591 | 2012-02-23 15:56:56 | cambiata | Restored to version #9344 |
| #12590 | 2012-02-23 15:55:53 | cambiata | View | Diff |
| #12589 | 2012-02-23 15:55:03 | cambiata | View | Diff |
| #9344 | 2010-11-17 04:57:54 | jjdonald | View | Diff |
| #9343 | 2010-11-17 04:57:37 | jjdonald | View | Diff |
| #9342 | 2010-11-16 18:08:18 | powerfonzi | View | Diff |
| #9142 | 2010-08-25 15:19:46 | AndyLi | View | Diff |
| #8383 | 2010-04-02 08:36:56 | AndyLi | View | Diff |
| #8380 | 2010-04-01 15:13:46 | tong | View | Diff |
| #7960 | 2010-01-24 22:45:33 | loudoweb | View | Diff |
| #7197 | 2009-10-28 22:41:45 | Chax0 | View | Diff |
| #7117 | 2009-10-22 11:58:35 | vhesselbom | View | Diff |
Previous | Next