स्थानीयकरण और अंतर्राष्ट्रीयकरण, क्या अंतर है?


208

मैं यूआई पर कई भाषाओं का समर्थन करने के लिए एक डेस्कटॉप एप्लिकेशन तैयार करने के बारे में एक सवाल पूछने जा रहा था।

विषय पर मौजूदा प्रश्नों के लिए मेरी खोज में मैं "इंटरनेशनल" शब्द सोच रहा था, इसलिए मैंने अंतर्राष्ट्रीयकरण टैग का चयन किया और कुछ मिलान वाले प्रश्नों के माध्यम से पढ़ा।

आखिरकार मुझे एहसास हुआ कि मुझे शायद स्थानीयकरण के बजाय टैग किए गए सवालों के नीचे देखना चाहिए। हालाँकि ऐसा प्रतीत होता है कि मैं इन दोनों शब्दों को मिलाने में अकेला नहीं हूँ।

इसलिए, वे स्थानीयकरण और अंतर्राष्ट्रीयकरण के बीच महत्वपूर्ण अंतर क्या हैं?

इसके अलावा, क्या उनके बीच एक स्पष्ट अंतर वास्तव में महत्वपूर्ण है?

जवाबों:


232
अंतर्राष्ट्रीयकरण (i18n)
आपके सॉफ़्टवेयर को बदलने की प्रक्रिया ताकि यह किसी एक भाषा / लोकेल / संस्कृति के लिए कठोर न हो।
स्थानीयकरण (l10n)
आपके सॉफ़्टवेयर में उपयुक्त संसाधनों को जोड़ने की प्रक्रिया ताकि किसी विशेष भाषा / लोकेल का समर्थन किया जाए। यह इस विकिपीडिया प्रविष्टि की तुलना में दायरे में बड़ा है , लेकिन यह एक अच्छी शुरुआत है।


उनके बीच अंतर करने का मूल्य यह है कि (सैद्धांतिक रूप से) एक बार जब आपका कार्यक्रम i18n प्रक्रिया से गुजरता है, तो आप कई l10n प्रक्रियाओं को पुनरावृत्त कर सकते हैं जैसे कि आपको उनकी आवश्यकता है; इसके अलावा, भाषा के साथ सटीक होना अच्छा है।


9
उनके बारे में अलग से सोचने के कुछ अन्य कारण: अंतर्राष्ट्रीयकरण क्यूए और स्थानीयकरण क्यूए के अलग-अलग परीक्षण मामले हैं, अंतर्राष्ट्रीयकरण एक बार की लागत (अधिक या कम) है, और इसलिए आप जितनी अधिक भाषाओं में स्थानीयकरण करते हैं, उतना ही उच्च आपका आरओआई। i18n आम तौर पर किसी भी एक स्थान पर l10n की तुलना में अधिक महंगा है।
माइक सिकलर

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

हालांकि यह थोड़ा पुराना है, यह W3C उच्च स्तरीय दृश्य है जो मूल रूप से इससे सहमत है।
mkobit

1
आम तौर पर अंतर्राष्ट्रीयकरण (i18n) एक बार सॉफ्टवेयर डेवलपर / इंजीनियर द्वारा किया जाता है, जहां स्थानीयकरण (l10n) के रूप में प्रत्येक बाजार के लिए संबंधित भाषा / संस्कृति विशेषज्ञ द्वारा किया जाता है।
चेतन

70

Apple के अनुसार :

अंतर्राष्ट्रीयकरण स्थानीयकरण को सुविधाजनक बनाने के लिए एक आवेदन के डिजाइन और निर्माण की प्रक्रिया है। स्थानीयकरण , बदले में, दो या अधिक सांस्कृतिक रूप से अलग-अलग बाजारों के लिए एक अंतर्राष्ट्रीय अनुप्रयोग का सांस्कृतिक और भाषाई अनुकूलन है।


32

अंतर्राष्ट्रीयकरण आपके आवेदन को स्थानीयकरण के लिए तैयार करता है । उदाहरण के लिए, आप यूनिकोड ( utf8mb4इसके बजाय latin1) में अपने डेटाबेस में संग्रहीत वर्णों को सांकेतिक शब्दों में बदलना कर सकते हैं , स्ट्रिंग को संसाधन फ़ाइलों में ले जा सकते हैं, दिनांक, समय और मुद्रा प्रारूपों के उपयोग को सक्षम कर सकते हैं, आदि।

जब आप बेचना चाहते हैं, उदाहरण के लिए, आपके ऐप का एक चीनी संस्करण, तो आप इसे zh-CN संसाधन फ़ाइलों का निर्माण करने के लिए एक अनुवादक को काम पर रखकर स्थानीयकरण करेंगे, और एक नई तारीख / समय / मुद्रा प्रारूप का उपयोग करेंगे।


13

L10n कभी-कभी यह दिखा सकता है कि आपका i18n कहाँ विफल हो गया है - उदाहरण के लिए, जहाँ आपके शब्दकोशों में एक शब्द के लिए एक ही प्रविष्टि है जो कि संज्ञा के रूप में प्रयोग किया जाता है और अंग्रेजी में एक क्रिया है जो उसी शब्द का दूसरी भाषा में अनुवाद नहीं करता है, या UI तत्व / डिजाइन एक संस्कृति (एल / आर अभिविन्यास) के लिए अनुपयुक्त हैं।

तो l10n "आम तौर पर" i18n के बाद होता है, लेकिन आपके i18n में वापस फीड कर सकता है और इसके लिए नए सिरे से तैयार करने की आवश्यकता होती है, इसलिए जब तक आप कुछ स्थानीयकरण नहीं करते हैं, तब तक आप अपने ऐप को पूरी तरह से अंतर्राष्ट्रीय नहीं मान सकते।


11

विकिपीडिया के अनुसार

अंतर्राष्ट्रीयकरण एक सॉफ्टवेयर एप्लिकेशन को डिजाइन करने की प्रक्रिया है ताकि इसे विभिन्न भाषाओं और क्षेत्रों में संभावित रूप से अनुकूलित किया जा सके without engineering changes

स्थानीयकरणadapting internationalized software स्थानीय-विशिष्ट घटकों को जोड़ने और पाठ का अनुवाद करके एक विशिष्ट क्षेत्र या भाषा के लिए प्रक्रिया है ।

इसके अलावा , स्थानीयकरण (जो संभावित रूप से कई बार अलग-अलग स्थानों के लिए किया जाता है) का उपयोग करता है infrastructure or flexibility provided by internationalization(जो आदर्श रूप से केवल एक बार किया जाता है, या चल रहे विकास का एक अभिन्न अंग है)।


8

वैश्वीकरण (G11n): एक वैश्विक बाजार में बहुभाषी सॉफ्टवेयर उत्पादों के विकास और विपणन की प्रक्रिया है।

बहुभाषी सॉफ्टवेयर का विकास वर्तमान में दो चरणों में होता है: पहला चरण अंतर्राष्ट्रीयकरण है, और दूसरा चरण स्थानीयकरण है।

अंतर्राष्ट्रीयकरण (I18n): किसी उत्पाद को सामान्य बनाने की प्रक्रिया है ताकि वह पुन: डिज़ाइन (भाषा और संस्कृति तटस्थ) की आवश्यकता के बिना कई भाषाओं और सांस्कृतिक सम्मेलनों को संभाल सके।

स्थानीयकरण (L10n): किसी उत्पाद को लेने और उसे भाषाई रूप से और सांस्कृतिक रूप से लक्ष्य लोकेल (देश / क्षेत्र और भाषा) के लिए उपयुक्त बनाने की प्रक्रिया है जहां इसका उपयोग और बिक्री की जाएगी (यानी भाषा और संस्कृति विशिष्ट)।


8

उत्तर की बहुत, सही जानकारी के बहुत सारे, लेकिन मेरा जवाब थोड़ा और देखने की बात है।

अंतर्राष्ट्रीयकरण - यह तब होता है जब डेवलपर के पास कोड में सीधे संदेश / त्रुटि संदेश / बटन के नाम / लेबल कैप्शन / आदि कुछ विशेष भाषा में नहीं होते हैं, लेकिन एक कुंजी होती है जिसे अनुवाद फ़ंक्शन में पारित किया जाता है, और वर्तमान उपयोगकर्ता के स्थान के अनुसार अनुवाद फ़ंक्शन अंतिम पाठ लौटाएगा अंग्रेजी में / फ्रांस / आदि ...
अनुवाद समारोह भंडारण के साथ काम करता है (डीबी / फाइलें / साहचर्य सरणी / आदि)।
भंडारण में कुंजियाँ होती हैं जो कूदे और मानों में उपयोग की जाती हैं, जो कि कुछ विशेष भाषा में ग्रंथ है जो अनुप्रयोग का समर्थन करता है।

स्थानीयकरण - इस प्रक्रिया में डेवलपर को शामिल किए बिना भंडारण में चाबियों के लिए उपयुक्त नई भाषा (उदाहरण के लिए स्पैन) में नए मूल्यों को जोड़ने की प्रक्रिया है।

उदाहरण के लिए, हमारे पास भंडारण है:

key   | english    | italian           |
------+------------+-------------------+
title | Welcome    | Benvenuto         |
agree | I agree    | Sono d'accordo    |
thank | Thank you  | Grazie            |

अंतर्राष्ट्रीयकरण यह कोड या स्थानीयकरण confirm(t(agree));की तरह कुछ का उपयोग कर रहा है - यह हमारे भंडारण में नया स्थान जोड़ता है, जैसे:confirm("I agree");confirm("Sono d'accordo");

key   | english    | italian           | spanish          |
------+------------+-------------------+------------------+
title | Welcome    | Benvenuto         | Bienvenido       |
agree | I agree    | Sono d'accordo    | Estoy de acuerdo |
thank | Thank you  | Grazie            | Gracias          |

और यहां डेवलपर को अपडेट कोड की आवश्यकता नहीं है, अनुवाद फ़ंक्शन सही ग्रंथों को सही ढंग से ले जाएगा।


3
समझने में बहुत आसान है।
विन्ह गुयेन

1
महान उदाहरण!
जिनजिनोव

6

यदि आप नीचे दिए गए परिभाषाओं के अनुसार चलते हैं तो यह बहुत आसान है,

i18n (अंतर्राष्ट्रीयकरण) है

किसी एप्लिकेशन को डिजाइन करने की प्रक्रिया ताकि एप्लिकेशन के प्रोग्राम परिवर्तन का सहारा लिए बिना किसी अन्य भाषा में परिवर्तन करने की कार्यक्षमता हो

l10n (स्थानीयकरण) है

वास्तविक भाषा-विशिष्ट ग्रंथों और प्रारूपण बनाने की प्रक्रिया ।


3

यहाँ कुछ बहुत अच्छे जवाब हैं, इसलिए मैं उन्हें रीसायकल नहीं करूँगा। हालाँकि कुछ बिंदु पर, आमतौर पर अंतर्राष्ट्रीयकरण परीक्षण और स्थानीयकरण के बीच भाषाई परीक्षण, अंतर्राष्ट्रीयकरण और स्थानीयकरण ओवरलैप होते हैं। एक व्यक्ति ने अंतर्राष्ट्रीयकरण के पीछे l10n फीडिंग का उल्लेख किया है, लेकिन यदि आप गुणवत्ता i18n परीक्षण कर रहे हैं, और छद्म स्थानीयकृत सामग्री बना रहे हैं, तो स्थानीयकरण के दौरान विकास के मुद्दों पर पुनरावृत्ति अपवाद होनी चाहिए, नियम नहीं। इंटरफ़ेस का आकार बदलना और विशेष रूप से अरबी और हिब्रू जैसी द्वि-दिशात्मक भाषाओं का समर्थन करने के लिए पृष्ठों को अपनाना भी स्थानीयकरण के मुद्दों और अंतर्राष्ट्रीय इंजीनियरिंग इंजीनियरिंग दोनों को मिलाता है।

यह कहने के लिए पर्याप्त है, अंतर्राष्ट्रीयकरण में आवश्यकताओं के आधार पर किसी भी स्थान का समर्थन करने के लिए स्रोत में बदलाव करना शामिल है। यदि अंतर्राष्ट्रीयकरण अच्छी तरह से किया जाता है ...

... स्थानीयकरण में सामग्री के अनुकूलन और प्रस्तुति के कुछ स्तरों (उदाहरण के लिए एक बोल्ड टैग) शामिल हैं ताकि यह विशिष्ट लक्षित बाजारों (स्थानों) की सबसे अच्छी आवश्यकताओं की पूर्ति करे।

यहाँ संदर्भ के लिए बहुत सारे लेख और श्वेत पत्र: http://www.lingoport.com/software-internationalization-articles


3

अंतर्राष्ट्रीयकरण - i18n - किसी विशेष भाषा / संस्कृति से एक आवेदन का सार।

स्थानीयकरण - l10n- उपरोक्त i18n ढांचे के लिए एक विशेष भाषा / संस्कृति / लोकेल के लिए ठोस समर्थन में प्लगिंग।

मूल रूप से i18n करके सबसे पहले आप L10n को PITA से बहुत कम बनाते हैं।

इसके विपरीत यदि आप पहले एक ठोस स्थान में एक एप्लिकेशन बनाते हैं और फिर बाद में इसे अंतर्राष्ट्रीयकरण करने का प्रयास करते हैं, तो यह एक बड़े पैमाने पर PITA होगा। यह एक ठोस अंग्रेजी स्ट्रिंग की अदला-बदली का एक साधारण मामला नहीं है जो संसाधन के लिए "हैलो वर्ल्ड" कहता है। Global.HelloWorld।

विभिन्न भाषाओं में अलग-अलग स्थान की आवश्यकताएं, लेआउट, जोर, रंग आदि होंगे।

आपको उपरोक्त अंतरों के लिए स्थानों के बीच आसानी से समर्थन करने के लिए जमीन से i18n ढांचे की आवश्यकता है, अगर आपको लगता है कि आपको एक से अधिक लोकेल का समर्थन करने की आवश्यकता हो सकती है।

बाद में आवेदन में इसे वापस लेना वास्तव में कठिन है। आपको वास्तुशिल्प विचारों की एक पूरी मेजबानी पर फिर से विचार करना होगा और आपको (या किसी और को) पहली बार गोल करने के लिए विवश करना होगा।


2

मुझे लगता है कि स्थानीयकरण अंतर्राष्ट्रीयकरण के बिना जा सकता है लेकिन .. स्थानीयकरण के साथ अंतर्राष्ट्रीयकरण नहीं होना चाहिए ...


2

एनालॉग पोव: अपने पुस्तकालय पर एक शेल्फ की कल्पना करें जो केवल एक आकार की किताब 4x4 इंच ले सकता है। अंतर्राष्ट्रीयकरण सभी प्रकार के विभिन्न डिब्बों के साथ शेल्फ का निर्माण करेगा जो इसे किसी भी पुस्तक के आकार या आकार को संभालने की अनुमति दे सकता है। और स्थानीयकरण सभी पुस्तकों को सही वर्गों पर सेट कर रहा होगा। अपने डेटाबेस, व्यावसायिक तर्क और यूआई को शेल्फ के रूप में और विभिन्न भाषाओं, मुद्राओं और पुस्तकों के रूप में पाठ अभिविन्यास के बारे में सोचें।


2

पहले लोकेल को समझें

लोकेल - एक पैरामीटर जो उपयोगकर्ता की भाषा, क्षेत्र और किसी भी विशेष प्रकार की वरीयताओं को परिभाषित करता है, जिसे उपयोगकर्ता अपने उपयोगकर्ता इंटरफ़ेस में देखना चाहता है। आमतौर पर एक स्थानीय पहचानकर्ता में कम से कम एक भाषा पहचानकर्ता और एक क्षेत्र पहचानकर्ता होता है।

i18n - कई स्थानों का समर्थन करने के लिए सॉफ्टवेयर डिजाइन करना और विकसित करना।

l10n - यह तभी संभव है जब आपका सॉफ्टवेयर i18n को सपोर्ट करे। लेकिन l10n यह सुनिश्चित करता है कि भाषा, तिथि-प्रारूप, मुद्रा प्रारूप आदि एक विशिष्ट स्थान के संदर्भ में दिखाए जाते हैं।

उदाहरण के लिए,

# 1। 3 जून, 1977 को स्पेनिश में 3 डी जूनियो डे 1977 के रूप में अनुवाद किया जाएगा।

# 2। कुछ देशों में मुद्रा 'द्वारा अलग की जाती है।' बनाम ','

# 3। स्थानीय देश के आधार पर संबंधित मुद्रा प्रतीक दिखाएं

#, # 2 और # 3 स्थानीयकरण के लिए उपयोग-मामले हैं।

यदि सॉफ़्टवेयर को उपयोगकर्ता-लोकेल के आधार पर # 1 या # 2 या # 3 का समर्थन करने के लिए डिज़ाइन किया गया है , तो उत्पाद l10n सक्षम है।

यदि यह कई स्थानों का समर्थन करता है तो इसका i18n सक्षम है।


1

सीधे शब्दों में,

अंतर्राष्ट्रीयकरण (I18N) आपके सॉफ़्टवेयर को विभिन्न भाषाओं, क्षेत्रों और संस्कृतियों के अनुकूल बनाने में सक्षम है।

स्थानीयकरण (L10N) आपके सॉफ़्टवेयर को कई भाषाओं में अनुवाद करने की प्रक्रिया है। लेकिन इससे पहले कि आप अपने सॉफ़्टवेयर का स्थानीयकरण कर सकें, आप इसे अंतर्राष्ट्रीय कर दें।


-1

I18n और l10n की कई परिभाषाएँ हैं। एक मैं उपयोग कर रहे हैं:

अंतर्राष्ट्रीयकरण (i18n) : आपके आवेदन (अनुवाद) की भाषा विशिष्ट अनुकूलन

स्थानीयकरण (l10n) : आपके आवेदन (धन, संख्या प्रारूप, दिनांक प्रारूप ...) का स्थानीय विशिष्ट अनुकूलन।

उदाहरण के लिए, हमारे पास फ्रांस और स्विट्जरलैंड में वितरित एक आवेदन के लिए एक ही भाषा हो सकती है (हम दोनों फ्रेंच बोलते हैं, कम से कम स्विट्जरलैंड के कुछ हिस्सों में), लेकिन हमें अभी भी EUR को CHF में बदलने के लिए कुछ अनुकूलन की आवश्यकता होगी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.