বিভিন্ন ভাষা প্রয়োগে ইউনিকোড শনাক্তকারী সমর্থন যোগ করার মূল বিষয়টি কী?


14

আমি ব্যক্তিগতভাবে ইউনিকোড শনাক্তকারীদের পূর্ণ কোডটি বিভ্রান্তিকর দেখতে পাই। আমার মতে, এটি কোডটি সহজেই বজায় রাখা থেকে বাধা দেয়। এই ধরনের সমর্থন বাস্তবায়নের জন্য বিভিন্ন অনুবাদকের লেখকের জন্য প্রয়োজনীয় সমস্ত প্রচেষ্টা উল্লেখ না করা to আমি ইউনিকোড শনাক্তকারীদের বিভিন্ন ভাষা বাস্তবায়নের (ডিস্ক) সুবিধার তালিকার (যেহেতু এটি সত্যই গুরুত্বপূর্ণ) এর অভাব (বা উপস্থিতি) ক্রমাগত লক্ষ্য করি। আমি পাই না don't এত মনোযোগ কেন?


1
আপনি কি জিনিসগুলির জন্য নাম বোঝাতে চান, বা আপনার কাছে তারকা, ল্যাম্বডাস এবং মিডল ডটসের মতো বিশেষ অক্ষর বোঝানো হচ্ছে?
ফ্রাঙ্ক শায়ারার

5
হাঃ হাঃ হাঃ ! আপনি কি জানতেন যে ইংরাজী স্পিচিং কনট্রিশনের বাইরে কোনও বিশ্ব বিদ্যমান? আশ্চর্য আবিষ্কার, তাই না?
deadalnix

3
ডেডালনিক্স: আমি এই জাতীয় দেশে থাকি, তাই আমরা এর মতো সনাক্তকারী ব্যবহার করতে পারি größe। এটি বলেছিল, আমি কখনই তা করি না এবং আমি তা করে দৃ strongly়ভাবে নিরুৎসাহিত করি। অতএব, অনুসন্ধানটি খুব কার্যকর।
ব্যবহারকারী 281377

2
ডেডালনিক্স: আমি এখনও পর্যন্ত কোনও ইংরেজীভাষী দেশে ছিলাম না। আসল প্রশ্নের দিকে কেন মনোযোগ দিচ্ছেন না, প্রশ্নকারী নয়?
ডিম টেনসিন

6
আমি আশা করি ভাষাগুলি স্ট্রিং হ্যান্ডলিংয়ে সরাসরি ইউনিকোড পাওয়ার দিকে মনোনিবেশ করবে এবং অভিনব ইউনিকোড শনাক্তকারীদের ছেড়ে যাবে। ভাল প্রোগ্রামিং রিসোর্সগুলি যাইহোক ইংরাজীতে রয়েছে (স্ট্যাকওভারফ্লো), সুতরাং আসুন স্বীকার করি প্রোগ্রামিং ইংরাজিতে করা উচিত (এছাড়াও ভাগ করে নেওয়া সহজ করে তোলে) এবং যথাযথ ইউনিকোড স্ট্রিং ম্যানিপুলেশন বাস্তবায়নে ফোকাস করে।
ম্যাথিউ মিঃ

উত্তর:


17

আপনি যখন ইউনিকোড ভাবেন, আপনি চাইনিজ বা রাশিয়ান অক্ষরগুলি মনে করেন যা আপনাকে ইন্টারনেটে দেখেছি এমন রাশিয়ান ভাষায় রচিত কিছু উত্স কোড সম্পর্কে ভাবতে বাধ্য করে এবং যা ব্যবহারের অযোগ্য ছিল (আপনি রাশিয়ান না জানলে)।

তবে যদি ইউনিকোডটি কোনও ভুল উপায়ে ব্যবহার করা যায় তবে এর অর্থ এই নয় যে উত্স কোডে এটি নিজেই খারাপ।

নির্দিষ্ট ক্ষেত্রের জন্য ইউনিকোড সহ কোড লেখার সময় আপনি নিজের কোডটি ছোট করে আরও পাঠযোগ্য করে তুলতে পারেন । পরিবর্তে:

const numeric Pi = 3.1415926535897932384626433832795;
numeric firstAlpha = deltaY / deltaX + Pi;
numeric secondAlpha = this.Compute(firstAlpha);
Assert.Equals(math.Infinity, secondAlpha);

তুমি লিখতে পারো:

const numeric π = 3.1415926535897932384626433832795;
numeric α₁ = Δy / Δx + π;
numeric α₂ = this.Compute(α₁);
Assert.Equals(math.∞, α₂);

যা গড় বিকাশকারীদের পক্ষে পড়া সহজ নয়, তবে প্রতিদিনের জন্য গাণিতিক চিহ্নগুলি ব্যবহার করা এমন ব্যক্তির পক্ষে পড়া সহজ

বা, এসএলআর ফটোগ্রাফি সম্পর্কিত কোনও অ্যাপ্লিকেশন করার সময়, এর পরিবর্তে:

int aperture = currentLens.GetMaximumAperture();
Assert.AreEqual(this.Aperture1_8, aperture);

আপনি অ্যাপারচারটি এটির প্রতীক দ্বারা প্রতিস্থাপন করতে পারেন , নিকটে একটি লেখার সাথে ƒ/1.8:

int ƒ = currentLens.GetMaximumƒ();
Assert.AreEqual(this.ƒ1¸8, ƒ);

এটি অসুবিধাজনক হতে পারে : সাধারণ সি # কোড টাইপ করার সময়, আমি লেখার পক্ষে পছন্দ করব:

var productPrices = this.Products.Select(c => c.Price);
double average = productPrices.Average()
double sum = this.ProductPrices.Sum();

বরং:

var productPrices = this.Products.Select(c => c.Price);
double average = productPrices.x̅()
double sum = productPrices.Σ();

কারণ প্রথম ক্ষেত্রে, IntelliSense আমাকে প্রায় টাইপ না করে এবং বিশেষত আমার মাউস ব্যবহার না করে পুরো কোডটি লিখতে সহায়তা করে, যখন দ্বিতীয় ক্ষেত্রে, এই চিহ্নগুলি কোথায় পাওয়া যায় সে সম্পর্কে আমার কোনও ধারণা নেই এবং যেতে মাউসের উপর নির্ভর করতে বাধ্য করা হবে এবং তাদের স্বয়ংক্রিয় সমাপ্তির তালিকায় অনুসন্ধান করুন।

এটি বলা হচ্ছে, এটি এখনও কিছু ক্ষেত্রে কার্যকর। currentLens.GetMaximumƒ();আমার আগের উদাহরণটি ইন্টেলিজেন্সের উপর নির্ভর করতে পারে GetMaximumApertureএবং সংক্ষিপ্ত এবং আরও পাঠযোগ্য হিসাবে টাইপ করা সহজ । এছাড়াও, প্রচুর চিহ্ন সহ নির্দিষ্ট ডোমেনগুলির জন্য, কীবোর্ড শর্টকাটগুলি সোর্স কোডে তাদের আক্ষরিক সমতুল্যের চেয়ে দ্রুত প্রতীকগুলি টাইপ করতে সহায়তা করতে পারে ।

একইভাবে, মন্তব্যে প্রযোজ্য। কেউ চাইনিজ ভাষায় মন্তব্যে পূর্ণ কোড পড়তে চায় না (যদি না আপনি নিজেরাই ভাল চিনে থাকেন তবে)। তবে কিছু প্রোগ্রামিং ভাষায়, ইউনিকোড চিহ্নগুলি এখনও কার্যকর হতে পারে। একটি উদাহরণ পাদটীকা ¹


C আমি অবশ্যই সি # কোডে পাদটীকা উপভোগ করব না যেখানে মন্তব্যগুলি কীভাবে লিখতে হয় তার স্টাইল বিধিগুলির একটি কঠোর সেট রয়েছে। অন্যদিকে পিএইচপি-তে, যদি ব্যাখ্যা করার মতো প্রচুর জিনিস থাকে তবে সেই জিনিসগুলি খুব গুরুত্বপূর্ণ নয়, কেন সেগুলি ফাইলের নীচে রাখবেন না, এবং পদ্ধতিটির পিএইচপিডোকটিতে একটি পাদটীকা তৈরি করবেন না কেন ?


এএসসিআইআইতে 37 টি অক্ষর রয়েছে যা সনাক্তকারীগুলিতে ব্যবহার করা যেতে পারে; আমি প্রত্যাশা করব যে বেশিরভাগ হরফগুলিতে এগুলি যথাযথভাবে স্বতন্ত্র যে লাতিন বর্ণমালায় সাবলীল লোকেরাও বিভিন্ন ফন্টের অক্ষরের দুটি স্ট্রিং বলতে শিখতে পারত একই শনাক্তকারী। কোনও প্রোগ্রামার যখন "Φ" এর পরিবর্তে একটি কোণের জন্য "Ф" ব্যবহার করেন তখন ডিবাগিংয়ের কত প্রচেষ্টা নষ্ট হতে চলেছে?
সুপারক্যাট

1
@ সুপের্যাট: ভালো কথা। তবে আপনি যে উদাহরণটি দিয়েছেন তা সরঞ্জামটির খারাপ ব্যবহারের চেয়ে কোনও সরঞ্জামের খারাপ ব্যবহার দেখায়। Δxবা -∞বৈধ ব্যবহারগুলি (কিছু উত্তরগুলির সাথে আমি আমার উত্তরে ব্যাখ্যা করেছি)। Ф/ Φঅন্যদিকে কেবলমাত্র লক্ষণগুলি যা প্রোগ্রামার বুঝতে পারে না কিভাবে কীভাবে ভেরিয়েবলগুলির নাম রাখা যায়।
আর্সেনী মোরজেঙ্কো

1
যদি কোনও প্রোগ্রামার একটি ছোট হাতের গ্রীক অক্ষর থিয়েটা (যেমন একটি অনুভূমিক কোণের জন্য) চাইছিল, আপনি কি জানেন যে আমি যে চিহ্নগুলি দিয়েছি তা কোনটি সঠিক? অক্ষরগুলির প্রচুর গোষ্ঠী রয়েছে যা অভিন্ন না হলে খুব মিল দেখায়। যদি উত্স ফাইলগুলিতে নির্দেশকগুলি অন্তর্ভুক্ত থাকে যা নির্দিষ্ট করে যা চিহ্নিতকারীগুলির সাহায্য করতে পারে তার মধ্যে কী অক্ষরগুলি একসাথে থাকতে পারে তবে অন্যথায় আমি দেখতে দেখতে বৈকল্পিক অক্ষরের সাথে বর্ণিত বিদেশী অক্ষরগুলির সাথে সঠিকভাবে নামযুক্ত ভেরিয়েবলগুলির মধ্যে প্রচুর সম্ভাব্য বিভ্রান্তি দেখি।
সুপারক্যাট

1
@ সুপের্যাট: আপনি গ্রীক চিঠি বলতে চাইছেন ফাই? আমার বক্তব্যটি হ'ল প্রোগ্রামার যদি এই অ্যাপ্লিকেশনটিতে এই সংকেতটি ব্যবহার করেন যেখানে "ক্রমবর্ধমান বিতরণ ফাংশন" শব্দটির প্রত্যাশা রয়েছে, তবে ডোমেন পরিভাষা এবং চিহ্নগুলি সম্পর্কে সচেতন যে কোনও ব্যক্তি Φ এর অর্থ বুঝতে পারবেন। cumulativeDistributionFunctionঅত্যন্ত দীর্ঘ. CDFthan এর চেয়ে কম পঠনযোগ্য Φ cumDistFuncকুরুচিপূর্ণ এর অর্থ হ'ল প্রোগ্রামার যদি এই প্রসঙ্গে পরিবর্তে সিরিলিক ছোট অক্ষর EF (Ф) ব্যবহার করে তবে এটি কেবল একটি ভুল। একইভাবে, একটি প্রোগ্রামার একটি ভুল শব্দ বা একটি ভুল সংক্ষিপ্তসার ব্যবহার করতে পারে।
আর্সেনি মরজেনকো

1
যদি কোনও চলক নাম আন্ডারস্কায়ার, 0-9, অ্যাজ এবং এজেড সমন্বিত থাকে তবে কোডটির অনুলিপি সহ যে কেউ অনুলিপি / পেস্ট সমর্থন করে না (যেমন একটি প্রিন্টআউট) যথাযথভাবে এটি পুনরুত্পাদন করতে পারে বলে আশাবাদী। কেউ "ɸ" এর অর্থ কী তা না জেনে অনুলিপি করার চেষ্টা করছেন খুব সহজেই "Ф" দিয়ে শেষ হতে পারে, এবং প্রোগ্রামার যদি জানে যে এটি "ফাই" হওয়ার কথা, তবে এটি "φ" বা "ɸ" কিনা তা স্পষ্ট নয় যথাযথ. [একটি হ'ল "ল্যাটিন ছোট চিঠি ফি", এবং একটি "গ্রীক ছোট ছোট লটার ফি" - তারা এই মন্তব্য ফন্টে সুস্পষ্টভাবে পৃথক প্রদর্শিত হবে, তবে লুসিডা সানস ইউনিকোডে নয়]।
সুপারক্যাট

8

আমি বলব:

  1. প্রোগ্রামিং শিখার (যেমন স্কুলে) এবং ইংরেজি জানেন না এমন পেশাদারদের এবং নবাগতদের আরাম দেওয়ার জন্য। তারা যাইহোক প্রডাকশন কোডটি লেখেন না। আমি অনেকবার কোড এর মতো দেখেছি:

    double upsos, baros;
    cin >> upsos >> baros;
    

    দরিদ্র লোকটিকে তার ভাষায় এটি লিখতে দিন:

    double ύψος, βάρος;
    cin >> ύψος >> βάρος;
    
  2. আপনি এটি পছন্দ করেন না?

    class ☎ {
    public:
        ☎(const char*);
        void 📞();
        void 🎧(👨);
    };
    
    ☎ ☏("031415926");
    ☏.🎧(👨("Bob"));
    ofstream f;
    f.💾();
    

হাস্যকরভাবে, "আপনার পছন্দ নয়" এর অধীনে কোডটি সঠিকভাবে রেন্ডার করে না, কোন ধরণের চিত্রটি বোঝায় যে আপনি কী কারণে ভীতু চরিত্রগুলি ব্যবহার থেকে দূরে থাকতে চান।
ক্রিস

5

অবশ্যই, প্রতিটি আধুনিক সংকলককে অবশ্যই আজ ইউনিকোড উত্স কোডের সাথে ডিল করতে হবে। উদাহরণস্বরূপ, স্ট্রিং ধ্রুবকগুলিতে ইউনিকোড অক্ষর থাকতে পারে। তবে একবার এটি অর্জন করা গেলে, ইউনিকোড শনাক্তকারীদেরও অনুমতি দেবেন না কেন? আপনার সংকলক কোডটি অক্ষর 7-বিট কোডের উপর নির্ভর করে যদি না এটি কোনও বড় কথা।

তবে ওপিটি সঠিকভাবে ইনফোফার: এটি এখন সম্ভব হয়েছে যে কোনও হিন্দিভাষী ভারতীয়কে অবশ্যই রাশিয়ান শনাক্তকারী এবং আরবিক মন্তব্য সহ কোড বজায় রাখতে হবে। গুণমানের চেক করার কথা বলে এবং যে উপরের 3 টি বর্ণমালার মধ্যে যে কোনওটি পড়তে পারে না এমন দরিদ্র চীনাদের জন্য কী দুঃস্বপ্ন!

সুতরাং, কোনও প্রোগ্রাম সনাক্তকারী এবং মন্তব্যগুলি একটি সাধারণ ভাষায় লিখিত হয়েছে তা নিশ্চিত করা এখন একটি সাংগঠনিক কাজ। আমি এটি সাহায্য করতে পারি না তবে আমি মনে করি এটি আগামীর জন্য ইংরাজী হতে চলেছে।


ইউনিকোড শনাক্তকারীদের অনুমতি দেওয়ার ক্ষেত্রে একটি সমস্যা হ'ল এটি সোর্স কোডকে এমন তথ্য ধারণ করতে দেয় যা শব্দার্থগতভাবে গুরুত্বপূর্ণ তবে মুদ্রণযোগ্য নয়। উদাহরণস্বরূপ, যদি কোনও শ্রেণি ক্ষেত্র ঘোষণা করে তবে Аতার নির্মাতা প্যারামিটার গ্রহণ করবে Αএবং কনস্ট্রাক্টরের একটি বিবৃতি বলবে var x = A.boz();, Aক্ষেত্র, প্যারামিটার বা অন্য কিছু হতে পারে? কেউ কীভাবে বলতে পারে?
সুপারক্যাট

1
হ্যাঁ, তবে তারপরে কেবল কয়েকটি অক্ষরই দেখতে একরকম এবং তারপরে এটি প্রায়শই শৈলীর বিষয়, কোডিং গাইডলাইন এবং কোয়ালিটির আশ্বাস যে আপনি এটির মতো দেখতে 3 টি আলাদা অক্ষর ব্যবহার করছেন না তা নিশ্চিত করতে হবে এক জায়গায়. ওটো, একজন মুক্তিযোদ্ধা হওয়ায় আমি কোনও কিছুকে ঘৃণা করি কেবল কারণ এটি নিশ্চিত নয় যে এটি কারও দ্বারা আপত্তিজনকভাবে ব্যবহার করা যেতে পারে।
এঙ্গো

আমি অনুমান করি যে আমার মতামত নিয়ে প্রবণতা রয়েছে যে প্রোগ্রামগুলি হয় হয় মানব-পঠনযোগ্য ফর্ম্যাটে প্রবেশ করা উচিত, বা এমন বিন্যাসে যা সংহত পাঠ্য ফাইল হিসাবে সীমাবদ্ধ নয় (তবে লাইনগুলির সাথে সংযুক্ত রাষ্ট্রগুলিকে অন্তর্ভুক্ত থাকতে পারে, জিনিসগুলির সাথে সংযুক্ত টীকাগুলি অন্তর্ভুক্ত থাকতে পারে) ইত্যাদি)) আমি মনে করি সেখানে বুদ্ধিমান যে যথেষ্ট মান "কি দেখতে হয় - অন্তত শব্দার্থগতভাবে - ওখানে কি", এবং মনে করেন যে, প্রোগ্রাম যা ভিন্ন উচিত চেহারা আলাদা। যদি এমন মানদণ্ড থাকে যেগুলি শনাক্তকারীগুলির নিকটবর্তী, তবে খুব বেশি মিল না হয় তবে সনাক্তকারীদের আরও কাছাকাছি স্কোয়াডে ব্যবহার করা নিষিদ্ধ করে, এটি সাহায্য করতে পারে।
সুপারক্যাট

4

আমি মনে করি স্ট্রিং এবং মন্তব্যে ইউনিকোড অক্ষরকে মঞ্জুরি দেওয়া অনেক অর্থবোধ করে। এবং যদি লেক্সার এবং পার্সারটিকে যেভাবেই এর জন্য ইউনিকোড সমর্থন করতে হয়, সংকলক লেখক সম্ভবত বিনামূল্যে শনাক্তকারীগুলিতে ইউনিকোড চরিত্রের সমর্থন পান, তাই এটি সনাক্তকারীগুলিতে কেবলমাত্র ASCII অক্ষরকে অনুমতি দেওয়া একটি স্বেচ্ছাসেবী সীমাবদ্ধতার মতো মনে হবে।


8
আসলে তা না. স্ট্রিং লিটারেলগুলিতে, নন-এএসসিআইআই অক্ষরকে অস্বচ্ছ হিসাবে ধরা যেতে পারে। সনাক্তকারীদের সাথে, আপনাকে কোন সিদ্ধান্ত নিতে হবে যে কোন অক্ষরগুলি বৈধ, এবং সেগুলি স্বাভাবিক করতে হবে (উদাহরণস্বরূপ, várএকই várকি?)
dan04

4

যতদূর আমি উদ্বিগ্ন, এটি নিখুঁত বিপণনের কারণে। এবং অতিরিক্তভাবে আমাদের জীবন আরও কঠিন করে তুলতে পারে।

বিপণন যুক্তি

বেশিরভাগ ভাষায় গর্বিত এমন বৈশিষ্ট্যগুলির এই ক্রেজি তালিকাগুলি জানেন? এটি সাধারণভাবে বেশ অযথা, কারণ এটি ভাষা থেকে এত দূরে যে এটি নির্দিষ্ট বিষয়ে বেশি তথ্য সরবরাহ করে না, তবে এটি দ্রুত টিক্স এবং ক্রসযুক্ত টেবিলগুলি সাজানোর অনুমতি দেয় এবং যথাযথভাবে উপসংহারে পৌঁছায় যে এক্স এর সাথে অবশ্যই আরও বেশি টিক রয়েছে ভালো হবে.

ঠিক আছে, শনাক্তকারীদের জন্য ইউনিকোড সমর্থন সেই লাইনের একটি। ল্যাম্বডা সমর্থন, জেনেরিক প্রোগ্রামিং সমর্থন ইত্যাদির তুলনায় এটি কোনও ব্যাপার নয় ... টেবিলগুলি আঁকানো লোকেরা প্রতিটি লাইনের গুণমান সম্পর্কে চিন্তা করে না, কেবল তাদের সংখ্যা সম্পর্কে।

এবং এইভাবে তারা গর্ব করতে পারে: "আহা, ওয়াই এর সাথে আপনার শনাক্তকারীদের জন্য ইউনিকোড সমর্থন নেই! এক্স-এ আমরা করি, তাই শিক্ষার্থীদের পক্ষে এটি অনেক সহজ!"

অ্যাক্সেসযোগ্যতার মিথ্যাচার

দুর্ভাগ্যক্রমে, অ্যাক্সেসযোগ্যতার যুক্তিটি মিথ্যা।

ওহ, আমি বুঝতে পারি যে "ডাইসট্রোআরসাল্ট" (হ্যাঁ আমি ফরাসী) এর পরিবর্তে "résultatDuJetDeD write" লিখতে সক্ষম হওয়ায় স্বল্পমেয়াদে এটি জয়ের মতো মনে হতে পারে ... তবে ত্রুটিগুলি রয়েছে!

প্রোগ্রামিং যোগাযোগ সম্পর্কে

আপনার প্রোগ্রামটি কেবল সংকলকটির জন্য নয় (যা আপনি সনাক্তকারীদের সম্পর্কে কম যত্ন নিতে পারেন) এটি আপনার অনুগামীদের জন্যও বোঝানো হয়েছে। তারা এটি পড়তে এবং এটি বুঝতে সক্ষম হতে হবে।

  • এটি পড়ার দ্বারা বোঝানো হয়েছে যে আপনি যে অক্ষরগুলি ব্যবহার করেছেন তা কল্পনা করতে সক্ষম হবেন, ইউনিকোডটি সমস্ত ফন্টের দ্বারা এতটা সমর্থনযোগ্য নয়
  • এটি বোঝার অর্থ শনাক্তকারীদের উপর নির্ভর করা - আপনি যদি তাদের দীর্ঘায়িত মন্তব্যের সাথে পরিপূরক না করেন তবে তা ডিআরওয়াই বিধি লঙ্ঘন করে।

অবশ্যই, আপনার সহপাঠী আপনার মতো একই ভাষায় কথা বলতে পারে (স্পষ্ট নয়, আমার জার্মান, স্পেনীয়, লিবানিজ এবং চাইনিসের সাথে প্রোগ্রামিং ক্লাস ছিল), এবং তাই আপনার শিক্ষকও হতে পারে ... তবে মনে করুন আপনি কোনওভাবে ঘরে বসে কাজ করছেন এবং হঠাৎ সহায়তার দরকার: ইন্টারনেট দুর্দান্ত, আপনি হাজার হাজার মানুষের সাথে কথা বলতে পারেন যারা সমাধানটি জানেন, তারা কেবল আপনার উত্তরটি বুঝতে পারলে উত্তর দেবে will এবং আপনার তাদের উত্তরও বুঝতে হবে।

প্রোগ্রামিং বোঝার প্রয়োজন

অ্যাক্সেসিবিলিটি এবং দীক্ষার জন্য আপনার জন্য ভারী উত্তোলন করার জন্য লাইব্রেরিগুলিতে নিজেকে নির্ভর করা দরকার: আপনি আপনার প্রথম কার্যভারে কনসোল থেকে / পড়তে কোনও আইও স্তর পুনরায় উদ্ভাবন করতে চান না।

  • সেই গ্রন্থাগারগুলি কোন ভাষায় রচিত?
  • Libra গ্রন্থাগারগুলি কোন ভাষায় নথিভুক্ত করা হয়?

আপনি যদি মরোকান আরবীকে উত্তর দেন, আমি অবাক হব।

আপনি যে সমস্ত বক্তৃতাগুলিতে কেবল সহায়তা করেন সেগুলি এবং প্রতিটি লাইব্রেরির বৈশিষ্ট্যগুলিতে উপস্থিত বিস্তৃত ডকুমেন্টেশনগুলির উপর নির্ভর না করা থাকলে আপনি ব্যবহার করতে হবে (এবং সম্ভবত অনুবাদকৃত গ্রন্থাগারগুলি), তবে আপনাকে ইংরেজি ভাষার একটি মডিক্রাম শিখতে হবে । তবে তারপরে, আপনি সম্ভবত এই প্রোগ্রামিং কোর্সটি যে কোনও উপায়ে শুরু করার আগেই আগেই করেছেন।

ইংরেজি হচ্ছে...

... প্রোগ্রামারদের লিঙ্গুয়া ফ্র্যাঙ্কা (এবং বেশিরভাগ বিজ্ঞানী)।

যত তাড়াতাড়ি কেউ এটি স্বীকার করে, এবং এর বিরুদ্ধে লড়াইয়ের পরিবর্তে এর সাথে চলে যায়, যত তাড়াতাড়ি সত্যিকারের শিখতে এবং অগ্রগতি করতে পারে।

কিছু অনিবার্যভাবে এর বিরুদ্ধে উত্থাপন করবে এবং যথাযথভাবে তাদের পছন্দের ভাষা বলার অধিকারটি রক্ষা করবে (সাধারণত তাদের মাতৃভাষা), তবে, বাবেল যেমন দেখিয়েছেন, তত বেশি ভাষা ব্যবহৃত হয়, ততই কঠিন যোগাযোগ হয়।

এখনও ...

হ্যাঁ, এটি বারবার তর্ক করা হয়েছিল, কিছু ইউনিকোড সমর্থন (মূলত প্রতীকগুলি) গাণিতিক বা পদার্থবিজ্ঞানের সূত্রগুলিকে কোডে অনুবাদ করার জন্য লোকেদের জন্য উপলব্ধিটি ব্যাপকভাবে সহজ করতে পারে। এমন একটি অপূর্ণতা রয়েছে যা কিছু প্রতীক ওভারলোড হয়েছে তবে এটি এখনও সহায়তা করতে পারে।

তাহলে কেন ?

ঠিক আছে, যেমন বলা হয়েছে, এটি ব্যবহারকারীর সুবিধার্থে না, বিপণন দাবির বিষয়ে ততটাই। এটি খুব সহজেই মারা গেছে, যেহেতু পার্সার ইতিমধ্যে ইউনিকোড স্ট্রিং এবং মন্তব্যের জন্য সচেতন, তাই বেশিরভাগ লাফিয়ে যান।

এবং নির্দিষ্ট ব্যবহারকারীর জন্য একটি সুবিধা হতে পারে।

তবে আমি ব্যক্তিগতভাবে কেবল ইংরেজী শনাক্তকারীদের সাথে লিখিত কোডগুলিই মোকাবেলা করব। আপনার কোডের টুকরোগুলি বা আপনার লাইব্রেরিটি যদি সবেমাত্র দুর্দান্ত হয় এবং এটি ব্যবহার করে আমি অনেক কিছু অর্জন করতে পারি তবে আমার কোনও যত্ন নেই: আমি যদি এটি বুঝতে না পারি তবে আমাকে কেবল এড়িয়ে যেতে হবে।


সুতরাং আপনি oneতিহাসিক ডি ফ্যাক্টরি রিয়েলিটিসকে দে জুরেদের মধ্যে বেক করতে ইচ্ছুকদের মধ্যে একজন (অ্যাকসেন্টের অভাবকে ক্ষমা করুন, এই দিনগুলিতে কেউ যত্ন করছেন বলে মনে হয় না)?
মিলিণ্ড আর

@ মিলিন্দআর: আমি তাদের মধ্যে একজন যারা মনে করেন যে সবাই যদি একই ভাষায় কথা বলে তবে পৃথিবী আরও ভাল জায়গা হবে; ফরাসি হওয়া সত্ত্বেও আমি এই ভূমিকার জন্য ইংরেজিকে বিবেচনা করার মতো যথেষ্ট বাস্তববাদী। আমি নিশ্চিত হতে পারি যে ইউনিকোডের একটি উপসেট সাধারণভাবে কার্যকর হতে পারে (গ্রীক অক্ষর, গণিত / পদার্থবিজ্ঞানের জন্য)। আমি বুঝতে পারি যে প্রোগ্রামিং শেখানোর জন্য, এমন একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ যেখানে শিক্ষার্থী তাদের নিজস্ব ভাষায় শনাক্তকারীদের প্রকাশ করতে পারে তা সহায়ক; এটির প্রয়োজন নেই যে কোনও এবং সমস্ত ভাষা সম্পূর্ণ ইউনিকোড শনাক্তকারীদের সমর্থন করে। এটি আমার ব্যক্তিগত মতামত, আপনি যা করবেন তা তৈরি করুন :)
ম্যাথিউ এম।

3

আপনি কীভাবে চাইনিজ কীবোর্ডে ASCII সনাক্তকারী লিখতে চলেছেন? কয়েকটি ভাষার কীওয়ার্ড হ'ল একটি জিনিস এবং আপনার পুরো কোডটি সেভাবে করা অন্য জিনিস।

প্রোগ্রামারদের তাদের ভেরিয়েবলগুলি যা খুশি কল করার অধিকার এবং ক্ষমতা থাকতে হবে। কোন ভাষায় এটি আপনার ব্যবসায়ের নয় of

আপনি এখন শনাক্তকারী আছে তাদের মধ্যে অন্য লোকেদের ভাষা থেকে প্রতীক মাধ্যমে কোডের পড়া বিভ্রান্ত বোধ করেন, তাহলে আমি নিশ্চিত যে আপনি ঠিক বুঝতে বিভ্রান্ত তারা মনে তারা চিহ্ন দিয়ে শনাক্তকারী ব্যবহার করতে হবে যখন আপনার ভাষা।


4
আমি "রাশিয়ান" কীবোর্ড ব্যবহার করে এই বার্তাটি টাইপ করছি। আমি চাইনিজ কীবোর্ড ( goo.gl/U1q0m ) গুগল করেছি এবং রাশিয়ান একটি ( goo.gl/af04R ) এর সাথে আমি সত্যিই কোনও পার্থক্য দেখছি না । লক্ষ করুন, যাইহোক, উভয়েরই নেটিভের পাশাপাশি ল্যাটিন লেআউট রয়েছে।
ডিম টেনসিন

2
ধরা যাক আমি সিরিলিক ব্যবহার করে সনাক্তকারী ব্যবহার করি। তবে আমার কোডটি রক্ষণাবেক্ষণের বিষয়ে কী? বলুন, তিনি লাতিন অক্ষরের সাথে পরিচিত, তবে এখন তিনি সম্পূর্ণ ভিন্ন চরিত্রের সেটটি হ্যান্ডেল করার জন্য তৈরি হয়েছেন! আরবি অলঙ্কৃত বর্ণচিহ্ন এবং ইত্যাদির উল্লেখ না করা
Egor টেনসিন

2
3 য় অনুচ্ছেদটি কেবলমাত্র ইংরাজী ব্যবহারের সঠিক কারণ, তাই না?
আন্তন বারকোভস্কি

9
@ ইগোর: এটি কোনও দল বা প্রকল্প পরিচালকের পক্ষে কোনও বিধি তৈরি করার কারণ। তবে কোনও ভাষা বা প্রয়োগের জন্য এটি কার্যকর করার কারণ নয়। একটি দল বা সংস্থা সর্বদা শনাক্তকারীদের আরও সীমাবদ্ধ রাখতে বেছে নিতে পারে - তারা উপলব্ধ সেটটি প্রসারিত করতে পছন্দ করতে পারে না। এজন্য মূল সেটটি যতটা সম্ভব বড় হওয়া উচিত।
ডেড এমজি

3
"আপনি কীভাবে চাইনিজ কীবোর্ডে ASCII সনাক্তকারী লিখতে চলেছেন?" - আসলে একটি ইংরেজি কীবোর্ডের মতোই। আপনি একটি খারাপ উদাহরণ বেছে নিয়েছেন; চীনা (এবং জাপানি) সাধারণত ইংরেজী বর্ণ হিসাবে সর্বনামটি বর্ণনা করে প্রবেশ করানো হয়, তবে চীনা / জাপানিদের সাথে মেলে এমন একটি তালিকা প্রদর্শিত হবে যা থেকে ব্যবহারকারী সঠিকটি নির্বাচন করতে পারবেন যদি ডিফল্টটি সঠিক না হয় (আধুনিক সিস্টেমগুলি এটি নিশ্চিত করতে কনটেক্সট বিশ্লেষণ ব্যবহার করে সাধারণত হয়)।
মাইকেল বর্গওয়ার্ট

2

পিইপি 3131 অনুসারে - 2007 -এ নির্ধারিত নন-এসএসআইআই আইডেন্টিফায়ারকে সমর্থন করে , রেশনেলের প্রথম অংশে বলা হয়েছে:

পাইথন কোডটি বিশ্বের অনেক লোক লিখেছেন যারা ইংরেজি ভাষার সাথে পরিচিত নন, এমনকি লাতিন রাইটিং সিস্টেমের সাথেও সুপরিচিত। এই জাতীয় বিকাশকারীরা প্রায়শই তারা যে ধারণার নামটি চান তার একটি (প্রায়শই ভুল) ইংরেজি অনুবাদ নিয়ে আসার পরিবর্তে তাদের মাতৃভাষায় নাম সহ ক্লাস এবং ফাংশন সংজ্ঞায়িত করতে চান। তাদের মাতৃভাষায় সনাক্তকারী ব্যবহার করে কোডের স্পষ্টতা এবং সেই ভাষার স্পিকারদের মধ্যে কোডের রক্ষণাবেক্ষণের উন্নতি হয়।

আমি এখনও অন্য ভাষাগুলি তদন্ত করি নি, তবে তারা সমর্থন যুক্ত করার কারণগুলির মধ্যে এটি হওয়া উচিত।


1

সংকলকটি ইউনিকোড সমর্থন না করলে এটি সত্যই জীবনকে সহজ করে তুলবে (আমাদের মধ্যে কারও জন্য) । ডান থেকে বাম শনাক্তকারীরা ভয়ঙ্কর। সম্মিলিত রোমান বর্ণমালা এবং ডান থেকে বাম ইউনিকোড শনাক্তকারীরা আরও খারাপ।

সমর্থন না করা সম্পর্কে খারাপ বিষয়টি হ'ল নির্দিষ্ট জিইউআই উইজার্ডস কোনও আইটেমের জন্য আপনি যে পাঠ্যটি রেখেছেন তা গ্রহণ করে এবং স্বয়ংক্রিয়ভাবে সেই পাঠ্যটিকে আইটেমটির সনাক্তকারী হিসাবে ব্যবহার করে। সুতরাং তারা আইটেমগুলির ইউনিকোড পাঠ্যটি দিয়ে ঠিক কী করবে? সহজ উত্তর নেই, আমি ভয় পাচ্ছি।

ইউনিকোড ডান থেকে বাম মন্তব্য মজার হতে পারে। উদাহরণস্বরূপ, ভিএস ২০১০-এ, এক্সএমএল মন্তব্যগুলিতে কোডটি আরটিএল হিসাবে সঠিকভাবে প্রদর্শন করবে (সঠিকভাবে) ... তবে আপনি কোডে সনাক্তকারীকে অন্য কোথাও টানতে ইন্টেলিসেন্স ব্যবহার করলে, টুলটিপটি (ভুলভাবে) এলটিআর প্রদর্শন করে। আরও ভাল, সম্ভবত, যদি প্রথম জায়গায় কোনও সমর্থন না থাকত? আবার, সহজ কল নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.