सेवा के बारे में
अनुवादितमैं एक Haxe डेवलपर हूं और एक कोडबेस लिखता हूं जो तुरंत कई प्लेटफार्मों पर संकलित होता है। वेब, डेस्कटॉप और मोबाइल उपकरणों के लिए अलग-अलग परियोजनाओं को बनाए रखने के बजाय, मैं गेम लॉजिक और एप्लिकेशन कोर को Haxe में रखता हूं और टूलचेन को इसे JavaScript, C++, HashLink और अन्य बैकएंड में ट्रांसपाइल करने देता हूं। नियम, राज्य मशीनें, अर्थव्यवस्था और नेटवर्क कोड एक ही स्थान पर रहते हैं, एक बार परीक्षण किए जाते हैं, और प्रत्येक प्लेटफार्म को समान व्यवहार मिलता है। मेरा प्रोफ़ाइल कोई भारी इंजन नहीं है जैसे Unity या Unreal, बल्कि क्रॉस-कंपाइलेशन की अनुशासन है: पोर्टेबल कोड, लक्ष्यों के बीच भिन्नताओं का सावधानीपूर्वक अमूर्तकरण और ब्राउज़र, मूल बाइनरी और फोन पर बिना तीन भिन्न टीमों के समान उत्पाद।
आमतौर पर मैं पूरे पाइपलाइन का प्रबंधन करता हूं। मैं साझा लॉजिक और प्लेटफार्म-विशिष्ट बाइंडिंग्स के बीच साफ़ विभाजन के साथ परियोजना संरचना स्थापित करता हूं, प्रत्येक लक्ष्य के लिए निर्माण कॉन्फ़िगर करता हूं और फ्रेमवर्क को जोड़ता हूं - Heaps, OpenFL, Kha या Lime - इस पर निर्भर करता है कि क्या सबसे महत्वपूर्ण है: शुद्ध ग्राफिक्स, Flash-शैली का रेंडरिंग या पोर्टेबल ऑडियो और इनपुट। मैं कोर को इस तरह लिखता हूं कि रेंडरिंग, स्टोरेज और इनपुट इंटरफेस के पीछे होते हैं: इससे ट्रांसपाइल किया गया आउटपुट पूर्वानुमानित होता है और डिबगिंग प्रबंधनीय होती है। यदि मूल एक्सटेंशन की आवश्यकता होती है, तो मैं उन्हें सावधानीपूर्वक जोड़ता हूं बजाय इसके कि गेम में प्लेटफार्म जांचों को बिखेर दूं। मैं अलग से टूलिंग बनाता हूं: स्वचालित निर्माण, संपत्ति पैकिंग, मैक्रोज़ के साथ कोड जनरेशन और छोटे उपयोगिताएँ जो Haxe मॉड्यूल को अन्य लक्ष्यों के लिए एक पुस्तकालय में बदल देती हैं।
यदि आपके पास एक गेम या एप्लिकेशन है जिसे कई प्लेटफार्मों पर बिना प्रत्येक के लिए फिर से लिखे भेजने की आवश्यकता है, या आपके पास पहले से ही Haxe कोड है जिसे पूरा करने, नए लक्ष्य पर पोर्ट करने या ऑप्टिमाइज़ करने की आवश्यकता है, तो मैं इसे वर्तमान स्थिति से एक कार्यशील मल्टी-प्लेटफ़ॉर्म बिल्ड में ले जाऊंगा। मैं सभी लक्ष्यों पर सहीता, कॉम्पैक्ट बाइनरी और ऐसे बिल्ड की परवाह करता हूं जिन्हें आप स्वयं चला सकते हैं।
— Haxe में क्रॉस-प्लेटफ़ॉर्म गेम और एप्लिकेशन विकास
— JS, C++ और HashLink में ट्रांसपिलेशन के साथ साझा गेम लॉजिक
— Heaps, OpenFL, Kha और Lime की सेटअप और एकीकरण
— मौजूदा परियोजनाओं को नए लक्ष्यों और प्लेटफार्मों पर पोर्ट करना
— मैक्रोज़, कोड जनरेशन और पुन: प्रयोज्य Haxe पुस्तकालय
— बिल्ड ऑटोमेशन और मल्टी-प्लेटफ़ॉर्म डिलीवरी टूलिंग
आमतौर पर मैं पूरे पाइपलाइन का प्रबंधन करता हूं। मैं साझा लॉजिक और प्लेटफार्म-विशिष्ट बाइंडिंग्स के बीच साफ़ विभाजन के साथ परियोजना संरचना स्थापित करता हूं, प्रत्येक लक्ष्य के लिए निर्माण कॉन्फ़िगर करता हूं और फ्रेमवर्क को जोड़ता हूं - Heaps, OpenFL, Kha या Lime - इस पर निर्भर करता है कि क्या सबसे महत्वपूर्ण है: शुद्ध ग्राफिक्स, Flash-शैली का रेंडरिंग या पोर्टेबल ऑडियो और इनपुट। मैं कोर को इस तरह लिखता हूं कि रेंडरिंग, स्टोरेज और इनपुट इंटरफेस के पीछे होते हैं: इससे ट्रांसपाइल किया गया आउटपुट पूर्वानुमानित होता है और डिबगिंग प्रबंधनीय होती है। यदि मूल एक्सटेंशन की आवश्यकता होती है, तो मैं उन्हें सावधानीपूर्वक जोड़ता हूं बजाय इसके कि गेम में प्लेटफार्म जांचों को बिखेर दूं। मैं अलग से टूलिंग बनाता हूं: स्वचालित निर्माण, संपत्ति पैकिंग, मैक्रोज़ के साथ कोड जनरेशन और छोटे उपयोगिताएँ जो Haxe मॉड्यूल को अन्य लक्ष्यों के लिए एक पुस्तकालय में बदल देती हैं।
यदि आपके पास एक गेम या एप्लिकेशन है जिसे कई प्लेटफार्मों पर बिना प्रत्येक के लिए फिर से लिखे भेजने की आवश्यकता है, या आपके पास पहले से ही Haxe कोड है जिसे पूरा करने, नए लक्ष्य पर पोर्ट करने या ऑप्टिमाइज़ करने की आवश्यकता है, तो मैं इसे वर्तमान स्थिति से एक कार्यशील मल्टी-प्लेटफ़ॉर्म बिल्ड में ले जाऊंगा। मैं सभी लक्ष्यों पर सहीता, कॉम्पैक्ट बाइनरी और ऐसे बिल्ड की परवाह करता हूं जिन्हें आप स्वयं चला सकते हैं।
— Haxe में क्रॉस-प्लेटफ़ॉर्म गेम और एप्लिकेशन विकास
— JS, C++ और HashLink में ट्रांसपिलेशन के साथ साझा गेम लॉजिक
— Heaps, OpenFL, Kha और Lime की सेटअप और एकीकरण
— मौजूदा परियोजनाओं को नए लक्ष्यों और प्लेटफार्मों पर पोर्ट करना
— मैक्रोज़, कोड जनरेशन और पुन: प्रयोज्य Haxe पुस्तकालय
— बिल्ड ऑटोमेशन और मल्टी-प्लेटफ़ॉर्म डिलीवरी टूलिंग