पाठ्यपुस्तकों में स्रोत-कोड और जैसे अनुवाद किया जाना चाहिए?


16

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

डेटा बुकइनफो = बुक इंट स्ट्रिंग [स्ट्रिंग]
              व्युत्पन्न दिखाएँ

बन जाएगा

data InfoLivro = Livro Int String [स्ट्रिंग]
               व्युत्पन्न दिखाएँ

चूंकि मैंने पुर्तगाली में कोई सॉफ़्टवेयर-संबंधित पुस्तकें नहीं पढ़ी हैं, इसलिए मुझे नहीं पता कि यह एक सामान्य अभ्यास है, न ही यदि इसे इस तरह से किया जाना चाहिए। अंत में, कोड एक भाषा मिश्रण है (शायद हास्केल में उदाहरण एक अच्छा नहीं है, क्योंकि आप समान रूप से समानार्थक शब्द बना सकते हैं type CadeiaDeCaracteres = String, लेकिन आपको बिंदु मिलता है)। तो यह वास्तव में कोई फर्क नहीं पड़ता कि आप कितनी मेहनत करते हैं, आपको कुछ पुराने अंग्रेजी शब्दों के साथ पाठक के पिछले अनुभव पर भरोसा करना होगा।

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


9
प्रशिक्षक इससे क्या सीखने की उम्मीद करता है? हां, आप हास्केल के बारे में थोड़ा जान सकते हैं, लेकिन ऐसा लगता है कि यह ज्यादातर आपके अंग्रेजी अनुवाद कौशल का परीक्षण है। क्या वह सिर्फ भविष्य की कक्षाओं के लिए अनुवाद चाहता है, और वह सोचता है कि इस कक्षा के सभी छात्रों का समय बर्बाद करना इसे पूरा करने का तरीका है? मेरी शर्त: आप सब सीखेंगे कि क्यों अनुवाद विशेषज्ञों द्वारा सबसे अच्छा क्षेत्र है।
डोरी


@ डोरी मैं पूरी तरह से सहमत हूँ। अफसोस की बात यह है कि मेरा विश्वविद्यालय कम से कम सीएस क्षेत्र में काम करता है।
रैपफारिया

आप उसे कुछ इस तरह बताना चाहिए: "" "प्रोफेसर, você está realmente Louco ईयू preferiria dormir कॉम sua mãe कर कुए fazer isso Aprenda Ingles कहां perecer।।।" ""
नौकरी

जवाबों:


13

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

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

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

क्षमा करें यदि यह आपकी दुविधा को हल नहीं करता है, लेकिन अभी भी इस पर एक आम सहमति नहीं है: - /


11

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

अंग्रेजी में किताबें चाहने का एक और कारण यह है कि वेब पर सब कुछ [या सर्वोत्तम चीजें, जैसे इस साइट] अंग्रेजी में लिखा गया है, इसलिए आप अंग्रेजी शब्द से परिचित होंगे और आप बेहतर अन्य लोगों के कोड को समझने में सक्षम होंगे ... [चूंकि एक अच्छा प्रोग्रामर अंग्रेजी में कोड करेगा, कम से कम मेरे POV से]

यदि आपको पुर्तगाली [या किसी अन्य भाषा] में किताबें पढ़ने की आवश्यकता है, तो उस भाषा पर लिखी गई भाषाओं को पसंद करें [अनुवादित नहीं]।

यह स्पष्ट करने के लिए: यदि आप उस पुस्तक का अनुवाद करने जा रहे हैं, तो सभी कोड को अंग्रेजी में रखने की कोशिश करें [टिप्पणियों का अनुवाद किया जा सकता है, लेकिन var या funcs नहीं] और 'अरेंज' जैसे सामान को 'अरेंजो' में अनुवाद करने का प्रयास न करें 'माउस' को 'राटो' [कम से कम मैं अंग्रेजी शब्द पसंद करूंगा, पुर्तगाल के लोग दूसरा पसंद करेंगे, मुझे लगता है]।


3
+1 इन तीनों में एक विशेषज्ञ की आवश्यकता के लिए (स्रोत भाषा, लक्ष्य भाषा, प्रोग्रामिंग)
फ्रैंक शियरर

2

एक गैर-देशी अंग्रेजी वक्ता के रूप में, मुझे अनुवादित कोड पसंद नहीं है।

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

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

  3. मुझे विश्वास नहीं होता कि यह इतना मदद करता है। यहां तक ​​कि एक गैर-अंग्रेजी बोलने वाले व्यक्ति के लिए, एक नियमित कार्यक्रम में पहचानकर्ताओं के लिए उपयोग की जाने वाली अंग्रेजी काफी सरल है और इसे बहुत तेजी से सीखा जा सकता है।


2

कोड उदाहरणों का अनुवाद करने के खिलाफ एक अच्छा बिंदु यह है कि, यदि आप करते हैं , तो आपको उनका परीक्षण करना होगा , क्योंकि अनुवादित कोड उदाहरणों को मूल लोगों की तरह ही सही होने की उम्मीद है।

क्या परीक्षण का प्रयास अनुवाद की लागत में शामिल है? मुझे नहीं लगता, ज्यादातर मामलों में।

यदि आप अनुवादित कोड का परीक्षण नहीं करते हैं, तो आप अनुवादित सामग्री और मूल दोनों की प्रतिष्ठा को नुकसान पहुंचाते हुए, तोड़ने या गलत होने के लिए कोड को जोखिम में डाल रहे हैं।

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

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


0

मैं अंग्रेजी के अलावा कोई भी भाषा नहीं बोलता। (खैर, मैं हाई स्कूल में लैटिन। उपयोगी अगर मैं कभी लैटिन अमेरिका का दौरा करता हूं। :-) उस पृष्ठभूमि के साथ, मैं कहूंगा:

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

कुछ कंप्यूटर भाषाएं उदाहरण के लिए विज़ुअल बेसिक जैसे बहुत से अंग्रेजी शब्दों का उपयोग करती हैं। अन्य लोग ज्यादातर प्रतीकों का उपयोग करते हैं, जैसे C / C ++ / C #। इसलिए यदि आप प्रोग्राम करने जा रहे हैं, तो आपको कुछ अंग्रेजी सीखना होगा। लेकिन मुझे नहीं लगता कि यह बहुत अधिक है। IF, WHILE, RETURN, आदि भाषा के आधार पर, शायद 10 या 20 शब्द कुछ दर्जन तक। विजुअल बेसिक वह सबसे खराब भाषा है, जिसके बारे में मैं सोच सकता हूं, और मैंने सिर्फ एक लिस्ट चेक की है और इसमें एक त्वरित गिनती के साथ, लगभग 160 आरक्षित शब्द हैं, लेकिन इसमें बहुत दोहराव है। END और WHILE की तरह और फिर END WHILE को तीन अलग-अलग "शब्दों" के रूप में सूचीबद्ध किया गया है। मैं देख सकता हूं कि एक गैर-अंग्रेजी बोलने वाले के लिए असुविधाजनक है, लेकिन इन शब्दों को अक्सर उनके सामान्य अंग्रेजी अर्थों से संबंधित अर्थ के साथ उपयोग किया जाता है, इसलिए मुझे लगता है कि कई मामलों में यह ' एक गैर-अंग्रेजी वक्ता के लिए एक अंग्रेजी वक्ता की तुलना में बहुत कठिन नहीं है। जैसे, हैन्डलर या कैस्ट का अर्थ शायद नए प्रोग्रामर से अधिक स्पष्ट नहीं है जो पुर्तगाली बोलने वाले नए प्रोग्रामर की तुलना में अंग्रेजी बोलता है। यदि इसके बजाय इन चीजों में से कुछ को अंग्रेजी में अर्थहीन कहा जाता है, जैसे कि अगर CAST ने कहा कि हमने FOOBAR कहा है, तो क्या इससे मुझे प्रोग्रामिंग सीखना कठिन हो जाएगा? मुझे संदेह है कि इससे बहुत फर्क पड़ा होगा। क्या इससे मुझे प्रोग्रामिंग सीखना कठिन हो गया है? मुझे संदेह है कि इससे बहुत फर्क पड़ा होगा। क्या इससे मुझे प्रोग्रामिंग सीखना कठिन हो गया है? मुझे संदेह है कि इससे बहुत फर्क पड़ा होगा।

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

यदि आप पुर्तगाली में एक कार्यक्रम लिख रहे हैं और केवल वे लोग जो इसे पढ़ने की संभावना रखते हैं, वे अन्य ब्राजीलियाई हैं, और आप सभी संभवतः पुर्तगाली बोलते हैं, लेकिन शायद अंग्रेजी में विशेष रूप से धाराप्रवाह नहीं हैं, यह सिर्फ चर नाम पुर्तगाली बनाने के लिए समझ में आता है। मैं यह नहीं देखता कि जिस भाषा में आप विशेष रूप से अच्छे नहीं हैं, वैरिएबल नाम बनाने की कोशिश करने से क्या हासिल होता है।

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