উদ্ধৃত পাঠ্যটি হ'ল:
"তবে এই জাতীয় ডিফল্ট মানগুলির উপর নির্ভর করা সাধারণত খারাপ প্রোগ্রামিং স্টাইল হিসাবে বিবেচিত হয়।"
ছদ্মবেশী: "এটি সাধারণত বিবেচিত হয়" প্রায়শই বলার একটি উপায় যা লেখক বিবৃতি উপস্থাপনের জন্য কোনও প্রামাণিক উত্স খুঁজে পাওয়ার চেষ্টা করেন নি।
এই ক্ষেত্রে দৃ as়তা স্পষ্টভাবে প্রশ্নবিদ্ধ। প্রমাণ: নমুনাযুক্ত জাভা স্টাইল গাইডের মধ্যে ৫ টির মধ্যে আপনার ডিফল্ট মানগুলির উপর নির্ভর করা উচিত কিনা সে সম্পর্কে কিছুই বলবেন না:
(দ্রষ্টব্য, স্যাম্পলিংয়ের জন্য আমার পদ্ধতিটি ছিল "জাভা শৈলী গাইড" এর জন্য প্রথম 5 টি স্বতন্ত্র গুগল অনুসন্ধানের হিটগুলি দেখার জন্য Then )
ঠিক আছে. সুতরাং এটি সত্যিই জাভা কোডের পাঠযোগ্যতার সহায়তা করে?
এটি বিতর্কযোগ্য।
একদিকে, একজন শিক্ষানবিশ জাভা প্রোগ্রামার যিনি ডিফল্ট সূচনা সম্পর্কে শিখেননি তারা জিরো বা নালগুলি কোথা থেকে আসছেন তা নিয়ে বিস্মিত হতে পারে। তবে তারা যদি কোনও স্পষ্ট সূচনা খোঁজার জন্য উদ্বিগ্ন হয় এবং এটির একটিও খুঁজে পায় না, তবে এটি ডিফল্ট সূচনা সম্পর্কে জানতে কোনও টিউটোরিয়াল বা বই পড়ার পক্ষে যথেষ্ট। (আপনি আশা করবেন!)
অন্যদিকে, আমরা সাধারণত নবজাতক জাভা প্রোগ্রামারদের উত্পাদন কোড-বেসগুলি বজায় রাখার আশা করি না। অভিজ্ঞ জাভা প্রোগ্রামারের জন্য একটি অপ্রয়োজনীয় সূচনা পাঠযোগ্যতার উন্নতি করে না। এটি (সর্বোত্তম) শব্দ
আমার মতে, ক্ষেত্রের অপ্রয়োজনীয় সূচনা দ্বারা প্রাপ্ত একমাত্র জিনিসটি আপনার কোডের ভবিষ্যতের পাঠকের কাছে সিগন্যাল করা যা আপনি প্রাথমিক মানটি নিয়ে ভাবেন । (@ ঘোস্টগেট এটি প্রকাশ করার সাথে সাথে, ডিফল্ট সূচনাটি অভিপ্রায় যোগাযোগ করে না))
তবে বিপরীতে আমি যদি সেই পাঠক হয়ে থাকি তবে আমি প্রয়োজনীয়ভাবে কোড লেখকের চিন্তাকে বিশ্বাস করব না। সুতরাং এই "সংকেত" এর মানটিও প্রশ্নবিদ্ধ।
নির্ভরযোগ্যতা সম্পর্কে কি?
জাভাতে এটি কোনও পার্থক্য করে না। JLS নির্দিষ্ট করে ডিফল্ট আরম্ভের নেই ক্ষেত্রের জন্য ঘটে থাকে। এবং বিপরীতভাবে, স্থানীয় ভেরিয়েবলগুলির জন্য এটি একটি সংকলন ত্রুটি যা অবশ্যই কোনও ভেরিয়েবল ব্যবহারের চেষ্টা করার চেষ্টা করে যা নিশ্চিতভাবে আরম্ভ করা হয়নি।
সংক্ষেপে, স্পষ্টভাবে আরম্ভ করা হয় না এমন একটি চলকটির রানটাইম আচরণ সম্পূর্ণ অনুমানযোগ্য।
সি বা সি ++ এর মতো ভাষাগুলির বিপরীতে যেখানে ভেরিয়েবলগুলি আরম্ভ করা যায় না, আচরণটি অনির্ধারিত থাকে এবং ক্র্যাশ হতে পারে এবং বিভিন্ন প্ল্যাটফর্মের আচরণে পার্থক্য দেখা দিতে পারে। সর্বদা সুস্পষ্টভাবে ভেরিয়েবল সূচনা করার ক্ষেত্রে এখানে আরও শক্তিশালী।
অভিনয় সম্পর্কে কি?
এটি কোন পার্থক্য করা উচিত। জেআইটি সংকলককে রিডান্ট্যান্ট ইনিশিয়েশন এবং ডিফল্ট ইনিশিয়ালিয়াসকে একই হিসাবে বিবেচনা করতে সক্ষম হওয়া উচিত।
private int count = 0;
এমন কোড যা কিছুই করে না, এবং কোড যা কিছুই করে না তা হুড়োহুড়ি। এটি জাভা.লাং থেকে ক্লাস আমদানি করা, বা একটি ক্লাস ঘোষণার মতোextends Object
।