দেরীতে উত্তর, তবে আমি মনে করি এটি এই বিষয়টিতে নতুন কিছু যুক্ত করে।
পূর্ববর্তী উত্তরগুলির কোনওটিরই মূল প্রশ্নের উত্তর দেওয়া হয়নি। কেউ কেউ ধ্রুবকের অভাবকে ন্যায়সঙ্গত করার চেষ্টা করেছেন, আবার কেউ কেউ এমন উপায় দেখিয়েছেন যাতে আমরা ধ্রুবকের অভাব মোকাবেলা করতে পারি। কিন্তু কেউ ধ্রুবকটির সুবিধার জন্য একটি বাধ্যতামূলক ন্যায়সঙ্গততা সরবরাহ করেনি, তাই এর অভাব এখনও সঠিকভাবে ব্যাখ্যা করা যায় নি।
একটি ধ্রুবক কার্যকর হবে কারণ এটি নির্দিষ্ট কোড ত্রুটিটিকে লক্ষ্য না করে আটকাবে।
বলুন যে আপনার কাছে "" এর শত শত উল্লেখ সহ একটি বড় কোড বেস রয়েছে। কেউ কোডের মাধ্যমে স্ক্রোল করার সময় এর মধ্যে একটির সংশোধন করে "" এ পরিবর্তন করে। এ জাতীয় পরিবর্তনের ফলে উত্পাদনে কারও নজরে না যাওয়ার উচ্চ সম্ভাবনা থাকবে, যার ফলে এটি এমন কিছু সমস্যার কারণ হতে পারে যার উত্স সনাক্ত করা জটিল।
ওটিওএইচ, EMPTY নামে একটি লাইব্রেরি ধ্রুবক, যদি একই ত্রুটির সাপেক্ষে, EM PTY এর মতো কোনও কিছুর জন্য একটি সংকলক ত্রুটি তৈরি করে।
নিজের ধ্রুবকের সংজ্ঞা দেওয়া আরও ভাল। কেউ ভুল করেও এর সূচনা পরিবর্তন করতে পারে তবে এর বিস্তৃত ব্যবহারের কারণে এই জাতীয় ত্রুটির প্রভাব একক ব্যবহারের ক্ষেত্রে ত্রুটির চেয়ে লক্ষ্য না করা আরও কঠিন হবে।
আক্ষরিক মানগুলির পরিবর্তে ধ্রুবক ব্যবহার করে আপনি যে সাধারণ সুবিধা পান তা এটি of লোকেরা সাধারণত স্বীকৃতি দেয় যে কয়েক ডজন জায়গায় ব্যবহৃত একটি মানের জন্য ধ্রুবক ব্যবহার করা আপনাকে সেই মানটি কেবলমাত্র এক জায়গায় আপডেট করতে দেয়। যে বিষয়টি প্রায়শই স্বীকার করা হয় তা হ'ল এটিও সেই মানটিকে দুর্ঘটনাক্রমে সংশোধন হতে বাধা দেয়, কারণ এই ধরনের পরিবর্তনটি সর্বত্র প্রদর্শিত হবে। সুতরাং, হ্যাঁ, "" EMPTY এর চেয়ে ছোট, তবে EMPTY "" এর চেয়ে বেশি নিরাপদ।
সুতরাং, মূল প্রশ্নে ফিরে এসে আমরা কেবল অনুমান করতে পারি যে ভাষা ডিজাইনাররা প্রায়শই ব্যবহৃত হয় এমন আক্ষরিক মানগুলির জন্য ধ্রুবক সরবরাহ করার এই সুবিধা সম্পর্কে সচেতন ছিলেন না। আশা করি, আমরা একদিন জাভাতে স্ট্রিং ধ্রুবক যুক্ত দেখতে পাব।
outputBlah = ""
এবং তিনি সম্ভবত তার চেয়েsomething == String.Empty
বেশি পছন্দ করেনsomething.Length > 0
(আপনি নাল চেক এড়িয়ে যান))