मुझे अपनी व्यावसायिक कक्षाओं का नाम किस भाषा में रखना चाहिए?


29

मैं इस प्रश्न के साथ सर्वश्रेष्ठ अभ्यास का अनुरोध कर रहा हूं। यह केवल एक मुद्दा है अगर ग्राहक कंपनी कड़ाई से राष्ट्रीय है अंग्रेजी के अलावा एक देशी भाषा है, मुझे लगता है।

यदि ग्राहक के पास मुख्य रूप से बहुत डोमेन विशिष्ट (कहते हैं, जर्मन) अभिव्यक्तियाँ हैं, तो कुछ कम डोमेन विशिष्ट नामकरण के साथ मिश्रित। हमारे कोड टिप्पणियों, वर्ग / विधि / चर नामों की भाषा अंग्रेजी है। क्या आप सभी डोमेन विशिष्ट नामों का अनुवाद करेंगे?


11
अंग्रेज़ी। प्रोग्रामिंग के लिए लिंगुआ फ्रेंका।
रिग

6
अधिक 'चुनौतीपूर्ण' PHP त्रुटि संदेशों में से एक में एक दिलचस्प हिब्रू मोड़ है unexpected T_PAAMAYIM_NEKUDOTAYIM:। अपने जीवन में कुछ समय देखने के बाद, मुझे इसमें कोई संदेह नहीं है कि किसी को अंग्रेजी का उपयोग करना चाहिए।
केटीफ

3
जर्मन डोमेन-विशिष्ट अभिव्यक्तियों में से किसी में भी गैर-मानक वर्ण हैं (जैसे, umulauts (sp?))। यदि आप अपने क्षेत्र के बाहर प्रोग्रामर किराए पर लेते हैं, तो वे अपेक्षित वर्णों के साथ एक कीबोर्ड नहीं खोज सकते हैं (मेरा नहीं)। हां, 'टाइप की गई' भाषा को स्विच करने के तरीके हैं, लेकिन मैं वह परेशानी नहीं चाहूंगा।
क्लॉकवर्क-म्यूजियम

2
ग्रीक - गैर-लैटिन वर्णमाला का उपयोग क्लिंगन की तुलना में बेहतर नौकरी सुरक्षा है।
वायट बार्नेट

3
@ X-Zero सादे ASCII के बाहर जाने से "क्या चरित्र एन्कोडिंग हम उपयोग करते हैं" कीड़ों को खोल सकते हैं। आमतौर पर आप काटते हैं और फिर से वहां नहीं जाते हैं।

जवाबों:


16

मैं जर्मनी में काम कर रहा हूं और मैं अंग्रेजी चुनना पसंद करता हूं।

कभी-कभी उदाहरण के लिए डोमेन विशिष्ट चीजें जैसे "DATEV" (जर्मन इनवॉइस / बिलिंग सॉफ्टवेयर) बनाने के लिए मैं जर्मन नामों का उपयोग करता हूं। कुछ जर्मन शब्दों का ठीक से अनुवाद नहीं किया जा सकता है, जैसे "Referenzbuchungsnummer" (ReferenceBookingNum?) या "Sachkontenlaenge" (..?)। इसके अलावा, मुझे लगता है कि डोमेन विशिष्ट चीजें रखरखाव हॉरर में समाप्त हो जाएंगी। शायद आपको याद होगा कि ReferenceBookingNum "Referenzbuchungsnummer" से संबंधित होगा, लेकिन आपके सहकर्मियों के बारे में क्या? उन्हें नामकरण के बारे में आंतरिक दस्तावेज का अध्ययन करना होगा, अगर प्रलेखन मौजूद है। वे उचित नाम लिए बिना मॉड्यूल से बहुत परिचित नहीं होंगे। यदि अन्य सभी डेवलपर जर्मन हैं तो यह एक अनावश्यक जटिलता है। लेकिन "केकफैक्ट" "केक्सफैब्रिक" की तुलना में बहुत अच्छा लगता है;)

तो यह सब निर्भर करता है।


2
यह उत्तर मेरे व्यक्तिगत उत्पीड़न को दर्शाता है, अन्य उत्तरों को पढ़ने के बाद। विशेष रूप से इस बिंदु: "यह एक अनावश्यक जटिलता है अगर सभी अन्य डेवलपर जर्मन हैं" जब सब कुछ अनुवाद करते हैं।
7

1
@ मल्मोथ: "यह एक अनावश्यक जटिलता है यदि अन्य सभी डेवलपर जर्मन भी हैं" --- आप यह कैसे सुनिश्चित कर सकते हैं कि एक समय में, कुछ वर्षों में, परियोजना दूसरे देश में आउटसोर्स नहीं की जाएगी? आप यह कैसे सुनिश्चित कर सकते हैं कि गैर-जर्मन भाषी डेवलपर को किसी समय प्रोजेक्ट में पेश नहीं किया जाएगा?
कोरल डोए

5
@ कोरल डो - मुझे लगता है कि नए / अन्य / आउटसोर्स डेवलपर को पहले से ही बिजनेस डोमेन और उसके विशिष्ट अभिव्यक्तियों में गहरी खुदाई करनी होगी । तो imho यह आसान है कि ग्राहक क्या (जो तब भी जर्मन होगा) साइज़ से लेकर जर्मन नाम की कक्षाएं बुरी तरह से / गलत तरीके से अनुवादित अंग्रेजी नामों से अलग है।
ज़ीमे

2
जर्मन बिलिंग / कर संबंधित "सामान" एक गैर जर्मन बोलने वाले देश के लिए कभी भी आउटसोर्स नहीं किया जाएगा। विश्वविद्यालय में किसी ने मुझे बताया कि सभी बिलिंग / कर पुस्तकों में से 85 प्रतिशत जर्मन कानूनों को संदर्भित करती हैं और जर्मन में लिखी जाती हैं। दुनिया भर।
lurkerbelow

3
मैं सहमत हूं लेकिन एक समस्या जो लगभग हमेशा होती है वह यह है कि डेवलपर्स द्वारा उपयोग की जाने वाली भाषा उपयोगकर्ताओं और अन्य हितधारकों के लिए लीक हो जाती है। Ui का हिस्सा नहीं है लेकिन आप समस्या डोमेन के बारे में कैसे बोलते हैं। यह अनिवार्य रूप से भ्रम पैदा करेगा क्योंकि हर कोई अंग्रेजी में उतना ही धाराप्रवाह नहीं है जितना कि अधिकांश डेवलपर्स हैं।
माइल बेस्सो

14

नॉर्वेजियन कंपनी में काम करने वाले नॉर्वेजियन होने के नाते मैं अपनी वस्तुओं का नाम अंग्रेजी में रखता हूं। बेशक कुछ शब्दों या अवधारणाओं में एक अंग्रेजी समकक्ष नहीं हो सकता है और उस स्थिति में कोई यह तर्क दे सकता है कि एक मूल शब्द का उपयोग खराब प्रतिस्थापन या शाब्दिक अनुवाद के स्थान पर किया जा सकता है जिसका अर्थ नहीं है। बेशक, इन समस्याओं में से अधिकांश तथ्य यह हो सकता है कि हम में से कुछ के पास एक बेहतर शब्दावली होनी चाहिए, इसलिए मैं आमतौर पर एक सहयोगी से पूछता हूं कि क्या मैं एक अच्छा अंग्रेजी नाम नहीं सोच सकता हूं :)

हमारे कुछ कर्मचारी नॉर्वेजियन नहीं हैं और इस प्रकार अंग्रेजी में लिखने से उन्हें लाभ होता है। अधिकांश यूरोप से प्रोग्रामर को काम पर रखने में सक्षम होना अर्थव्यवस्था के लिए अच्छा है इसलिए मेरी कंपनी को भी इससे लाभ होता है।

BTW: मुझे याद है कि मैंने एक बार (EbXML b2b कार्यान्वयन) हेमीज़ के स्रोत को पढ़ा था और अगर मैं मंदारिन में लिखता और टिप्पणी करता, तो मेरे पास एक कठिन समय होता।


5
लगभग "कॉलेज" जिसे मैं मानता हूं उसे "सहकर्मी" माना जाता है, लेकिन मुझे यकीन नहीं था कि यह जानबूझकर किया गया था।
जैकब स्कोन

बेशक मेरा मतलब सहकर्मी :)
सिल्वेस्टर

Of course some words or concepts might not have a English counterpart- जब मैं प्रोग्रामिंग में आता हूं, तो मैं हमेशा उत्सुक रहता हूं, जैसे कि आप एक डिज़ाइन पैटर्न को जान सकते हैं जो केवल अंग्रेजी बोलने वालों के साथ नहीं आएगा। क्या आपके पास एक त्वरित उदाहरण है?
इज़काता

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

9

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

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

यह मान सकते हैं कि कुछ डोमेन विशिष्ट संरचनाओं के लिए यह ठीक है जो अन्य भाषाओं में आसानी से मैप नहीं करते हैं, या यदि कोई मौजूदा कोड आधार बनाए रखा गया है।


9

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


4
यह एक अच्छा बिंदु है: यदि सभी डोमेन ज्ञान स्थानीय भाषा में है और डोमेन अवधारणाओं के लिए कोई सहमति-प्राप्त अंग्रेजी नाम मौजूद नहीं है, तो स्थानीय भाषा का उपयोग करना एक अच्छा विचार हो सकता है।
जोकिम सॉउर

7

एक ही भाषा में लिखे गए सोर्स कोड को पढ़ना आम तौर पर आसान होता है। अधिकांश प्रोग्रामिंग भाषाओं के लिए इसका मतलब है कि आपको इसे अंग्रेजी में लिखना चाहिए।

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

मेरा मानना ​​है कि आमतौर पर जब भी एक सटीक मैपिंग अंग्रेजी में आसानी से उपलब्ध नहीं होती है, तो डोमेन की शर्तों को रखना आवश्यक होता है , लेकिन केवल वे - बाकी अंग्रेजी में रखें। यह KommuneImpl जैसे असामान्य पहचानकर्ताओं में परिणाम देगा, लेकिन यह उन लोगों के लिए तत्काल समझ बनाना चाहिए जो डोमेन जानते हैं।


2

ओपन-सोर्स / अंतर्राष्ट्रीय समुदाय प्रकार की परियोजनाएँ

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

वाणिज्यिक परियोजनाएँ

अधिकांश अंतर्राष्ट्रीय सॉफ्टवेयर फर्म अंग्रेजी में लिखे जाने के लिए कोड अनिवार्य करती हैं। यह सबसे बड़ा सामान्य भाजक है, इसलिए यह निरंतरता बनाने के साधन के रूप में अंग्रेजी का उपयोग करने के लिए समझ में आता है।

कई क्षेत्रीय सॉफ्टवेयर फर्म अपनी मूल भाषा में लिखते हैं। सभी इस दृष्टिकोण का पालन नहीं करते हैं, लेकिन यह उनके दृष्टिकोण से समझ में आता है - वे अपने सभी डेवलपर्स के लिए सामान्य भाषा का उपयोग करते हैं।

व्यापारिक वस्तुओं का नामकरण

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

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

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


1
आपका अंतिम पैराग्राफ पूरी तरह से आपके पहले खंडन का खंडन करता है, ऐसा लगता है
जेम्स

@ नाम - धन्यवाद! मैंने उस समय को हटा दिया क्योंकि मेरे पास यह स्पष्ट करने का समय नहीं है कि मेरा क्या मतलब है। यह समर्थन करने वाला था, लेकिन कोई बात नहीं।

1
दृढ़तापूर्वक असहमत। चूंकि व्यावहारिक रूप से मिलने वाली हर भाषा की मूल अवधारणाएं अंग्रेजी में लिखी जाती हैं, गैर-अंग्रेजी शब्दावली का उपयोग करने से कम सुगम स्रोत हो जाता है। मन को लगातार अंग्रेजी और दूसरी भाषा के बीच कूदना पड़ता है। कोड धाराप्रवाह और पठनीय होना चाहिए।
माइक एडलर

@ मायके एडलर - यह स्पष्ट नहीं है कि अगर आप सामान्य नियम (टीम की भाषा में चीजों का नाम) या अपवाद मामले के बारे में जो सुझाव देते हैं, उससे असहमत हैं, तो ऐसा बहुत कम होना चाहिए।

दी। मैं स्पष्ट करूंगा: मैं असहमत हूं कि किसी भी वस्तु का नाम अंग्रेजी के अलावा किसी अन्य भाषा में होना चाहिए। आपका पहला शीर्षक 'ओपन सोर्स / इंटरनेशनल कम्युनिटी टाइप प्रोजेक्ट्स' मेरी बात को अच्छी तरह से दर्शाता है। उसके बाद सब कुछ, मैं नहीं खरीद रहा हूँ। कारण, जैसा कि कहा गया है, स्थिरता है, जो व्यावहारिक रूप से हर डिजाइन निर्णय (नामकरण योजना सहित) के लिए एक व्यापक चिंता का विषय होना चाहिए, मेरी राय में।
माइक एडलर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.