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