यह पृष्ठ पुर्तगाली से मशीन-अनुवादित है और इसमें त्रुटियाँ हो सकती हैं। पुर्तगाली संस्करण प्रामाणिक है।
परतों में बँटा आर्किटेक्चर
CrossFly के किसी भी हिस्से को समझने के लिए, पूरे का नक्शा होना मदद करता है। मूल रूप में, CrossFly libGDX का एक
ApplicationListener है — एक अकेला बिंदु जिसे libGDX एप्लिकेशन को बनाने, आकार बदलने और
रेंडर करने के लिए बुलाता है। इसके चारों ओर, फ्रेमवर्क परतों में संगठित होता है।
हर परत क्या करती है
- app — आपका कोड:
Windowकी सबक्लासें (स्क्रीनें), कंपोनेंट, व्यावसायिक नियम। यहीं आप रहते हैं। - ui — UI लाइब्रेरी: सब कुछ
Componentसे व्युत्पन्न होता है (widgets, containers, स्टाइल, layouts)। देखें सब कुछ एक Component है। - core / kernel — एप्लिकेशन को दुनिया से जोड़ता है:
Main(यानीApplicationListener) bootstrap करता है, input पहुँचाता है, जीवनचक्र चालू करता है और डिवाइस की कॉन्फ़िगरेशन लोड करता है। देखें जीवनचक्र। - gl — उच्च-स्तरीय चित्रण (
Paint) को OpenGL draw calls में अनुवादित करता है, प्रत्येक प्रिमिटिव के लिए एक रेंडरर के साथ। देखें रेंडरिंग पाइपलाइन। - serviços — SQLite, device, map आदि: UI से स्वतंत्र मॉड्यूल, जिन्हें app माँग पर उपयोग करती है।
यह विभाजन क्यों मायने रखता है
- आप लगभग हमेशा
uiपरत में प्रोग्रामिंग करते हैं (Components को जोड़-मिलाकर)। नीचे की परतें कार्यान्वयन का विवरण हैं — आप शायद ही कभीglको छूते हैं या libGDX से सीधे बात करते हैं। - फ्रेमवर्क paint thread पर single-thread है (देखें paint thread):
Maincreate()/render()/resize()को हमेशा उसी thread पर बुलाता है, और सारी UI उसी पर होती है। - सेवाएँ UI पर निर्भर नहीं करतीं — बिना स्क्रीन बनाए SQLite या device का उपयोग किया जा सकता है, और UI इन मॉड्यूल के बारे में तब तक “नहीं जानती” जब तक आप उन्हें नहीं बुलाते।
नियंत्रण का प्रवाह, उच्च स्तर पर
- libGDX
Mainबनाता है और paint thread परcreate()को बुलाता है। Mainbootstrap करता है (प्लेटफ़ॉर्म, runtime, config) और रिफ्लेक्शन के ज़रिए मुख्य विंडो को इंस्टैंशिएट करता है, उसकेonShow()को बुलाते हुए।- हर frame पर, libGDX
render()को बुलाता है;EventsProcessorविंडो के स्टैक को पेंट करता है (सबसे ऊपर वाली सबसे ऊपर) — पर केवल तभी जब कोई render का अनुरोध हो (repaint()), लगातार नहीं। - Input और
resizeMainके callbacks के ज़रिए आते हैं, हमेशा paint thread पर।
यह मानसिक नक्शा है, पैकेजों की सूची नहीं। परत-दर-परत पैकेज और क्लास की सूची के लिए, तकनीकी संदर्भ देखें।
यह भी देखें
- आगे: सब कुछ एक Component है · जीवनचक्र
क्या यह पृष्ठ उपयोगी था?प्रतिक्रिया के लिए धन्यवाद!