সাম্প্রতিক প্রকল্পে, আমার বাইট থেকে কিলোবাইট কিবিবাইটে রূপান্তর করা দরকার । কোডটি যথেষ্ট সোজা ছিল:
var kBval = byteVal / 1024;
এটি লেখার পরে, আমি বাকি ফাংশনটি পেয়েছি এবং এগিয়ে চলেছি।
তবে পরে, আমি ভাবতে শুরু করি যে আমি আমার কোডের মধ্যে একটি জাদু নম্বর সবেমাত্র এম্বেড করেছি কিনা ? আমার অংশ বলেছে যে এটি ঠিক ছিল কারণ সংখ্যাটি একটি স্থির নিয়মিত এবং সহজেই বোঝা উচিত। তবে আমার আরেকটি অংশ মনে করে যে এটি একটি সংজ্ঞায়িত ধ্রুবক মতো মোড়ানো থাকলে খুব পরিষ্কার হত BYTES_PER_KBYTE
।
সুতরাং যে নাম্বারগুলি সুপরিচিত ধ্রুবকগুলি সত্যিই সমস্ত magন্দ্রজালিক বা না?
সম্পর্কিত প্রশ্নাবলী:
নম্বরটি কখন যাদুর সংখ্যা? এবং কোডের প্রতিটি সংখ্যা একটি "যাদু নম্বর" হিসাবে বিবেচিত হয়? - অনুরূপ, তবে আমি যা বলছি তার চেয়ে অনেক বিস্তৃত প্রশ্ন। আমার প্রশ্নটি সুপরিচিত ধ্রুবক সংখ্যার উপরে কেন্দ্রীভূত যা এই প্রশ্নগুলিতে সম্বোধন করা হয়নি।
ম্যাজিক নাম্বার দূর করা: "না" বলার সময় কখন? এটি সম্পর্কিতও, তবে ধ্রুবক সংখ্যাটি ম্যাজিক নম্বর কিনা তার বিপরীতে রিফ্যাক্টরিংয়ের দিকে দৃষ্টি নিবদ্ধ করে।
1024
, কারণ অন্যথায় আপনার ডেভ টিম এটি "কিলোবাইট" বা "কিবিবাইট" বলে বিতর্ক করার সমস্ত সময় ব্যয় করবে।
#define
KIBI
1024 MEBI
হিসাবে 1024 * 1024…
ZERO=0, ONE=1, TWO=2
এবং যখন প্রোগ্রামগুলি অন্য ভাষাগুলিতে পোর্ট করা হয় (বা প্রোগ্রামাররা তাদের ভাষা স্যুইচ করার সময় আচরণ পরিবর্তন করে না) আপনিও এটি দেখতে পাবেন এবং আপনাকে প্রার্থনা করতে হবে যেন কেউ কখনও এটিকে পরিবর্তন না করে ONE=2
…
FOUR_HUNDRED_FOUR = 404
। আমি অন্য একটি প্রকল্পে কাজ করেছি যেখানে তারা আক্ষরিক পরিবর্তে ধ্রুব স্ট্রিং ব্যবহার সম্পর্কে জঙ্গি ছিল, তাই তাদের কোডের মতো কয়েক ডজন লাইন ছিল যা দেখতে পাওয়া যায়DATABASE = "database"