ภาษาโปรแกรมสมัยใหม่ Haxe เป็นที่รู้จักกันดีในบางแวดวง แต่การอ่านจำนวนมากจะไม่เคยได้ยินมาก่อน แต่อย่าปล่อยให้สถานะเฉพาะของมันหลอกคุณ นับตั้งแต่ปรากฏตัวครั้งแรกในปี 2548 ได้รับการทดสอบการต่อสู้โดยผู้ภักดี - หากค่อนข้างเงียบ - ติดตาม มีการผสมผสานคุณสมบัติในทางปฏิบัติและเป็นผู้ใหญ่สำหรับการพัฒนาในธุรกิจเกมและแม้แต่บริบททางวิชาการ
Disney, Hasbro และ BBC ใช้ Haxe เหตุใดนักพัฒนาซอฟต์แวร์จึงไม่เคยได้ยินเรื่องนี้มาก่อน บางทีความเก่งกาจอาจหมายความว่าไม่มี 'แอปนักฆ่า' เพียงแอปเดียวสำหรับภาษาโปรแกรม Haxe
หรืออาจเป็นเพราะหนึ่งในแอปนักฆ่ารุ่นแรก ๆ ซึ่งเป็นเส้นทางการย้ายข้อมูลที่อยู่ห่างจากแพลตฟอร์ม Flash ที่กำลังจะตาย - เป็นวิธีที่เฉพาะเจาะจงเล็กน้อย ตลาดเกมแคชชวลที่น่ายกย่องในช่วงไม่กี่ปีที่ผ่านมาอยู่ภายใต้เงามืดของความไม่แน่นอนของ Adobe และในที่สุดก็เป็นที่ชัดเจนแล้วว่าอะไรก็ตามที่ใช้ Flash จะต้องย้ายอย่างเป็นทางการภายในปี 2020 .
วิศวกรซอฟต์แวร์ธุรกิจและ นักพัฒนาเว็บ - ในความเป็นจริงนักพัฒนาเกมหลายคนก็เช่นกันอาจได้ยินเสียง 'Flash' และปรับแต่งได้ทันที ดังนั้น Haxe Foundation จึงใช้ FlashDevelop IDE และรีแบรนด์ให้เป็น Haxe IDE มากขึ้น HaxeDevelop .
แต่อาจเป็นเรื่องยากที่จะสลัดความสัมพันธ์ออกไปโดยเฉพาะอย่างยิ่งเมื่อยังคงมีความเกี่ยวข้องกันอยู่ ตัวอย่างเช่น FlowPlay ที่มีเกมโซเชียล ผู้ใช้ 75 ล้านคน เลือก Haxe ผ่าน Unity และ HTML5 สำหรับการเปลี่ยนแปลงสองปีล่าสุดของพวกเขาที่ 1.4 ล้านบรรทัดของโค้ดที่อยู่ห่างจาก Flash (ดูรายละเอียดเพิ่มเติมได้ใน กรณีศึกษา .)
อาจเป็นเรื่องยากที่ Haxe Foundation จะสามารถเน้นกรณีการใช้งานเช่นนี้ได้ในขณะที่ยังดึงดูดนักพัฒนาซอฟต์แวร์ที่ไม่ใช่เกม แต่อย่าปล่อยให้สิ่งนั้นขัดขวางคุณจากการสำรวจเพียงเล็กน้อย
โครงการ Debian อธิบายถึง Haxe เป็น 'ภาษาโปรแกรมสากล' มีหลายแง่มุมที่
โดยทั่วไปแล้ว ภาษา Haxe หมายถึงการนำรหัส (ดี) มาใช้ซ้ำ . โดยที่ฉันหมายถึง: คุณสามารถใช้รหัส Haxe ซ้ำได้ในหลาย ๆ แพลตฟอร์มคุณสามารถรวมเข้ากับรหัส Haxe และ non-Haxe ที่มีอยู่และสำหรับ ดี ภาษา Haxe ทำให้มีกระบวนทัศน์ที่พยายามและเป็นจริงมากมายเช่นความปลอดภัยของประเภท
การดำเนินการต่อไปตามธีมความอเนกประสงค์สิ่งนี้แปลเป็นกรณีการใช้งานหลัก ๆ หลายประเภท - แน่นอนว่าการโยกย้ายแฟลช
การพัฒนาแอปหรือเกมข้ามแพลตฟอร์มตั้งแต่เริ่มต้น Haxe สามารถกำหนดเป้าหมายแพลตฟอร์มเดสก์ท็อปมือถือและเว็บทั้งหมดจากฐานข้อมูลภาษาเดียว ภาษาโปรแกรมข้ามแพลตฟอร์มไม่ใช่เรื่องใหม่และมีโซลูชันพิเศษสำหรับข้ามแพลตฟอร์ม เดสก์ทอป และ แอพมือถือ และเกม แต่ Haxe ทำสิ่งที่พิเศษกว่าเล็กน้อยในแง่ที่ว่ามันสามารถกำหนดเป้าหมายได้ไม่ใช่แค่หลายแพลตฟอร์ม แต่มีหลายกระบวนทัศน์เช่น HTML5 และไบนารีดั้งเดิม
ภาษาเดียว 'เพื่อปกครองพวกเขาทั้งหมด' ขออภัยการอ้างอิง Tolkien แต่เช่นเดียวกับ Node.js ที่ได้รับการยกย่องว่าเป็นยุคของการใช้ภาษาเดียวกันที่ด้านหน้าและด้านหลังของเว็บไซต์โครงการใด ๆ ที่มีสิ่งที่คล้ายกับสถาปัตยกรรมไคลเอนต์เซิร์ฟเวอร์สามารถใช้ Haxe สำหรับทั้งสองครึ่ง
ตัวอย่างเช่นเว็บแอป FontStruct ใช้ Haxe ทั้งในการวาดภาพบนผืนผ้าใบ HTML5 ที่ส่วนหน้าและผ่าน Java2D ที่ส่วนหลัง (แต่ตามที่กล่าวไว้วิธีนี้เป็นทางเลือก - Haxe เล่นได้ดีกับโค้ดที่ไม่ใช่ Haxe ที่มีอยู่เช่นกันเพราะ ออกแบบมาไม่ให้ผูกมัดคุณ .) การรักษาแอปเกมธุรกิจและแม้แต่ตรรกะการแสดงผลให้สอดคล้องกันในทุกบริบทแพลตฟอร์มและภาษาที่แสดงผลทำได้ง่ายกว่ามากด้วยวิธีนี้
c# คำสั่งบอทที่ไม่ลงรอยกัน
หนีจาก JavaScript เพื่อพิมพ์ความปลอดภัย เดี๋ยวก่อนนี่ไม่ใช่สิ่งที่ TypeScript มีไว้เพื่อ? ใช่หากคุณต้องการ จำกัด ไว้ที่ JavaScript เอาท์พุท ในทางตรงกันข้ามภาษา Haxe ยังสามารถถ่ายทอดเป็น Java, C ++, C #, Python และ Lua ท่ามกลางคนอื่น ๆ .
ในขณะเดียวกันภาษาการเขียนโปรแกรม Haxe นั้นง่ายพอที่จะเรียนรู้ที่มาจาก JavaScript - ไวยากรณ์ของมันไม่ได้หมายถึงการเปลี่ยนกระบวนทัศน์ขนาดใหญ่เช่น Rebol แต่ประโยชน์ของการเปลี่ยนแปลงดังกล่าว ผู้พัฒนาหลักของ Haxe Dr. Andy Li เขียนการเปรียบเทียบเชิงลึกระหว่าง TypeScript และ Haxe ที่ยังคงมีความเกี่ยวข้องในปัจจุบันแม้ว่าทั้งสองภาษาจะยังคงพัฒนาต่อไป
เวิร์กโฟลว์ที่ค่อนข้างรวดเร็วสำหรับคอมไพเลอร์ นี่เป็นชิ้นส่วนที่เพิ่งเพิ่มเข้ามา (แม้ว่า Neko จะเป็นตัวเลือกก่อนหน้านี้ก็ตาม): HashLink เป็นเครื่องเสมือนข้ามแพลตฟอร์ม (VM) ที่ดูเหมือนจะสร้างความสมดุลระหว่างการคอมไพล์ได้เร็วมาก แต่ก็มีประสิทธิภาพเพียงพอที่รันไทม์สำหรับสิ่งต่างๆ เช่นเกม 3D แต่แม้แต่ในเว็บ Haxe สามารถทำงานได้ดีกว่า TypeScript ทั้งในเวลาคอมไพล์และรันไทม์ .
พรมแดนที่น่าตื่นเต้น Haxe เป็นโอเพ่นซอร์สและมีชุมชนที่ใช้งานอยู่โดยมีการเพิ่มคุณลักษณะภาษาใหม่ ๆ ตลอดเวลา ความลับย่อยที่เก็บรักษาไว้อย่างดีที่สุดอาจเป็นเพียงระบบมาโครเวลาคอมไพล์ซึ่งมีอยู่ กรณีการใช้งานที่น่าสนใจมากมาย ช่วยให้คุณมีโปรแกรมเมตาดาต้าที่ตรงใจคุณ (ฉันพูดถึงตัวอย่างบางส่วนด้านล่าง)
ข้อใดต่อไปนี้เป็นความรับผิดชอบของ cfo
สำหรับผู้เริ่มต้นพัฒนาเกมแน่นอน: Madden NFL Mobile, Evoland II, Double Kick Heroes …เหล่านี้และเกมที่เผยแพร่อื่น ๆ อีกหลายร้อยเกมได้รับการพัฒนาโดยใช้ Haxe แต่ Haxe ยังสร้างคลื่นนอกขอบเขตของเกม:
เมื่อพูดถึงเกมและ Haxe มันเป็นโลกที่กว้างไกลในแง่ของเฟรมเวิร์กและไลบรารีโอเพนซอร์ส ตั้งแต่ทีมอินดี้อิสระไปจนถึงสตูดิโอที่ประสบความสำเร็จกับลูกค้าต่างประเทศผู้ใช้ Haxe กำลังแชร์โค้ดกันทั่วทุกที่:
จริงอยู่ที่ฉากการพัฒนาเกมเป็นส่วนที่มองเห็นได้ชัดเจนมากขึ้นในระบบนิเวศของภาษา Haxe (บางทีนี่อาจเป็นเพราะลักษณะของเกมติดขัดเช่น Ludum Dare?) แต่ธุรกิจและแม้แต่ฝ่ายองค์กรก็แสดงผ่านเช่นกัน ตัวอย่างเช่น:
นี่เป็นเพียงไฮไลท์ของคำแนะนำบางส่วนที่ผู้ใช้ภาษา Haxe ได้ดำเนินการไปแล้ว Haxe.org เก็บรักษาไฟล์ รายชื่อห้องสมุดทั้งหมดเรียงตามความนิยม ซึ่งคุณสามารถเรียกดูตามแท็ก แต่สิ่งที่ควรค่าแก่การเน้นสองโครงการที่มูลนิธิ Haxe ยังคงดูแล:
ทุกอย่างฟังดูดี แต่การที่สภาพแวดล้อมการพัฒนาเกิดขึ้นในระบบของคุณเป็นอย่างไร
ไม่ว่าจะเป็น Win, Mac หรือ Linux ขั้นตอนแรกคือ ดาวน์โหลด Haxe . โปรแกรมติดตั้งจะให้บางสิ่งที่แตกต่างกัน:
haxe
จากเทอร์มินัลหรือพรอมต์คำสั่งของคุณhaxelib
คำสั่ง (หมายเหตุ: นอกจากนี้ยังควรค่าแก่การตรวจสอบ ลิกซ์ สำหรับการจัดการแพ็คเกจขั้นสูงที่ Haxelib มีให้โดยเฉพาะอย่างยิ่งหากคุณกำลังพิจารณาใช้ Haxe ในบริบทของมืออาชีพ)(ที่กล่าวว่ามีวิธีตั้งค่ามากกว่าหนึ่งวิธีหากคุณติดตั้ง npm
ไว้แล้วตัวอย่างเช่นคำแนะนำในการติดตั้งของ OpenFL จะมีตัวเลือกในการติดตั้ง Haxe ผ่านคำสั่งของ Yeoman Homebrew และ Chocolatey มีเส้นทางที่คล้ายกันด้วย )
อย่างไรก็ตามเมื่อคุณมี Haxe แล้วคุณสามารถใช้งานได้จากบรรทัดคำสั่งด้วยตัวมันเอง แต่นักพัฒนามักเลือกใช้ IDE FlashDevelop / HaxeDevelop ยังคงได้รับการสนับสนุนเป็นหลักใน Windows เท่านั้น ตัวเลือกอื่น ๆ ส่วนใหญ่เป็นข้ามแพลตฟอร์ม (Win / Mac / Linux):
สำหรับวัตถุประสงค์ของคู่มือเริ่มใช้งานฉบับย่อนี้เราจะใช้ VSCode อาจจะง่ายที่สุดในการรับไฟล์ Haxe Extension Pack ผ่าน Ctrl + P และ ext install haxe-extension-pack
แต่ถ้าคุณเป็นคนเรียบง่ายคุณอาจต้องการ ext install vshaxe
สำหรับปลั๊กอิน Haxe พื้นฐานแล้วเลือกและเลือกส่วนอื่น ๆ ของแพ็คที่คุณต้องการ
เนื่องจากภาษา Haxe สามารถแพร่กระจายไปยังเป้าหมายจำนวนมากได้การจัดการวิธีการทำสิ่งนี้สำหรับแต่ละคนทำได้ง่ายขึ้นโดยใช้ไฟล์สร้าง อย่างไรก็ตามในการเริ่มต้นสิ่งที่เราต้องมีคือไฟล์คลาส Haxe ไฟล์เดียวที่มี .hx
ส่วนขยาย.
สำหรับโค้ดที่เราจะใส่นั้นเรามาดูตัวอย่าง Array Comprehensive จาก try.haxe.org และวางไว้ในไฟล์ชื่อ Test.hx
:
class Test { static function main() { var a = [for (i in 0...10) i]; trace(a); // [0,1,2,3,4,5,6,7,8,9] var i = 0; var b = [while(i <10) i++]; trace(b); // [0,1,2,3,4,5,6,7,8,9] } }
ตอนนี้จากตำแหน่งของ Test.hx
คุณสามารถเรียกใช้ Haxe ในโหมดการตีความได้นั่นคือโดยไม่ต้องถ่ายโอนเลยเพื่อดูผลลัพธ์ของทั้งสอง trace()
โทร:
$ haxe -main Test --interp Test.hx:4: [0,1,2,3,4,5,6,7,8,9] Test.hx:8: [0,1,2,3,4,5,6,7,8,9]
เยี่ยมมากมันได้ผล!
วิธีโค้ด c++
สมมติว่าคุณต้องการแบ่งปันสิ่งนี้กับคนทั้งโลกผ่านทาง JavaScript บนหน้าเว็บของคุณ ที่สร้างขึ้นใน Haxe และง่ายพอ ๆ กับ:
$ haxe -main Test -js haxe-test.js
หากคุณติดตั้ง Node.js คุณสามารถตรวจสอบผลลัพธ์จากบรรทัดคำสั่งดังนี้:
$ node my-cool-test.js [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ] [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
มิฉะนั้นรหัสใน haxe-test.js
พร้อมใช้งานแล้วหากคุณต้องการรวมไว้ในหน้าเว็บคุณจะเห็นผลลัพธ์ในคอนโซลนักพัฒนาซอฟต์แวร์ของเว็บเบราว์เซอร์เมื่อโหลด
สมมติว่าคุณต้องการไบนารีแบบเนทีฟสำหรับเดสก์ท็อปที่คุณกำลังพัฒนา ในการทำเช่นนี้เราจะเปลี่ยนไปยังเป้าหมาย C ++ ดังนั้นเราจึงสามารถใช้ C ++ (สมมติว่าคุณติดตั้งไว้) เพื่อรวบรวม .cpp
เอาต์พุตเป็นไบนารีดั้งเดิม ด้วยเหตุนี้เราจึงต้องมี hxcpp
ดังนั้นเราจะต้องติดตั้ง:
$ haxelib install hxcpp
หลังจากนั้นเราสามารถทำการ Transpilation และ Compilation พร้อมกันด้วยคำสั่งนี้:
$ haxe -main Test -cpp bin
จากนั้นไบนารีของเราก็พร้อมที่จะทำงาน:
$ bin/Test Test.hx:4: [0,1,2,3,4,5,6,7,8,9] Test.hx:8: [0,1,2,3,4,5,6,7,8,9]
(ใน Windows จะเป็น binTest.exe
แทน)
แม้จะมีส่วนขยายที่ชี้นำ .hxml
ไฟล์ไม่ใช่ XML ซึ่งแตกต่างจาก .hxproj
ไฟล์ที่ HaxeDevelop และ FlashDevelop ใช้ แต่ฉันจะไม่กล่าวถึงในบทความนี้ นี่คือสิ่งที่ build-all.hxml
ดูเหมือนว่าจะบรรลุความสำเร็จตามที่เราได้ทำไว้ข้างต้น:
-main Test # tells Haxe our main class is Test (case-sensitive) --each # all of the above commands will be applied to each target -js haxe-test.js # our first transpilation target --next # no other options, time to move to the next target -cpp bin # our second transpilation (and compilation) target
สังเกตความแตกต่างของคำนำหน้า: -main
, -js
และ -cpp
พารามิเตอร์แต่ละตัวที่คุณจะส่งผ่านไปยัง haxe
โดยตรงในขณะที่ --each
และ --next
(ขีดกลางสองตัว) เป็นระดับเมตาโดยบอกคอมไพเลอร์ว่าจะทำอย่างไรกับพารามิเตอร์อื่น ๆ
ตอนนี้คุณสามารถเข้าถึงทั้ง JavaScript และเนทีฟเป้าหมายได้ง่ายๆเพียงแค่เรียกใช้ haxe build-all.hxml
หากคุณต้องการเปลี่ยนเป็น JavaScript แล้วเรียกใช้ผลลัพธ์ทันทีโดยใช้ Node คุณสามารถเรียกใช้ haxe run-js.hxml
โดยที่ run-js.hxml
มีลักษณะดังนี้:
-main Test -js haxe-test.js -cmd node haxe-test.js
ในทำนองเดียวกัน 'สร้างและรัน' สำหรับไบนารีดั้งเดิมจะมีลักษณะเช่นนี้ (บน Linux นั่นคือรูปแบบที่จำเป็นสำหรับ Windows):
-main Test -cpp bin -cmd bin/Test
VSCode ล่ะ? ส่วนนั้นเป็นเรื่องง่าย: ส่วนขยายที่คุณติดตั้งจะรับ .hxml
เหล่านี้โดยอัตโนมัติ ไฟล์ให้งานบิวด์ที่สร้างขึ้นโดยอัตโนมัติ (โดยไม่มี tasks.json
) ในเมนูแบบเลื่อนลงให้คุณเลือกไฟล์บิลด์ที่จะใช้
หมายเหตุ: ระวังถ้าคุณมี หน้าต่าง VSCode หลายหน้าต่างเปิดอยู่ แม้ว่าในขณะที่เขียนนี้อาจทำให้เกิดปัญหากับการสร้างผ่าน Ctrl + B (คุณยังสามารถใช้บรรทัดคำสั่งได้ไม่มีปัญหา)
หากคุณทำตามการตั้งค่าข้างต้นคุณอาจสังเกตเห็นว่าหน้าดาวน์โหลดมีลิงก์ไปยังทั้ง 3.x และ 4.x สาขาของตัวติดตั้ง Haxe
คอมไพเลอร์ Haxe เวอร์ชัน 4 ที่ล้ำสมัยนำมาพร้อมกับคุณสมบัติใหม่มากมาย ในกรณีหนึ่งนี่เป็นข้อพิสูจน์ถึงพลังของระบบมาโคร: คอมไพเลอร์ Haxe เคยขาดการสนับสนุนฟังก์ชันแลมบ์ดาแบบสั้นดังนั้น ไลบรารี slambda ดำเนินการสนับสนุนผ่านมาโคร . ในเวอร์ชัน 4 การสนับสนุนจะสร้างขึ้นในคอมไพเลอร์และไลบรารีกำลังถูกเลิกใช้งาน
แล้ว Haxe 4 นำมาที่โต๊ะอะไรอีก?
ไม่จำเป็นต้องมีผู้ให้ความสนใจมากเกินไป แต่ Haxe 4 มีการปรับปรุงที่เล็กกว่ามากมาย ท้ายที่สุด Haxe เอง คือ เทคโนโลยีที่พัฒนาขึ้นโดยทีมงานขนาดเล็กและมีสมาธิมากกว่าบางทีอาจจะมากกว่าโครงการที่คล้ายกันและอาจจะต้องใช้เวลานานพอสมควรที่จะเรียกโครงการใดโครงการหนึ่ง คล้ายกัน ถึง Haxe
คุณสมบัติที่น่าสนใจที่สุดหลายอย่างได้ถูกนำเสนอมาระยะหนึ่งแล้ว ตัวอย่างเช่นฉันได้กล่าวไว้ข้างต้นว่า Haxe มีเวิร์กโฟลว์ที่รวดเร็วผ่าน Neko หรือ HashLink แต่ตั้งแต่ปี 2016 เป็นต้นมาก็มีเซิร์ฟเวอร์คอมไพล์ ซึ่งหมายความว่าสำหรับเป้าหมายที่ไม่ใช่ VM การคอมไพล์โปรเจ็กต์ใหม่ที่ขึ้นอยู่กับไลบรารีขนาดใหญ่จะเร็วกว่ามากเนื่องจากการแคชในหน่วยความจำซึ่ง Haxe IDE สามารถใช้ประโยชน์ได้เช่นกันสำหรับการเติมโค้ด
แต่โดยเฉพาะอย่างยิ่ง Haxe 4 จะเห็น:
ในขณะที่คุณสามารถดำน้ำได้ตลอดเวลา API มาตรฐานของ Haxe หรือ เอกสารไวยากรณ์ ยังมีอีกบางส่วน วัสดุ Haxe ที่เป็นมิตรกับผู้เริ่มต้น ใช้ได้ เช่นกัน .
หากคุณต้องการให้ความสำคัญกับวิดีโอ Haxe US Summit 2018 ที่ซีแอตเทิล มีการประชุมเชิงปฏิบัติการขึ้น ควบคู่ไปกับปีอื่น ๆ เพื่อรับมุมมองจากคนวงในมากขึ้น
แต่บางครั้งสิ่งที่อาจช่วยให้คุณเริ่มต้นได้ง่ายขึ้นคือบทแนะนำที่เฉพาะเจาะจงมากขึ้น ชอบ บทช่วยสอนเริ่มต้นจนจบเกี่ยวกับวิธีสร้างเกมรวบรวมข้อมูลดันเจี้ยนใน HaxeFlixel . นอกจากนี้ยังมีไฟล์ ชุดบทเรียน HaxeFlixel ที่อธิบายเพิ่มเติมว่าเกิดอะไรขึ้นเบื้องหลังในขณะที่ดำเนินไป ในตอนท้ายของ 3D มีไฟล์ บทแนะนำ Haxe เกี่ยวกับการเริ่มต้นใช้งาน Armory .
หรือบางทีคุณแค่ต้องการ บทแนะนำ Haxe เกี่ยวกับการประมวลผล XML ที่รวดเร็ว นี่เป็นหนึ่งในแบบฝึกหัดจำนวนมากที่ตอนนี้มีอายุเพียงไม่กี่ปี แต่ก็ยังค่อนข้างเกี่ยวข้อง ดังที่ฉันได้กล่าวไว้ก่อนหน้านี้แม้ว่าจะมีพรมแดนมากมาย แต่พื้นฐานหลายอย่างของการพัฒนาใน Haxe นั้นมีความเสถียรในตอนนี้ดังนั้นบทแนะนำจึงไม่จำเป็นต้องล้าสมัยเร็วนัก (ในกรณีที่พวกเขาทำมักมาจากการพึ่งพาไลบรารีเฉพาะไม่ใช่บนแกนของ Haxe เอง)
อย่างที่คุณเห็นคุณสามารถใช้ภาษา Haxe หรืออาจพาคุณไปในทิศทางต่างๆ ฉันหวังว่าคุณจะสนุกกับการแนะนำโลกที่หลากหลายและน่าสนใจของ Haxe และฉันหวังว่าจะได้ฟังสิ่งที่คุณทำด้วยเทคโนโลยีของ Haxe!
ที่เกี่ยวข้อง: รีวิว Haxe: คุณสมบัติและจุดแข็งของ Haxe 4จริงๆแล้ว Haxe นั้นเก่ากว่า TypeScript เล็กน้อยและในขณะที่มันไม่ได้มีน้ำหนักองค์กรเท่ากัน แต่ภาษาและทรานสไพเลอร์ก็ค่อนข้างเป็นผู้ใหญ่
คอมไพเลอร์ Haxe สามารถกำหนดเป้าหมายเป็น JavaScript, Java, C ++, C #, PHP, Python, ActionScript 3, Flash และ Lua รวมถึงเครื่องเสมือน HashLink และ Neko ในทางกลับกันเอาต์พุตของ Haxe สามารถทำงานบน Windows, Linux, macOS, iOS, Android, PlayStation 4, PlayStation Vita, Nintendo Switch และ XBox One
c corp หรือ s corp llc
ไม่แม้ว่าระบบนิเวศ gamedev ที่มีชีวิตชีวาของ Haxe จะรวมถึงเฟรมเวิร์กเช่น OpenFL, HaxeFlixel, Heaps, Kha, Flambe, Armory, Kha, awe6, NME และ HaxePunk แต่ก็มีประโยชน์ในการผลิตสำหรับแอปพลิเคชันทางธุรกิจและเว็บไซต์