मुख्य सामग्री पर जाएं

संदर्भ

डेवलपर शब्दावली

आधुनिक मोबाइल और डिवाइस-पर विकास के पीछे की अवधारणाओं, प्रोटोकॉल और उपकरणों की सरल-भाषा परिभाषाएँ। हर प्रविष्टि आत्मनिर्भर है — किसी एक को समझने के लिए पढ़ें, या उस Pocket Code उपकरण के लिंक का अनुसरण करें जो उसे काम में लाता है।

एडिटर और भाषा

LSPLanguage Server Protocol (LSP) एक खुला मानक है जो कोड एडिटर को JSON-RPC के ज़रिए एक अलग language server से बात करने देता है। सर्वर भाषा-समझ वाली सुविधाएँ देता है — ऑटोकम्प्लीशन, go-to-definition, hover दस्तावेज़, diagnostics और refactoring — ताकि कोई भी एडिटर एक साझा इंटरफ़ेस से किसी भी प्रोग्रामिंग भाषा का समर्थन कर सके।Multi-cursorMulti-cursor संपादन आपको दस्तावेज़ में एक साथ कई सम्मिलन बिंदु रखने और हर एक पर एक साथ टाइप, चयन या हटाने देता है। एडिटर क्लिक, कीबोर्ड शॉर्टकट, या किसी शब्द के सभी मिलानों को चुनकर cursor जोड़ते हैं। यह दोहराव वाले संपादन — variables का नाम बदलना या कई पंक्तियों को पुनः स्वरूपित करना — बहुत तेज़ बनाता है।Syntax highlightingSyntax highlighting स्रोत कोड को हर token की भूमिका के अनुसार अलग-अलग रंगों और फ़ॉन्ट में दिखाता है — keywords, strings, numbers, comments और identifiers। भाषा की grammar से संचालित, यह कोड का अर्थ नहीं बदलता पर संरचना को स्कैन करना आसान बनाता है, जिससे पाठक तेज़ी से त्रुटियाँ पहचानते और कोड समझते हैं।Code completionCode completion एडिटर की एक सुविधा है जो आपके टाइप करते समय शेष सुझाती है — variable नाम, functions, methods, keywords या पूरे snippets। पारंपरिक completion भाषा के प्रतीकों और scope पर आधारित होता है, जबकि AI-सहायता प्राप्त completion संदर्भ से बहु-पंक्ति कोड की भविष्यवाणी करता है। यह coding तेज़ करता है और टाइपो व खोज घटाता है।On-device executionOn-device execution का अर्थ है कि कोड दूरस्थ सर्वर के बजाय सीधे स्थानीय मशीन — फ़ोन या टैबलेट — पर संकलित और चलता है। प्रोग्राम लॉजिक, interpreters और runtimes डिवाइस की अपनी CPU और स्टोरेज पर निष्पादित होते हैं। यह नेटवर्क के बिना काम करता है, गोपनीयता के लिए डेटा स्थानीय रखता है, और cloud अवसंरचना पर किसी निर्भरता को हटाता है।

टर्मिनल और नेटवर्किंग

PTYPseudo-terminal (PTY) दो वर्चुअल कैरेक्टर डिवाइस की जोड़ी है जो सॉफ़्टवेयर में भौतिक टर्मिनल का अनुकरण करती है। एक सिरा shell जैसे प्रोग्राम से और दूसरा terminal emulator से चलता है। PTY कीस्ट्रोक, आउटपुट और कंट्रोल सिग्नल ले जाता है, जिससे किसी वास्तविक हार्डवेयर के बिना इंटरैक्टिव कमांड-लाइन सत्र संभव होते हैं।Terminal emulatorTerminal emulator एक प्रोग्राम है जो ग्राफ़िकल विंडो के भीतर हार्डवेयर टेक्स्ट टर्मिनल के व्यवहार को पुनः उत्पन्न करता है। यह कैरेक्टर आउटपुट रेंडर करता है, रंगों और cursor गति के लिए escape sequences की व्याख्या करता है, और keystrokes को shell या command-line प्रोग्राम को अग्रेषित करता है। आधुनिक सिस्टम इसी तरह डेस्कटॉप या फ़ोन पर command-line पहुँच देते हैं।SSHSSH (Secure Shell) एक क्रिप्टोग्राफ़िक नेटवर्क प्रोटोकॉल है जो अविश्वसनीय नेटवर्क पर दूरस्थ कंप्यूटर को सुरक्षित रूप से संचालित करता है। यह पूरे सत्र को एन्क्रिप्ट करता है, पासवर्ड या key pairs से प्रमाणित करता है, और दूरस्थ shell खोलने, commands चलाने और अन्य ट्रैफ़िक tunnel करने का मानक तरीक़ा है। डिफ़ॉल्ट रूप से TCP पोर्ट 22 पर सुनता है।SFTPSFTP (SSH File Transfer Protocol) एक सुरक्षित प्रोटोकॉल है जो SSH कनेक्शन पर फ़ाइलें स्थानांतरित, ब्राउज़ और प्रबंधित करता है। एन्क्रिप्टेड SSH चैनल के भीतर चलने से यह क्रेडेंशियल और ट्रांज़िट में डेटा दोनों की रक्षा करता है। पुराने FTP के विपरीत, इसे अलग पोर्ट की ज़रूरत नहीं और यह transfers फिर से शुरू करने, अनुमतियों और दूरस्थ directory संचालन का समर्थन करता है।ADBADB (Android Debug Bridge) एक command-line उपकरण है जो विकास और डिबगिंग के लिए कंप्यूटर को Android डिवाइस या emulator से जोड़ता है। USB या Wi-Fi पर यह ऐप इंस्टॉल और अनइंस्टॉल कर सकता, फ़ाइलें कॉपी कर सकता, logs पढ़ सकता, डिवाइस shell खोल सकता और परीक्षण चला सकता है, जो इसे Android विकास workflow का केंद्र बनाता है।

डेटाबेस

Embedded databaseEmbedded database होस्ट एप्लिकेशन की अपनी प्रोसेस के भीतर चलता है, न कि अलग सर्वर के रूप में। इसे नेटवर्क कनेक्शन, daemon या मैनुअल प्रशासन की ज़रूरत नहीं — डेटाबेस इंजन एक लाइब्रेरी है जिससे ऐप लिंक करती है। यह इसे तेज़, आत्मनिर्भर और डिवाइस-पर या offline सॉफ़्टवेयर के लिए आदर्श बनाता है।PostgreSQLPostgreSQL एक परिपक्व, ओपन-सोर्स ऑब्जेक्ट-रिलेशनल डेटाबेस है, जो सख़्त SQL मानक अनुपालन और विश्वसनीयता के लिए जाना जाता है। यह JSONB, arrays और geospatial डेटा जैसे उन्नत प्रकार, साथ ही transactions, foreign keys, window functions और extensions का समर्थन करता है। छोटे ऐप से बड़े सिस्टम तक व्यापक रूप से उपयोग, पूरी तरह ACID-अनुरूप।SQLiteSQLite एक आत्मनिर्भर, serverless SQL डेटाबेस इंजन है जो पूरे डेटाबेस को एक ही फ़ाइल में संग्रहीत करता है। चूँकि यह शून्य कॉन्फ़िगरेशन के साथ होस्ट प्रोसेस में embedded चलता है, यह दुनिया का सबसे व्यापक रूप से तैनात डेटाबेस है — फ़ोन, ब्राउज़र और अनगिनत ऐप में मौजूद। यह पूरी तरह transactional और ACID-अनुरूप है।

API और प्रोटोकॉल

REST APIREST API एक वेब इंटरफ़ेस है जो URLs और मानक HTTP मेथड — GET, POST, PUT, PATCH और DELETE — के ज़रिए संसाधनों को उजागर करता है। यह stateless है, यानी हर अनुरोध वह सारा संदर्भ ले जाता है जो सर्वर को चाहिए, और आमतौर पर JSON का आदान-प्रदान करता है। इसकी सरलता और सादे HTTP का उपयोग इसे सबसे आम वेब API शैली बनाता है।GraphQLGraphQL API के लिए एक क्वेरी भाषा और runtime है जो क्लाइंट को एक ही कॉल में ठीक वही फ़ील्ड माँगने देता है जिनकी ज़रूरत है। एक typed schema उपलब्ध डेटा को परिभाषित करता है और सर्वर हर क्वेरी को उसके विरुद्ध हल करता है। इससे अधिक या कम डेटा लाने से बचा जाता है और एक ही राउंड-ट्रिप में कई संसाधन मिलते हैं।WebSocketWebSocket एक प्रोटोकॉल है जो एकल TCP लिंक पर क्लाइंट और सर्वर के बीच स्थायी, full-duplex कनेक्शन प्रदान करता है। एक HTTP handshake द्वारा कनेक्शन अपग्रेड होने के बाद, दोनों पक्ष बहुत कम overhead के साथ किसी भी समय संदेश भेज सकते हैं। यह chat, live dashboards, notifications और multiplayer games जैसी रियल-टाइम सुविधाओं को शक्ति देता है।

AI और एजेंट

BYOKBring Your Own Key (BYOK) एक मॉडल है जिसमें आप किसी एप्लिकेशन को अपनी क्रेडेंशियल — API key या OAuth login — देते हैं, जो फिर आपकी ओर से सीधे तीसरे-पक्ष की सेवा को कॉल करती है। ऐप कभी क्षमता पुनः नहीं बेचती या proxy नहीं करती; प्रोवाइडर अपनी नीति के तहत आपके अकाउंट से उपयोग का बिल लेता है।Agentic CLIAgentic CLI एक command-line उपकरण है जो बड़े भाषा मॉडल से संचालित होता है और केवल प्रश्नों के उत्तर देने के बजाय बहु-चरणीय कार्यों की योजना बनाकर उन्हें पूरा कर सकता है। एक लक्ष्य दिए जाने पर, यह लूप में फ़ाइलें पढ़ता, commands चलाता, कोड संपादित करता और परिणामों की जाँच करता है, संवेदनशील क्रियाओं पर अनुमति माँगता है। यह सीधे project directory के भीतर काम करता है।Multi-agent orchestrationMulti-agent orchestration कई AI एजेंट्स का समन्वय करती है ताकि वे एक लक्ष्य पर सहयोग करें, प्रत्येक एक विशेष भूमिका संभाले — जैसे योजना बनाना, coding, testing या समीक्षा। एक orchestrator उप-कार्य सौंपता है, एजेंट्स के बीच परिणाम पास करता है और उनके आउटपुट को मिलाता है। इस तरह काम बाँटने से उन बड़ी, जटिल समस्याओं को हल किया जाता है जिन्हें अकेला एजेंट नहीं कर सकता।

स्वचालन

प्लेटफ़ॉर्म और टूलिंग

IDEIDE (Integrated Development Environment) एक ही एप्लिकेशन है जो सॉफ़्टवेयर लिखने के लिए आवश्यक उपकरण एकसाथ लाती है: कोड एडिटर, build या run सिस्टम, debugger और अक्सर version control, terminal तथा testing उपकरण। इन्हें एक workflow में एकीकृत करके, यह context switching घटाती है और विकास को तेज़ करती है।GitGit एक distributed version control सिस्टम है जो समय के साथ फ़ाइलों में परिवर्तन दर्ज करता है, जिससे आप इतिहास की समीक्षा कर सकते, ग़लतियाँ पलट सकते और branches के ज़रिए समानांतर काम कर सकते हैं। हर clone पूरी project history रखता है, इसलिए अधिकांश संचालन स्थानीय और तेज़ होते हैं। Merging और pull requests टीमों को काम संयोजित करने और कोड पर सहयोग करने देते हैं।Cloud syncCloud sync रिमोट सर्वर के ज़रिए परिवर्तनों की प्रतिलिपि बनाकर फ़ाइलों, projects या settings को कई डिवाइसों में सुसंगत रखता है। जब आप एक डिवाइस पर कुछ संपादित करते हैं, परिवर्तन अपलोड होकर दूसरों तक फैलता है, ताकि हर डिवाइस नवीनतम संस्करण देखे। यह डिवाइस-बाहर backup के रूप में भी काम करता है और conflict resolution का समर्थन करता है।Offline-firstOffline-first एक डिज़ाइन दृष्टिकोण है जिसमें एप्लिकेशन नेटवर्क कनेक्शन के बिना पूरी तरह काम करती है, कनेक्टिविटी को आवश्यकता के बजाय एक वृद्धि मानती है। डेटा स्थानीय रूप से संग्रहीत और संसाधित होता है, और सर्वर के साथ sync कनेक्शन लौटने पर अवसरानुसार होता है। इससे ऐप ख़राब या अनुपस्थित कवरेज में भी तेज़ और उपयोग योग्य रहती है।APKAPK (Android Package Kit) वह फ़ाइल प्रारूप है जिसका उपयोग Android ऐप वितरित और इंस्टॉल करने के लिए करता है। यह एक ZIP संग्रह है जो संकलित कोड, संसाधन, assets, native libraries और ऐप का वर्णन करने वाला manifest बंडल करता है। APK इंस्टॉल करने से एप्लिकेशन डिवाइस पर आ जाती है; Play Store इसी प्रारूप में ऐप देता है।Mobile developmentMobile development स्मार्टफ़ोन और टैबलेट के लिए सॉफ़्टवेयर बनाने का अभ्यास है। इसमें प्लेटफ़ॉर्म उपकरणों जैसे Android के लिए Kotlin या iOS के लिए Swift से लिखी native apps, और एक ही codebase से कई सिस्टम को लक्षित करने वाले cross-platform frameworks शामिल हैं। यह UI, प्रदर्शन, offline व्यवहार, device APIs और app-store वितरण को कवर करता है।