# CrossFly का समग्र परिदृश्य

> कोड से पहले का मानसिक मॉडल — Java+OpenGL, paint thread, सब कुछ Component है, कोई थोपा गया आर्किटेक्चर नहीं।

Source: https://crossfly.dev/hi/docs/learn/big-picture — CrossFly documentation. Full docs as one file: https://crossfly.dev/llms-full.txt

# 1. CrossFly का समग्र परिदृश्य

> **आप क्या सीखेंगे:** वह मानसिक मॉडल जो पाठ्यक्रम की अगली सभी पसंदों को समझ में लाता है।
> **पूर्वापेक्षाएँ:** [Hello World](/docs/get-started/quickstart) को चला लेना।

इस पूरे पाठ्यक्रम में हम **एक ही ऐप** बनाते हैं — persistence वाली एक कार्य-सूची (to-do list) — जो
हर पृष्ठ के साथ बढ़ती है, एक स्थिर स्क्रीन से लेकर एक परीक्षित, रिस्पॉन्सिव और पैकेजिंग के लिए तैयार ऐप तक।

## वे विचार जो सब कुछ थामे रखते हैं
- **Java + OpenGL.** CrossFly एक Java ऐप है जो GPU (OpenGL/WebGL) के माध्यम से चित्रण करता है। इसका रूप
  सभी प्लेटफ़ॉर्म पर **एक समान** होता है — कोई native widgets नहीं हैं।
- **एकल paint thread।** संपूर्ण UI और render एक ही thread में होते हैं। भारी काम एक पृष्ठभूमि
  thread पर जाता है और `Component.onUI(...)` के साथ वापस आता है।
- **माँग पर render।** स्क्रीन तभी दोबारा खिंचती है जब आप `repaint()` कॉल करते हैं — इससे बैटरी बचती है।
- **सब कुछ `Component` है।** कोई "widget बनाम container" पदानुक्रम नहीं है: कोई भी `Component`
  एक `Layout` पाते ही container बन जाता है।
- **कोई थोपा गया आर्किटेक्चर नहीं।** न reactive binding है, न dependency injection — आप ऑब्जेक्ट्स को
  **म्यूटेट** करते हैं और UI को हाथ से अपडेट करते हैं।

## टुकड़ों का नक्शा
| टुकड़ा | भूमिका |
|---|---|
| `Main` | bootstrap (libGDX का `ApplicationListener`) |
| `Window` | एक स्क्रीन (नेविगेशन स्टैक में एक पूर्ण-स्क्रीन `Component`) |
| `Component` | UI की इकाई — सब कुछ इसी से व्युत्पन्न होता है |
| `Layout` | एक container के बच्चों को मापता और स्थान देता है |
| `Styles`/`Skin`/`ColorScheme` | रूप (आकार + थीम के अनुसार रंग) |

## पुनरावलोकन
CrossFly **imperative और object-oriented** है: ऑब्जेक्ट्स को एक बार बनाएँ, references रखें, म्यूटेट करें,
`repaint()`। Threading स्पष्ट है; रूप आपकी GPU का चित्रण है, हर जगह एक समान।

## अगले कदम
→ [Windows और नेविगेशन](/docs/learn/windows-and-navigation)

## यह भी देखें
- अवधारणाएँ: [परतदार आर्किटेक्चर](/docs/concepts/architecture) · [सब कुछ एक Component है](/docs/concepts/everything-is-a-component)
