इंडी हैकर मोबाइल ऐप · पाठ

सुगम्यता और अंतर्राष्ट्रीयकरण

सुगम्यता सुविधाएँ लागू करके अपने ऐप को सभी के लिए उपयोगी बनाएँ और उसे कई भाषाओं तथा क्षेत्रों के लिए तैयार करें।

पाठ 2, कुल 4 में से11 चरण

सुगम्यता और अंतर्राष्ट्रीयकरण, CoddyKit पर इंडी हैकर मोबाइल ऐप का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह इंडी हैकर मोबाइल ऐप सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। इंडी हैकर मोबाइल ऐप पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

समावेशी डिज़ाइन का परिचय

अपने मोबाइल ऐप को सुलभ और अंतरराष्ट्रीय उपयोग के अनुकूल बनाना केवल अच्छी कार्यप्रणाली नहीं है; अधिक लोगों तक पहुँचने और सभी के लिए बेहतर उपयोगकर्ता अनुभव देने के लिए यह आवश्यक है।

इस पाठ में हम दोनों लक्ष्य प्राप्त करने के मुख्य सिद्धांतों और व्यावहारिक चरणों को समझेंगे।

सुलभता को समझना

सुलभता का अर्थ ऐसे ऐप डिज़ाइन और विकसित करना है जिनका उपयोग विभिन्न क्षमताओं और दिव्यांगताओं वाले लोग कर सकें।

  • दृष्टि संबंधी अक्षमता: उपयोगकर्ता स्क्रीन रीडर पर निर्भर हो सकते हैं या उन्हें अधिक कंट्रास्ट की आवश्यकता हो सकती है।
  • गतिशीलता संबंधी अक्षमता: उपयोगकर्ताओं को बड़े स्पर्श लक्ष्य या कीबोर्ड नेविगेशन की आवश्यकता हो सकती है।
  • श्रवण संबंधी अक्षमता: उपयोगकर्ताओं को ऑडियो या वीडियो के लिए कैप्शन की आवश्यकता हो सकती है।

अपने ऐप को सुलभ बनाकर आप सुनिश्चित करते हैं कि उसका उपयोग हर कोई कर सके।

स्क्रीन रीडर और लेबल

स्क्रीन रीडर सहायक तकनीकें हैं जो स्क्रीन पर मौजूद सामग्री को ज़ोर से पढ़ती हैं और दृष्टिबाधित उपयोगकर्ताओं को आपके ऐप में नेविगेट करने में मदद करती हैं।

स्क्रीन रीडर को प्रभावी ढंग से काम करने के लिए इंटरैक्टिव तत्वों में उचित सुलभता लेबल होने चाहिए। ये लेबल ऐसे तत्व के लिए वर्णनात्मक पाठ देते हैं जो देखने में स्पष्ट न हो।

इस वैचारिक उदाहरण को चलाकर देखें:

public class AccessibilityDemo {
  // A simplified Button component concept
  static class Button {
    String text;
    String accessibilityLabel;

    Button(String text, String accessibilityLabel) {
      this.text = text;
      this.accessibilityLabel = accessibilityLabel;
    }

    // Simulate what a screen reader might announce
    String getScreenReaderAnnouncement() {
      if (accessibilityLabel != null && !accessibilityLabel.isEmpty()) {
        return accessibilityLabel;
      }
      return text; // Fallback to visible text
    }
  }

  public static void main(String[] args) {
    Button submitButton = new Button("Submit", "Tap to submit the form");
    Button okButton = new Button("OK", null); // Missing a specific label

    System.out.println("Screen reader announces (Submit): " + submitButton.getScreenReaderAnnouncement());
    System.out.println("Screen reader announces (OK): " + okButton.getScreenReaderAnnouncement());
  }
}

दृश्य: कंट्रास्ट और स्केल

सुलभता के लिए अच्छा दृश्य डिज़ाइन भी महत्वपूर्ण है:

  • रंगों का कंट्रास्ट: पाठ और पृष्ठभूमि के रंगों के बीच पर्याप्त कंट्रास्ट सुनिश्चित करें। इससे कम दृष्टि या रंगांधता वाले उपयोगकर्ताओं को मदद मिलती है।
  • गतिशील प्रकार और फ़ॉन्ट स्केलिंग: उपयोगकर्ताओं को फ़ॉन्ट का आकार बदलने दें। पूरे सिस्टम में लागू फ़ॉन्ट आकार की सेटिंग का सम्मान करें, ताकि आपका ऐप उपयोगकर्ता की पसंद के अनुसार ढल सके।

रंगों के कंट्रास्ट अनुपात की जाँच करने के लिए उपकरण उपलब्ध हैं, जिससे यह सुनिश्चित किया जा सकता है कि आपके डिज़ाइन सुलभता मानकों को पूरा करते हैं।

स्पर्श लक्ष्य और इंटरैक्शन

गतिशीलता संबंधी अक्षमता वाले उपयोगकर्ताओं या केवल एक हाथ से उपकरण चलाने वालों के लिए इंटरैक्टिव तत्वों का आकार महत्वपूर्ण होता है।

  • न्यूनतम स्पर्श लक्ष्य आकार: iOS और Android दोनों पर कम-से-कम 48x48 डिवाइस-स्वतंत्र पिक्सेल (DIPs) का स्पर्श लक्ष्य आकार रखें।
  • स्पष्ट प्रतिक्रिया: किसी तत्व पर टैप किए जाने पर दृश्य प्रतिक्रिया दें (जैसे लहर प्रभाव या हाइलाइट)।

इससे केवल विशेष आवश्यकताओं वाले लोगों के लिए ही नहीं, बल्कि सभी के लिए उपयोगिता बेहतर होती है।

अंतर्राष्ट्रीयकरण को समझना

अंतर्राष्ट्रीयकरण ऐप को इस तरह डिज़ाइन और विकसित करने की प्रक्रिया है कि स्रोत कोड में इंजीनियरिंग बदलाव किए बिना उसे विभिन्न भाषाओं और क्षेत्रीय भिन्नताओं के अनुसार आसानी से ढाला जा सके।

इसका अर्थ है कि आपके ऐप का कई भाषाओं में अनुवाद किया जा सकता है (स्थानीयकरण) और वह अलग-अलग दिनांक प्रारूपों, मुद्राओं तथा पाठ दिशाओं को संभाल सकता है।

अपने पाठ स्ट्रिंग का स्थानीयकरण

पाठ के अंतर्राष्ट्रीयकरण का मूल आधार उपयोगकर्ता को दिखाई देने वाली सभी स्ट्रिंग को अलग-अलग संसाधन फ़ाइलों में निकालना है। पाठ को सीधे लिखने के बजाय आप ऐसी 'कुंजी' का उपयोग करते हैं जो उपयोगकर्ता की चुनी हुई भाषा के सही अनुवाद की ओर संकेत करती है।

इस तरीके से अपने ऐप के कोड तर्क को छुए बिना नई भाषाएँ जोड़ना या मौजूदा अनुवादों को अपडेट करना आसान हो जाता है।

देखें कि यह वैचारिक रूप से कैसे काम करता है:

import java.util.HashMap;
import java.util.Map;

public class LocalizationDemo {
  // Simulate language resource bundles
  private static final Map<String, Map<String, String>> strings = new HashMap<>();

  static {
    // English strings
    Map<String, String> enStrings = new HashMap<>();
    enStrings.put("greeting", "Hello!");
    enStrings.put("welcome_message", "Welcome to our app.");
    strings.put("en", enStrings);

    // Spanish strings
    Map<String, String> esStrings = new HashMap<>();
    esStrings.put("greeting", "¡Hola!");
    esStrings.put("welcome_message", "Bienvenido a nuestra aplicación.");
    strings.put("es", esStrings);
  }

  // Method to get a localized string
  public static String getString(String locale, String key) {
    Map<String, String> localeStrings = strings.get(locale);
    if (localeStrings != null) {
      return localeStrings.getOrDefault(key, "MISSING_STRING_FOR_" + key);
    }
    return "UNKNOWN_LOCALE";
  }

  public static void main(String[] args) {
    String currentLocale = "en"; // Imagine this comes from device settings
    System.out.println("English Greeting: " + getString(currentLocale, "greeting"));
    System.out.println("English Welcome: " + getString(currentLocale, "welcome_message"));

    currentLocale = "es"; // Change locale
    System.out.println("Spanish Greeting: " + getString(currentLocale, "greeting"));
    System.out.println("Spanish Welcome: " + getString(currentLocale, "welcome_message"));
  }
}

दिनांक, संख्याएँ और मुद्राएँ ढालना

पाठ के अलावा, अलग-अलग संस्कृतियाँ दिनांक, समय, संख्याओं और मुद्राओं को अलग-अलग तरीके से लिखती हैं:

  • दिनांक: MM/DD/YYYY (US) बनाम DD/MM/YYYY (EU)।
  • संख्याएँ: दशमलव विभाजक (. बनाम ,) और हजारों के विभाजक अलग-अलग हो सकते हैं।
  • मुद्राएँ: प्रतीक का स्थान ($100 बनाम 100€) और दशमलव की सटीकता अलग हो सकती है।

अधिकांश मोबाइल प्लेटफ़ॉर्म उपयोगकर्ता के उपकरण के लोकेल के आधार पर इन मानों को अपने-आप प्रारूपित करने के लिए एपीआई प्रदान करते हैं।

सभी भाषाओं के लिए लेआउट

अरबी और हिब्रू जैसी कुछ भाषाएँ दाएँ से बाएँ (RTL) लिखी और पढ़ी जाती हैं। आपके ऐप का यूआई इसके अनुसार ढलने योग्य होना चाहिए।

  • लचीले लेआउट: ऐसे लचीले लेआउट का उपयोग करें जो RTL भाषाओं के लिए अपने-आप प्रतिबिंबित हो सकें।
  • आइकन और चित्र: दिशा दर्शाने वाले आइकन और चित्र (जैसे आगे की ओर संकेत करता तीर) भी प्रतिबिंबित हों, यह सुनिश्चित करें।

शुरू से ही लचीलेपन के साथ डिज़ाइन करने से बाद में महँगे पुनःकार्य से बचा जा सकता है।

सुलभता और अंतर्राष्ट्रीयकरण की जाँच

सुलभता और अंतर्राष्ट्रीयकरण के लिए विकसित करते समय निम्नलिखित में से कौन-सी बातें महत्वपूर्ण हैं?

आपका ऐप, सभी के लिए

आपने सीखा कि अपने ऐप को सुलभ और अंतर्राष्ट्रीयकरण के लिए तैयार बनाने से आपकी पहुँच बढ़ती है और सभी के लिए उपयोगकर्ता अनुभव बेहतर होता है।

  • स्क्रीन रीडर के लिए सुलभता लेबल का उपयोग करें।
  • अच्छा रंग कंट्रास्ट और गतिशील पाठ आकार सुनिश्चित करें।
  • पर्याप्त बड़े स्पर्श लक्ष्य दें।
  • स्थानीयकरण के लिए सभी स्ट्रिंग को बाहरी संसाधनों में रखें।
  • लोकेल के आधार पर दिनांक, संख्याओं और मुद्राओं को प्रारूपित करें।
  • RTL भाषाओं के लिए लचीले लेआउट डिज़ाइन करें।

इन सिद्धांतों को शुरुआत से शामिल करके आप वास्तव में समावेशी मोबाइल उत्पाद बनाते हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ इंडी हैकर मोबाइल ऐप सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “सुगम्यता और अंतर्राष्ट्रीयकरण” पाठ निःशुल्क है?

हाँ—“सुगम्यता और अंतर्राष्ट्रीयकरण” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और इंडी हैकर मोबाइल ऐप पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। इंडी हैकर मोबाइल ऐप पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“सुगम्यता और अंतर्राष्ट्रीयकरण” में मैं क्या सीखूँगा?

सुगम्यता सुविधाएँ लागू करके अपने ऐप को सभी के लिए उपयोगी बनाएँ और उसे कई भाषाओं तथा क्षेत्रों के लिए तैयार करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ इंडी हैकर मोबाइल ऐप का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या इंडी हैकर मोबाइल ऐप शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर इंडी हैकर मोबाइल ऐप शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“सुगम्यता और अंतर्राष्ट्रीयकरण” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस इंडी हैकर मोबाइल ऐप पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर इंडी हैकर मोबाइल ऐप पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. उन्नत UI घटक और एनिमेशन
  2. सुगम्यता और अंतर्राष्ट्रीयकरण
  3. उपयोगकर्ता प्रतिक्रिया और A/B परीक्षण की मूल बातें
  4. प्रदर्शन और अनुभवित गति के लिए डिज़ाइन
← इंडी हैकर मोबाइल ऐप पर वापस जाएँ