Haxe: السر الكبير للتنمية عبر المنصات

لغة البرمجة Haxe الحديثة معروفة جيدًا في دوائر معينة ، لكن الكثير من الذين يقرؤون هذه المادة ربما لم يسمعوا بها أبدًا. ولكن لا تدع وضعه المناسب يخدعك. منذ ظهوره لأول مرة في عام 2005 ، واجهه أتباعه الموالون وإن كانوا هادئين في المعركة. ويتميز بمزيج عملي ومدروس من القدرات المناسبة للتطوير في الأعمال والألعاب وحتى للأغراض الأكاديمية.

تستخدم ديزني وهاسبرو وبي بي سي Haxe ، فلماذا لم يسمع معظم المطورين بها؟ ولعل براعة Haxe تعني أنه لا يمكن تسميتها ميزة قاتلة واحدة.

أو ربما يكون السبب هو أن أحد الاستخدامات المبكرة لـ Haxe هي استخدامه كوسيلة للترحيل من منصة Flash المحتضرة ، والتي تعد مكانة جميلة. على مدار الأعوام القليلة الماضية ، أصبح سوق الألعاب غير الرسمية في حالة من النسيان ، ولكن أصبح من المعروف الآن أنه بحلول عام 2020 ، سيتوقف دعم Flash رسميًا من قبل Adobe وستصبح جميع محتويات Flash على النسيان.

يمكن لمهندسي برامج الأعمال ومطوري الويب والعديد من مطوري الألعاب ، الذين يسمعون كلمة "فلاش" ، أن يفقدوا اهتمامهم بالموضوع على الفور. هذا الموقف ، على سبيل المثال ، كان السبب في ظهور HaxeDevelop - وهو IDE لـ Haxe ، والذي يعد FlashDevelop أساسًا ، ولكنه متخصص في تطوير Haxe ومن مكونات التوزيع الخاصة به لتطوير ActionScript تمت إزالته.

لا يزال التخلص من مثل هذه الجمعيات أن Haxe ملجأ لمطوري Flash السابقين أمر صعب للغاية ، خاصةً عندما تظل (مثل هذه الجمعيات) ذات صلة. على سبيل المثال ، اختارت FlowPlay ، التي تضم ألعابها الاجتماعية 75 مليون مستخدم ، Haxe ، وليس Unity أو JavaScript خالصًا ، لترجمة مشاريعها (مع قاعدة الكود من 1.4 مليون سطر) من Flash إلى HTML5 (يتوفر مزيد من المعلومات حول هذا في هذه المواد ).

ربما يكون هذا هو السبب في أنه من الصعب تحديد الحالات الناجحة لاستخدام Haxe ، وفي الوقت نفسه لإثارة اهتمام مطوري البرامج. ولكن دعنا ما زلنا نقوم ببعض الأبحاث.

فما هو عن Haxe؟


بشكل عام ، يعني استخدام لغة Haxe أنه يمكنك إعادة استخدام الكود (الجيد) . أعني بذلك أنه يمكن إعادة استخدام رمز Haxe على العديد من المنصات ، ويمكن دمجها مع رمز Haxe الحالي ولغات أخرى ، وكذلك ، توفر لغة Haxe العديد من النماذج المثبتة ، مثل أمان الكتابة.

استمرارًا لموضوع الشمولية ، ندرج الفئات الرئيسية لسيناريوهات استخدام Haxe (باستثناء الترحيل من Flash ، بالطبع).

تطوير تطبيق أو لعبة عبر منصة من الصفر. باستخدام رمز Haxe ، يمكنك العمل مع منصات سطح المكتب والجوال ومنصات الويب. لا يوجد شيء جديد في لغات البرمجة عبر الأنظمة الأساسية ، وإلى جانب Haxe ، هناك حلول خاصة أخرى لتطبيقات وألعاب سطح المكتب والأجهزة المحمولة . لكن Haxe في هذا الصدد مختلف في ذلك الرمز لن يعمل فقط على منصات مختلفة ، ولكن في نماذج مختلفة ، على سبيل المثال ، في شكل تطبيق HTML5 وملف قابل للتنفيذ الأصلي.

لغة واحدة "لحكم الجميع". أعتذر عن الإشارة إلى Tolkien ، ولكن كما أعلنت Node.js عصر استخدام لغة واحدة للعميل وأجزاء الخادم من مواقع الويب ، يمكن استخدام Haxe لكلا مكوني تطبيقات خادم العميل (بينما يمكن للعميل والخادم تشغيل منصات مختلفة).

على سبيل المثال ، يستخدم تطبيق الويب FontStruct Haxe لتقديم رسومات على جانب العميل (في قماش HTML5) وعلى جانب الخادم (باستخدام Java2D). ولكن ، كما ذكرنا سابقًا ، ليس من الضروري اتباع هذا المسار - Haxe لا يقيد قدراتك ويسمح لك بالعمل بالتزامن مع التعليمات البرمجية الموجودة المكتوبة بأي لغة أخرى. هذا النهج يبسط إلى حد كبير الحفاظ على اتساق المنطق وحتى تقديم الرسومات في جميع السياقات والأنظمة الأساسية واللغات المستهدفة.

جافا سكريبت التخلي عن لصالح نوع السلامة. انتظر لحظة ، أليس هذا TypeScript بالفعل؟ نعم ، إذا كنت ترغب في قصر نفسك على إخراج JavaScript فقط. Haxe ، بدوره ، يمكن تجميعه أيضًا إلى كود بلغة Java و C ++ و C # و Python و Lua ولغات أخرى .

في الوقت نفسه ، فإن لغة Haxe نفسها بسيطة بما يكفي لتعلم لأولئك الذين لديهم دراية بالفعل بأساسيات JavaScript ؛ بناء الجملة لا يتطلب من المبرمج تغيير نموذج التفكير ، كما هو الحال ، على سبيل المثال ، في Rebol. كتب آندي لي (أحد مطوري Haxe الرئيسيين) مقارنة مفصلة بين TypeScript و Haxe ، والتي لا تزال ذات صلة اليوم ، على الرغم من أن اللغتين تواصلان تطويرهما .

عملية التجميع والاختبار سريعة جدا. تمت إضافته مؤخرًا إلى نظام Haxe البيئي ، فإن الجهاز الظاهري HashLink عبر النظام الأساسي (VM) يتيح لك تحقيق توازن بين وقت الترجمة (الترجمة تحت HashLink أسرع بكثير من التجميع تحت C ++) وسرعة تنفيذ التعليمات البرمجية كافية لمناطق مثل إنشاء ألعاب ثلاثية الأبعاد (سابقًا لهذه الأغراض ، يمكن أن استخدام الجهاز الظاهري Neko ، الذي ، ومع ذلك ، هو أدنى بكثير من HashLink في السرعة). ولكن حتى في مجال تطوير الويب ، يمكن أن يتفوق Haxe على TypeScript في كل من سرعة التحويل وسرعة تنفيذ الشفرة التي تم إنشاؤها .

الحدود مثيرة. الشفرة المصدرية لـ Haxe مفتوحة ، ويتم إضافة بنيات لغوية جديدة إليها باستمرار ، ولديها مجتمع نشط. وأكبر سر هو نظام وحدات الماكرو الذي يتم تنفيذه في وقت التحويل البرمجي ويسمح للبرمجة الوصفية بالطريقة التي تريدها الروح (سأقدم بعض الأمثلة عن المكتبات التي تستخدم وحدات الماكرو أدناه).

من يستخدم Haxe؟


بالطبع ، مطورو الألعاب: Madden NFL Mobile و Evoland II و Double Kick Heroes ... تم تطوير هذه الألعاب وغيرها من الألعاب الأخرى باستخدام Haxe. لكن Haxe يستخدم أيضًا خارج نطاق الألعاب:

  • في عام 2014 ، سمح استخدام Haxe لـ TiVo بتحسين أداء جهاز فك التشفير TiVo Premiere بأكثر من 30٪ .
  • يستخدم Massive Interactive ، الذي يكون عملاءه DAZN و Telecine ، بنجاح Haxe لتطوير البرامج لأنظمة التلفزيون الذكية. استنادًا إلى خبرته في مشاريع الويب الكبيرة ، أشار Philip Elsass (Massive Interactive UI Architect) ، في أحد تقاريره ، إلى أن Haxe عادة ما يكون أسهل في الاستخدام من TypeScript ، كما أنه يترجم بشكل أسرع بكثير إلى JavaScript.
  • تستخدم Synolia Haxe لأدواتها على الإنترنت Heidi ، والتي تستخدمها الماركات الفرنسية الكبرى كارفور و La Fnac ، بالإضافة إلى نيكلوديون. سمحت مجموعة أدوات Haxe لشركة Synolia بالانتقال من Flash إلى HTML5 ، كما وفرت فرصًا تجارية جديدة لأعمال المحمول. سمح لنا اختيار Haxe بإعادة استخدام الشفرة العامة عبر طبقات وخدمات Heidi المختلفة.
  • في عام 2017 ، أصبحت Docler Holding شريكا استراتيجيا لمؤسسة Haxe .

ما هو النظام البيئي Haxe؟


عندما يتعلق الأمر بالألعاب و Haxe ، فإن اختيار المكتبات والأطر المفتوحة المصدر واسع جدًا. يقوم مستخدمو Haxe ، سواء أكانوا فرق مستقلة أو استوديوهات ناجحة مع عملاء دوليين ، بمشاركة الكود:

  • تم استخدام Flambe لتطوير ألعاب HTML5 بواسطة علامات تجارية مثل ديزني ، وكوكا كولا ، وتويوتا.
  • Heaps هو إطار ألعاب ثلاثي الأبعاد / 2D يدعم ألعاب إيندي الناجحة مثل Northgard و Dead Cells .
  • مكتبة التطوير السريع awe6 ربما هي الجوهرة الخفية حتى بالنسبة لمجتمع Haxe.
  • Kha هو إطار متعدد الوسائط محمول للغاية ولديه القدرة على إنشاء مشاريع ليس فقط على أنظمة تشغيل سطح المكتب والجوال و HTML5 ، ولكن أيضًا على XBox One و Nintendo Switch و Playstation 4. تم إنشاء أكثر من 20 محركًا للعبة ، وأكثرها إثارة للاهتمام هو Armory - 3D -هندسة مع التكامل الكامل مع خلاط .
  • يعد HaxeFlixel ، المصمم على غرار محرك فلاش القديم Flixel ، خيارًا شائعًا لإنشاء ألعاب صغيرة ، على سبيل المثال ، لـ Defender's Quest .
  • Starling ، في الأصل إطار عمل ActionScript يستخدم لمنفذ Angry Birds لفيسبوك ، لديه الآن منفذ على Haxe .
  • OpenFL ، الذي ينفذ Flash API ، يتيح لك أيضًا إنشاء تطبيقات لوحدات التحكم (PlayStation 4 و PlayStation Vita و XBox One و Nintendo Switch) ونظام تشغيل سطح المكتب والجوال و HTML5. HaxeFlixel و Starling Port يعملان على قمة OpenFL. مثال على لعبة تم تطويرها مباشرة على OpenFL هي Papers ، Please .
  • يستمر دعم Native Media Engine (NME) ، والذي تم تقسيم OpenFL منه منذ عدة أعوام ، ويتم إصدار تحديثات له.
  • HaxePunk (ينحدر من محرك فلاش آخر - FlashPunk) - ربما يمكنك أن ترى ذكرًا له في أحد إصدارات Github Release Radar .
  • Nape عبارة عن محرك ثنائي الأبعاد للفيزياء مُحسّن للغاية ، وهو مثالي للألعاب والمحاكاة باستخدام الفيزياء المعقدة.

بطبيعة الحال ، صنع الألعاب هو أبرز تطبيق Haxe. لكن نظام Haxe البيئي يحتوي أيضًا على مكتبات وأدوات لبناء تطبيقات الأعمال والمؤسسات ، على سبيل المثال:

  • إن hexMachina هو إطار تطوير معياري للتطبيقات يدعم استخدام لغة المجال المحددة (DSL) وهندسة التحكم في عرض النماذج (MVC) ، بالإضافة إلى العديد من الوظائف الأخرى. تم إنشاؤها واستخدامها بواسطة Docler Holding.
  • HaxeUI هو محرك ترميز UI ، يعمل بنشاط على تطويره ويحظى بدعم الشركات. ومن أمثلة استخدامه منتجات مثل 3DVista و Kaizen for Pharma . HaxeUI مثير للاهتمام لأنه يتكون من وحدة kernel والوحدات الفردية التي تنفذ عرض واجهة المستخدم باستخدام وسائل مختلفة: مكونات HTML ، wxWidgets ، Windows Forms ، عناصر Android UI الأصلية ، إلخ.
  • توفر عائلة المكتبات thx امتدادات لغة عالمية لـ Haxe ؛ يمكن تسمية مكتبة Lodash نظيرها من عالم JavaScript.
  • عند الحديث عن مشاريع JavaScript و Haxe المترجمة في JavaScript ، يجب الإشارة إلى أداة Haxe Modular ، التي ساعدت Telecine و FlowPlay في توسيع نطاق مشاريعهما الضخمة وتوفير تنزيلات سريعة من جانب العميل.
  • يهدف نظام Haxe البيئي أيضًا إلى تعزيز التآزر مع التكنولوجيا الحديثة. كمثال على الحركة في هذا الاتجاه ، يمكننا استدعاء مكتبة GraphQL .
  • أخيرًا ، توفر مجموعة مكتبات Tinkerbell ، التي تستخدم نظام الماكرو ، أدوات لجميع أنواع المهام: أطر عمل لتوجيه الويب ، واختبار الوحدة ، ودمج SQL ، وكذلك المكتبات لكل شيء تقريبًا: من قالب CSS والتحليل إلى التزامن / انتظار المعالجة المتفاعلة الدول مع منحنى التعلم أكثر سلاسة.

المشاريع الأكثر إثارة للاهتمام التي أنشأها مستخدمو Haxe مدرجة هنا. قائمة كاملة من المكتبات مرتبة حسب الشعبية (هناك أيضا القدرة على فرز المكتبات حسب العلامات) متوفرة على الموقع الرسمي. ولكن تجدر الإشارة أيضًا إلى بعض المشاريع التي تدعمها مؤسسة Haxe نفسها:

  • بالنسبة إلى DevOps ، قد تبدو صورة Haxe الرسمية لـ Docker مثيرة للاهتمام.
  • توفر مكتبة h3compat توافقًا جزئيًا للخلف بين Haxe 4 و Haxe 3 وهي مصممة لمساعدة المستخدمين عند تحديث المشروعات للعمل مع الإصدار الجديد من اللغة.

يبدو كل شيء جيدًا ، لكن ما الذي يتطلبه الأمر للبدء في تطوير نظام Haxe؟

بداية سريعة مع Haxe


بغض النظر عما إذا كنت تعمل على نظام Windows أو MacOS أو Linux ، فإن أول ما عليك فعله هو تنزيل مثبت Haxe ، والذي يتضمن:

  1. برنامج التحويل البرمجي Haxe ، والذي يمكن بدء تشغيله باستخدام أمر haxe من المحطة الطرفية أو سطر الأوامر.
  2. مكتبة Haxe القياسية ، التي توفر وظائف منخفضة المستوى وبنية بيانات للأغراض العامة. على سبيل المثال ، فئات لمعالجة أرشيفات XML و ZIP ، والوصول إلى MySQL.
  3. مدير حزم Haxelib الذي يسمح لك بتثبيت مكتبات جديدة (من المستودع الرسمي ومن Git أو Mercurial). تم haxelib بواسطة الأمر haxelib (قد تكون مهتمًا أيضًا بـ lix ، مدير الحزم الأكثر تقدماً مقارنة بـ Haxelib).
  4. Neko هو جهاز افتراضي يمكن أن يكون مفيدًا في تصحيح الأخطاء للمشاريع بفضل التجميع السريع.

بالإضافة إلى ذلك ، هناك طرق أخرى لتثبيت Haxe على نظامك ، على سبيل المثال باستخدام npm أو Homebrew أو Chocolatey.

بعد التثبيت ، يمكن استخدام Haxe مباشرة من سطر الأوامر ، ولكن من الأفضل ، بالطبع ، القيام بذلك باستخدام IDE. لا يزال FlashDevelop / HaxeDevelop مدعومًا في الغالب فقط في نظام Windows. معظم الخيارات الأخرى المتاحة هي أنظمة مشتركة (Win / Mac / Linux):


في هذا البرنامج التعليمي القصير ، سوف نستخدم VSCode. أسهل طريقة هي تثبيت حزمة المكونات الإضافية بالكامل لدعم ext install haxe-extension-pack الفور من خلال الأمر ext install haxe-extension-pack في لوحة الوصول السريع VSCode (التي يطلق عليها Ctrl+P ) ، ولكن إذا كنت الحد الأدنى ، يمكنك تقييد نفسك على ext install vshaxe المكون الإضافي الأساسي (مكونات أخرى يمكنك دائمًا إعادة التثبيت لاحقًا).

إنشاء مشروع Haxe


تعد إدارة عملية تجميع تعليمات برمجية Haxe لأنظمة تشغيل مختلفة أسهل باستخدام ملف نظام الإنشاء. ومع ذلك ، بالنسبة للمبتدئين ، سنحتاج فقط إلى ملف واحد به كود .hx مع الامتداد .hx .

بالنسبة للرمز ، فلنأخذ مثال "إنشاء المصفوفات" من 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] } } 

يمكننا الآن تشغيل برنامج التحويل البرمجي 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] 

عظيم ، إنه يعمل!

ترشح المحور في JavaScript


افترض أنك تريد مشاركة الكود الذي تمت مناقشته في المثال مع العالم بأسره ، وإنشاء شفرة JavaScript منه ، واستخدام الكود الناتج في صفحة الويب الخاصة بك. في Haxe ، يتم ذلك بأمر واحد:

 $ haxe -main Test -js haxe-test.js 

إذا كان لديك Node.js مثبتًا ، فيمكنك التحقق من تشغيل شفرة JavaScript التي تم إنشاؤها من سطر الأوامر:

 $ node my-test.js [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ] [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ] 

أو يمكنك توصيل my-test.js النهائي my-test.js ويب ، ثم عند تنزيله ، سنرى نفس النتيجة ، ولكن بالفعل في وحدة تحكم المطور المضمنة في المستعرض.

تجميع وتجميع في ملف قابل للتنفيذ


لنفترض أنك تحتاج أيضًا إلى ثنائي قابل للتنفيذ للنظام الذي تعمل عليه. للقيام بذلك ، نحتاج إلى تبديل رمز Haxe في C ++ ، ثم تجميع ملفات .cpp الناتجة في ملف قابل للتنفيذ (بشرط أن يكون لديك برنامج التحويل البرمجي مثبتًا ، يكون من الأسهل تثبيت Microsoft Visual Studio لهذا على Windows). لتنفيذ هذه المهام ، نحتاج إلى مكتبة hxcpp ، التي نقوم بتثبيتها باستخدام الأمر:

 $ haxelib install hxcpp 

باستخدام هذه المكتبة ، يتم تجميع التعليمات البرمجية وترجمتها باستخدام أمر واحد فقط:

 $ 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 ، سيكون الأمر المطلوب تشغيله مختلفًا قليلاً عن bin\Test.exe ).

إنشاء ملف بناء Haxe (.hxml)


على الرغم من أن ملفات بناء مشروع .hxml لها الامتداد .hxml ، فهي ليست ملفات XML (على عكس ملفات .hxproj المستخدمة من قبل HaxeDevelop و FlashDevelop ، لكننا لم نتحدث عنها). هذا ما build-all.hxml ملف build-all.hxml لإجراء عملية التحويل:

-main Test # Haxe, Test (, )
--each # , ,
-js haxe-test.js # JS
--next # ,
-cpp bin # , ( ) - C++

انتبه إلى الاختلاف في البادئات: -main و -js و -cpp - كل من هذه المعلمات يتم تمريرها إلى haxe مباشرة ، --each و - --next (مع --next ) واثنين من المعلمات على مستوى التعريف ، يخبرون المترجم ما يجب القيام به مع المعلمات الأخرى.

الآن ، لإنشاء البرنامج في JavaScript وفي الملف القابل للتنفيذ ، يكفي تنفيذ أمر haxe build-all.hxml .

إذا كنت ترغب في ترجمة الشفرة في JavaScript وتشغيل النتيجة على الفور باستخدام Node ، فيمكنك تشغيل الأمر haxe run-js.hxml ، haxe run-js.hxml محتويات ملف run-js.hxml كما يلي:

 -main Test -js haxe-test.js -cmd node haxe-test.js 

وبالمثل ، سيبدو هذا الملف "إنشاء وتشغيل" للملف القابل للتنفيذ (بالنسبة لنظام التشغيل Windows ، ستحتاج إلى تغيير بسيط ، سبق أن ذكرناه):

 -main Test -cpp bin -cmd bin/Test 

ماذا عن VSCode؟ كل شيء بسيط هنا: التمديد الذي قمنا بتثبيته من أجل VSCode سينتقل تلقائيًا ملفات hxml وينشئ المهام المقابلة لبناء المشروع (دون استخدام tasks.json . tasks.json ).

هاكس 4


في عملية تكوين Haxe ، ربما لاحظت أن صفحة التنزيل تحتوي على روابط لكلا الإصدارين 3.x و 4.x.

أحدث إصدار (رابع) من برنامج التحويل البرمجي Haxe يجلب العديد من الميزات الجديدة. إحدى هذه الدلائل هي دليل على الإمكانات الواسعة لنظام الماكرو ، مما يسمح بتكميل اللغة بتصاميم جديدة: لم يكن Haxe يدعم وظائف lambda القصيرة من قبل ، لذلك ظهرت مكتبة slambda ، التي نفذت دعمها باستخدام نظام الماكرو. بدءًا من الإصدار الرابع ، يتم تضمين دعمهم في برنامج التحويل البرمجي ، وقد اختفت الحاجة إلى استخدام هذه المكتبة.

ما الجديد في Haxe 4؟

في الواقع ، لا توجد الكثير من التغييرات الرئيسية. بدلاً من ذلك ، يوفر Haxe 4 العديد من التحسينات الصغيرة. بعد كل شيء ، Haxe هي تقنية ناضجة إلى حد ما تم تطويرها من قبل فريق صغير وهادف ، وإيجاد مشروع مماثل ل Haxe أمر صعب للغاية.

العديد من الميزات الأكثر إثارة للاهتمام من Haxe ليست جديدة. على سبيل المثال ، ذكرت سابقًا أن استخدام أجهزة Neko و HashLink الافتراضية يتيح عملية تطوير سريعة. ولكن منذ عام 2016 ، ظهر خادم ترجمة في المترجم ، وبفضله تمت إعادة ترجمة المشروع (وليس للأجهزة الافتراضية) الآن بشكل أسرع بكثير (يتم استخدام التخزين المؤقت في ذاكرة الوصول العشوائي) ، بالإضافة إلى ذلك ، يمكن استخدام خادم الترجمة بواسطة IDE لإكمال التعليمات البرمجية تلقائيًا (على سبيل المثال ، يعمل البرنامج المساعد تحت VSCode).

ولكن ، على وجه الخصوص ، ستظهر التغييرات التالية في Haxe 4:


Haxe مواد التعلم


بالإضافة إلى الوثائق الخاصة بواجهة برمجة التطبيقات الخاصة بالمكتبة القياسية وبناء جملة اللغة على موقع Haxe الإلكتروني ، تتوفر أيضًا مواد مصممة للمبتدئين ، بالإضافة إلى ذلك ، لا يمكنني إلا أن أذكر الموقع المخصص للتطوير على Haxe للويب .

إذا كنت تفضل أن تتعلم من مواد الفيديو ، فبالنسبة لك هي مظاهر الفيديو المتاحة من Haxe Summit US 2018 ، التي عقدت في سياتل ، وكذلك التسجيلات من مؤتمرات أخرى.

لكن في بعض الأحيان قد يكون دليل لموضوع معين مفيدًا لك. على سبيل المثال ، حول إنشاء لعبة بأسلوب الزاحف المحصن في HaxeFlixel . لدى HaxeFlixel أيضًا سلسلة من المواد التي تشرح أساسيات العمل مع المحرك. إذا كنت مهتمًا بالثلاثي الأبعاد ، يمكنك هنا تقديم دليل حول كيفية البدء باستخدام Armory .

أو ربما تحتاج فقط إلى دليل لمعالجة XML السريعة - هذه واحدة من المقالات التي مضى عليها بالفعل عدة سنوات ، لكنها لا تزال ذات صلة. على الرغم من أن Haxe يتطور باستمرار ، فإن العديد من أساسيات التطوير فيه لا تزال على حالها ، لذلك لا تعني المواد التدريبية القديمة دائمًا أنها قديمة (عادة ما تصبح المواد الموجودة في مكتبات محددة ، وليست جوهر Haxe ، قديمة).

كما ترون ، يمكن استخدام Haxe في مناطق مختلفة (وربما تقودك Haxe إلى منطقة جديدة). أتمنى أن تكون قد استمتعت بهذه المقدمة إلى عالم Haxe ونتطلع إلى سماع كيف تستخدم Haxe!

Source: https://habr.com/ru/post/ar437740/


All Articles