Connascence
কনসেন্স () হল মাইলির পেজ-জোন্স দ্বারা উদ্ভাবিত একটি সফ্টওয়্যার মানের মেট্রিক যা অবজেক্ট-ওরিয়েন্টেড ডিজাইনে নির্ভরতা সম্পর্কের কারণে সৃষ্ট জটিলতা সম্পর্কে যুক্তির অনুমতি দেয় যেমন কাঠামোগত ডিজাইনের জন্য কাপলিং করেছিল। সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের ক্ষেত্রে, দুটি উপাদান সঙ্গত হয় যদি একটির পরিবর্তনের জন্য অন্যটির পরিবর্তন প্রয়োজন হয় যাতে সিস্টেমের সামগ্রিক সঠিকতা বজায় রাখা যায়। নির্ভরশীলতা সম্পর্কের শ্রেণীবিভাগের অনুমতি দেওয়ার পাশাপাশি, কনসেন্স বিভিন্ন ধরনের নির্ভরতার তুলনা করার জন্য একটি ব্যবস্থাও প্রদান করে। সম্ভাব্য নকশার মধ্যে এই ধরনের তুলনা প্রায়শই সফ্টওয়্যারের গুণমান উন্নত করার উপায়গুলির দিকে ইঙ্গিত করতে পারে। শক্তি সংযোগের একটি রূপকে আরও শক্তিশালী বলে মনে করা হয় যদি এর জন্য সংযোগমূলক উপাদানগুলিতে ক্ষতিপূরণমূলক পরিবর্তনের প্রয়োজন হয়। সম্মতির রূপ যত শক্তিশালী হবে, সম্পর্কের উপাদানগুলি পরিবর্তন করা ততই কঠিন এবং ব্যয়বহুল হবে। ডিগ্রি কনসেন্সের গ্রহণযোগ্যতা তার ঘটনার মাত্রার সাথে সম্পর্কিত। কননেসেন্স সীমিত মাত্রায় গ্রহণযোগ্য হতে পারে কিন্তু বড় মাত্রায় অগ্রহণযোগ্য। উদাহরণস্বরূপ, একটি ফাংশন বা পদ্ধতি যা দুটি আর্গুমেন্ট নেয় তা সাধারণত গ্রহণযোগ্য বলে মনে করা হয়। যাইহোক, ফাংশন বা পদ্ধতির জন্য দশটি আর্গুমেন্ট গ্রহণ করা সাধারণত অগ্রহণযোগ্য। কম মাত্রার উপাদানগুলির তুলনায় উচ্চ মাত্রার সংযোগযুক্ত উপাদানগুলির পরিবর্তনের ক্ষেত্রে আরও বেশি অসুবিধা এবং খরচ হয়। সংযোগ বিশ্লেষণ করার সময় স্থানীয়তা গুরুত্বপূর্ণ। জড়িত উপাদানগুলি যদি ঘনিষ্ঠভাবে সম্পর্কিত হয় তবে সংযোগের আরও শক্তিশালী রূপগুলি গ্রহণযোগ্য। উদাহরণস্বরূপ, অনেক ভাষা ফাংশন বা পদ্ধতি কল করার সময় অবস্থানগত আর্গুমেন্ট ব্যবহার করে। কলার এবং ক্যালির ঘনিষ্ঠতার কারণে অবস্থানের এই সংবেদন গ্রহণযোগ্য। পক্ষগুলির আপেক্ষিক সম্পর্কহীনতার কারণে একটি ওয়েব পরিষেবায় অবস্থানগতভাবে যুক্তি দেওয়া অগ্রহণযোগ্য। একই শক্তি এবং দক্ষতার মাত্রা যত বেশি কঠিন হবে এবং পরিবর্তনের খরচ তত বেশি হবে, জড়িত উপাদানগুলি তত বেশি দূরে থাকবে। প্রকার এটি কিছু ধরনের সংযোগের একটি তালিকা যা প্রায় দুর্বল থেকে শক্তিশালী আকারে সাজানো হয়। স্ট্যাটিক সংযোগগুলি কনসেন্সকে "স্ট্যাটিক" বলা হয় যদি সেগুলি কোডটি দৃশ্যমানভাবে পরীক্ষা করে পাওয়া যায়। কননেসেন্স অফ নেম (সি. ও. এন) নামের কননেসেন্স হল যখন একাধিক উপাদানকে একটি সত্তার নামের সাথে একমত হতে হয়। পদ্ধতির নামগুলি এই ধরনের সংযোগের একটি উদাহরণ-যদি কোনও পদ্ধতির নাম পরিবর্তিত হয়, তবে নতুন নামটি ব্যবহার করার জন্য সেই পদ্ধতির কলারদের অবশ্যই পরিবর্তন করতে হবে। কননেসেন্স অফ টাইপ (সিওটি) কননেসেন্স অফ টাইপ হল যখন একাধিক উপাদানকে একটি সত্তার প্রকারের উপর একমত হতে হয়। স্ট্যাটিক্যালি টাইপ করা ভাষাগুলিতে, মেথড আর্গুমেন্টের ধরণ এই ধরনের সংযোগের একটি উদাহরণ। যদি কোনও পদ্ধতি তার যুক্তির ধরন একটি পূর্ণসংখ্যা থেকে একটি স্ট্রিং-এ পরিবর্তন করে, তবে সেই পদ্ধতির কলারদের অবশ্যই আগের চেয়ে আলাদা যুক্তি পাস করার জন্য পরিবর্তন করতে হবে। অর্থের সংযোগ (সি. ও. এম) বা প্রচলিত ধারণার সংযোগ (সি. ও. সি) অর্থের সংযোগ হল যখন একাধিক উপাদানকে নির্দিষ্ট মূল্যবোধের অর্থের উপর একমত হতে হয়। যথাক্রমে মিথ্যা এবং সত্যের প্রতিনিধিত্ব করার জন্য পূর্ণসংখ্যা 0 এবং 1 ফেরত দেওয়া এই ধরনের সংযোগের একটি উদাহরণ। অবস্থানের সংযোগ (সি. ও. পি) যখন একাধিক উপাদানকে মূল্যের ক্রমানুসারে একমত হতে হয় তখন অবস্থানের সংযোগ হয়। পদ্ধতি কলগুলিতে অবস্থানগত পরামিতিগুলি এই ধরনের সংযোগের একটি উদাহরণ। কলকারী এবং ক্যালি উভয়কেই অবশ্যই প্রথম, দ্বিতীয় ইত্যাদির শব্দার্থের সাথে একমত হতে হবে। প্যারামিটার। অ্যালগরিদমের সংযোগ (সিওএ) অ্যালগরিদমের সংযোগ হল যখন একাধিক উপাদানকে একটি নির্দিষ্ট অ্যালগরিদমের সাথে একমত হতে হয়। বার্তা প্রমাণীকরণ কোডগুলি এই ধরনের সংযোগের একটি উদাহরণ। এক্সচেঞ্জের উভয় পক্ষকে অবশ্যই ঠিক একই হ্যাশিং অ্যালগরিদম প্রয়োগ করতে হবে অন্যথায় প্রমাণীকরণ ব্যর্থ হবে। ডাইনামিক কনসেন্স কনসেন্সকে "ডাইনামিক" বলা হয় যদি সেগুলি কেবল রানটাইমে আবিষ্কার করা যায়। কার্যকর করার ক্ষমতা (সি. ও. ই) কার্যকর করার ক্ষমতা হল যখন একাধিক উপাদান কার্যকর করার ক্রম গুরুত্বপূর্ণ হয়। কনস্যাসেন্স অফ টাইমিং (সি. ও. টি) কনস্যাসেন্স অফ টাইমিং হল যখন একাধিক উপাদান কার্যকর করার সময় গুরুত্বপূর্ণ হয়। মূল্যবোধের সংযোগ (সি. ও. ভি) মূল্যবোধের সংযোগ হল যখন বিভিন্ন মানকে একসঙ্গে পরিবর্তন করতে হয়। পরিচয়ের সংযোগ (সি. ও. আই) পরিচয়ের সংযোগ হল যখন একাধিক উপাদানকে অবশ্যই একই সত্তাকে উল্লেখ করতে হবে। কনসেনসেন্স হ্রাস করা কনসেনসেন্স হ্রাস করা একটি সফ্টওয়্যার সিস্টেমের পরিবর্তনের খরচ হ্রাস করবে। কনসেন্স হ্রাস করার একটি উপায় হল কনসেন্সের শক্তিশালী রূপগুলিকে দুর্বল রূপে রূপান্তরিত করা। উদাহরণস্বরূপ, একটি পদ্ধতি যা বেশ কয়েকটি আর্গুমেন্ট নেয় তা নামযুক্ত পরামিতি ব্যবহার করার জন্য পরিবর্তন করা যেতে পারে। এর ফলে সিওপি থেকে সিওএন-এ রূপান্তরিত হবে। মাত্রা হ্রাস করা এবং জড়িত উপাদানগুলির ক্রমবর্ধমান অবস্থান সংযোগ হ্রাস করার অন্যান্য উপায় গঠন করে। তথ্যসূত্র সফ্টওয়্যার ডিজাইনের গ্র্যান্ড ইউনিফাইড থিওরি, জিম ওয়েইরিক মাইলির পেজ-জোনস, এনক্যাপসুলেশন এবং সংযোগের মাধ্যমে কৌশলগুলির তুলনা, এসিএমের যোগাযোগ, খণ্ড 35, সংখ্যা 9 প্রতিটি প্রোগ্রামারের অবজেক্ট ওরিয়েন্টেড ডিজাইন সম্পর্কে কী জানা উচিত, মাইলির পেজ-জোনস, ডরসেট হাউস পাবলিশিং, ইউএমএল-এ অবজেক্ট-ওরিয়েন্টেড ডিজাইনের মৌলিক বিষয়, মাইলির পেজ-জোনস, অ্যাডিসন-ওয়েসলি পাব কো; ম্যানুয়েল রিভেরো; আগস্ট 9,2018; কনসেন্সঃ জাভা সফ্টওয়্যার আর্কিটেকচারে অবজেক্ট-ওরিয়েন্টেড ডিজাইনের দিকে নজর