সমষ্টি বনাম রচনা [বন্ধ]


90

ইউএমএলে রচনা এবং সংহতকরণের মধ্যে পার্থক্য বুঝতে আমার বেশ কষ্ট হয়েছে। কেউ দয়া করে আমাকে তাদের মধ্যে ভাল তুলনা এবং বিপরীতে প্রস্তাব দিতে পারেন? আমি কোডে এবং / অথবা একটি সংক্ষিপ্ত সফ্টওয়্যার / কোড উদাহরণ দেখতে তাদের মধ্যে পার্থক্য সনাক্ত করতে শিখতেও পছন্দ করব।

সম্পাদনা করুন: আমি যে কারণে জিজ্ঞাসা করি তার একটি অংশ হ'ল বিপরীতে ডকুমেন্টেশন ক্রিয়াকলাপ যা আমরা কাজ করে যাচ্ছি। আমরা কোডটি লিখেছি, তবে আমাদের ফিরে যেতে হবে এবং কোডটির জন্য ক্লাস ডায়াগ্রাম তৈরি করতে হবে। আমরা কেবল সমিতিগুলি সঠিকভাবে ক্যাপচার করতে চাই।



দয়া করে এখানে একটি কোড-ভিত্তিক উদাহরণ পরীক্ষা করুন: স্ট্যাকওভারফ্লো
আলমার ক্যাম্পোস

ইউএমএল 2.5 এই পার্থক্যটি পরিষ্কার করেছে। পি তে বাক্সটি দেখুন। 110. সুতরাং আমি এটি পুনরায় খুলতে ভোট দিচ্ছি।
কিওয়ার্টি_সো

না, ইউএমএল ২.২ রচনার সংজ্ঞাটি স্পষ্ট করেনি, বরং এটি সম্পর্কে দ্ব্যর্থহীন থেকেছে, যেহেতু তারা এও বলে যে "যৌগিক বস্তুটি মুছে ফেলার আগে একটি যৌগিক বস্তু থেকে একটি অংশ অবজেক্টটি অপসারণ করা যেতে পারে এবং এভাবে অংশ হিসাবে মুছে ফেলা যায় না not সম্মিলিত বস্তু। " নীচে আমার উত্তরটি দেখুন ( স্ট্যাকওভারফ্লো.com/ প্রশ্নগুলি / 7373৪৪৯/২ ) যেখানে আমি রচনাটির অর্থ পরিষ্কার করার চেষ্টা করেছি। দয়া করে আমার উত্তরটি উঁচু করে দেখান যে এসওতে, সঠিক উত্তরটি শেষ পর্যন্ত জেতে :-) [বা সমস্ত ভুল উত্তরকে কমিয়ে দাও]
গার্ড ওয়াগনার

উত্তর:


91

সমষ্টি এবং রচনার মধ্যে পার্থক্য প্রসঙ্গে নির্ভর করে।

অন্য উত্তরে উল্লিখিত গাড়ির উদাহরণটি ধরুন - হ্যাঁ, এটি সত্য যে কোনও গাড়ি নির্গমন "নিজেরাই" দাঁড়াতে পারে তাই এটি কোনও গাড়ির সাথে রচনায় নাও থাকতে পারে - তবে এটি প্রয়োগের উপর নির্ভর করে। আপনি যদি এমন একটি অ্যাপ্লিকেশন তৈরি করেন যা প্রকৃতপক্ষে একা গাড়ি নির্গমন (একটি গাড়ী শপ ম্যানেজমেন্ট অ্যাপ্লিকেশন?) এর সাথে মোকাবেলা করতে হয় তবে একত্রিকরণ আপনার পছন্দ হবে। তবে এটি যদি একটি সহজ রেসিং গেম হয় এবং গাড়ী এক্সস্টাস্ট কেবল একটি গাড়ির অংশ হিসাবে কাজ করে - ভাল, রচনাটি বেশ সূক্ষ্ম হবে।

দাবা বোর্ড? একই সমস্যা. একটি দাবা টুকরা কেবল কিছু নির্দিষ্ট অ্যাপ্লিকেশনগুলিতে দাবা বোর্ড ব্যতীত বিদ্যমান নয়। অন্যদের মধ্যে (খেলনা প্রস্তুতকারকের মতো), দাবা টুকরো অবশ্যই দাবা বোর্ডে তৈরি করা যায় না।

আপনার পছন্দসই প্রোগ্রামিং ভাষার সংমিশ্রণ / সংহতকরণ মানচিত্রের চেষ্টা করার সময় বিষয়গুলি আরও খারাপ হয়। কিছু ভাষায়, পার্থক্যটি লক্ষ্য করা সহজ হতে পারে ("রেফারেন্স দ্বারা" বনাম "" মান অনুসারে ", যখন জিনিসগুলি সহজ হয়) তবে অন্যগুলিতে অস্তিত্ব থাকতে পারে না।

এবং পরামর্শের একটি শেষ শব্দ? এই ইস্যুতে খুব বেশি সময় নষ্ট করবেন না। এটা মূল্য নয়। পার্থক্যটি অনুশীলনে খুব কমই কার্যকর (যদিও আপনার কাছে পুরোপুরি পরিষ্কার "রচনা" রয়েছে, আপনি এখনও প্রযুক্তিগত কারণে এটি একত্রিতকরণ হিসাবে প্রয়োগ করতে চাইতে পারেন - উদাহরণস্বরূপ, ক্যাশে করা)।


4
আমি বললাম দাবা স্কোয়ারের চেয়ে দাবা বর্গ, তবে সমস্ত বৈধ পয়েন্ট।
ডেভিড এম

4
আমি অবশ্যই "এটি এর পক্ষে উপযুক্ত নয়" মানসিকতা নিয়ে ইস্যুটি নিয়েছি। আপনি যদি কোনও বস্তুর "মালিকানাধীন" এবং এর আজীবন দায়ী হওয়ার মাধ্যমে যদি না ভাবেন, তবে আপনি অবজেক্ট সিআরইউডি সম্পর্কিত বিশেষ ক্রেইপ কোড পাবেন, বিশেষত ক্লিনআপের সাথে, নলের পয়েন্টারগুলি চারপাশে উড়ন্ত হিসাবে অবজেক্টের স্তরক্রমগুলি খারাপ অবস্থায় পড়ে থাকবে in
ক্রিস ক্যাসেল

9
হ্যাঁ, এই ইস্যুতে আপনার খুব বেশি সময় নষ্ট করা উচিত নয়: ইউএমএল একটি ওওএ / ওওডি ভাষা; সমষ্টি / রচনা সাধারণত ওওপিপি অবধি স্থিতিশীল সিদ্ধান্ত। আপনি যদি আপনার ইউএমএল মডেলগুলিতে খুব বেশি বিস্তারিত রাখার চেষ্টা করেন তবে আপনি বিশ্লেষণ পক্ষাঘাতের ঝুঁকি নিতে পারেন।
চিম্প

13
"এতে অতিরিক্ত সময় নষ্ট করবেন না" এর জন্য +1। এটাই আমার শুনতে দরকার ছিল!
রনি 15

8
"এতে খুব বেশি সময় নষ্ট করবেন না" সাক্ষাত্কারকারীরা কেন এটি বোঝেন না?
26 এ টাইটোজিও

97

একটি চলতি নিয়ম হিসাবে: এখানে চিত্র বর্ণনা লিখুন

class Person {
    private Heart heart;
    private List<Hand> hands;
}

class City {
    private List<Tree> trees;
    private List<Car> cars
}

রচনাতে (ব্যক্তি, হার্ট, হাত), ব্যক্তি ধ্বংস হওয়ার সাথে সাথে "সাব অবজেক্টস" (হার্ট, হ্যান্ড) ধ্বংস হয়ে যাবে।

সমষ্টিতে (সিটি, ট্রি, গাড়ি) "সাব অবজেক্টস" (ট্রি, কার) নষ্ট হবে না যখন সিটি নষ্ট হয়ে যাবে।

নীচের লাইনটি হ'ল, রচনাটি পারস্পরিক অস্তিত্বের উপর জোর দেয় এবং সমষ্টিগতভাবে, এই সম্পত্তিটির প্রয়োজন হয় না।


4
পারস্পরিক অস্তিত্ব, ভাল একটি বি-)
jxramos

আপনার প্রচেষ্টা প্রশংসা। একটি খুব ভাল ব্যাখ্যা এবং যে কোনও সাধারণ মানুষ এটি বুঝতে পারে।
রবীন্দ্রন কন্নিয়া

সবচেয়ে সহজ এবং সর্বোত্তম ব্যাখ্যা আমি জুড়ে এসেছি।
আকাশ রাঘব

সেরা ব্যাখ্যা :)
জিয়াবিলি

ইউএমএল 2.5 এই পার্থক্যটি পরিষ্কার করেছে। পি তে বাক্সটি দেখুন। 110. সুতরাং আপনার উত্তর এখন ঠিক ভুল,
qwerty_so

52

সংমিশ্রণ এবং একত্রিতকরণ এক প্রকারের সমিতি। এগুলি খুব ঘনিষ্ঠভাবে সম্পর্কিত এবং প্রোগ্রামিংয়ের ক্ষেত্রে উভয়ের মধ্যে খুব বেশি পার্থক্য দেখা যায় না। আমি জাভা কোড উদাহরণ দ্বারা এই দুটি মধ্যে পার্থক্য ব্যাখ্যা করার চেষ্টা করব

সমষ্টি : বস্তুটি অন্যের বাইরে বিদ্যমান, বাইরে তৈরি করা হয়, সুতরাং এটি নির্মাণকারীর কাছে একটি আর্গুমেন্ট হিসাবে (উদাহরণস্বরূপ) পাস করা হয়। প্রাক্তন: লোক - গাড়ী গাড়িটি অন্য প্রসঙ্গে তৈরি করা হয় এবং তারপরে ব্যক্তির সম্পত্তি হয়ে যায়।

// code example for Aggregation:
// reference existing HttpListener and RequestProcessor
public class WebServer {
  private HttpListener listener;
  private RequestProcessor processor;
  public WebServer(HttpListener listener, RequestProcessor processor) {
    this.listener = listener;
    this.processor = processor;
  }
}

রচনা : অবজেক্টটি কেবল অন্যটির অংশ হিসাবে অন্যটির অভ্যন্তরে উপলব্ধি করে। প্রাক্তন: মানুষ - হৃদয়। আপনি একটি হৃদয় তৈরি করেন না এবং তারপরে এটি কোনও ব্যক্তির কাছে পৌঁছে দেন। পরিবর্তে, হৃদয় তৈরি করা হয় যখন মানুষের সৃষ্টি হয়।

// code example for composition:
// create own HttpListener and RequestProcessor
public class WebServer {
  private HttpListener listener;
  private RequestProcessor processor;
  public WebServer() {
    this.listener = new HttpListener(80);
    this.processor = new RequestProcessor(“/www/root”);
  }
}

সমষ্টি এবং রচনাগুলির মধ্যে পার্থক্যটির একটি উদাহরণ দিয়ে এখানে ব্যাখ্যা করা হয়েছে


4
এখন পর্যন্ত সেরা উত্তরগুলির মধ্যে একটি। ঝরঝরে :)
রোহিত সিং 4

6
কখন জাতির অন্য উপাদানগুলির সাথে (রচনা) বা বিনা (সমষ্টি) উপস্থিত থাকতে পারে তা প্রদর্শনের সর্বোত্তম জাভা কোড উদাহরণ।
মিশা ডোবি ডোবারজাস্কি

দয়া করে, আমি জানতে চাই যে আমাদের কি কম্পোজিশনের জন্য চূড়ান্ত ব্যবহার করা উচিত?
আউটরেগাস এক

36

রচনাটি বোঝায় যে শিশু বস্তুগুলি পিতামাতার সাথে একটি আজীবন ভাগ করে। সমষ্টি হয় না। উদাহরণস্বরূপ, দাবা স্কোয়ারগুলি দাবা স্কোয়ারগুলি নিয়ে গঠিত - দাবা স্কোয়ারগুলি বোর্ড ছাড়া সত্যই বিদ্যমান থাকে না। যাইহোক, একটি গাড়ী অংশগুলির একটি সমষ্টি - একটি গাড়ি এক্সস্টোস্ট এখনও একটি গাড়ী নিষ্কাশন এটি যদি সেই সময়ে গাড়ির অংশ না হয়।


18

আমি যে উদাহরণটি শিখেছি তা হ'ল হাতের আঙ্গুলগুলি। আপনার হাতটি আঙ্গুল দিয়ে তৈরি। এটা তাদের মালিক। হাত মরে গেলে আঙ্গুল মরে যায়। আপনি আঙ্গুলগুলি "সমষ্টি" করতে পারবেন না। আপনি কেবল অতিরিক্ত আঙ্গুলগুলি ধরতে পারবেন না এবং নিজের হাত থেকে ইচ্ছে করে এটিকে সংযুক্ত করে আলাদা করতে পারবেন।

নকশার দৃষ্টিকোণ থেকে এখানে মানটি প্রায়শই অন্য পোস্টার হিসাবে প্রকাশিত অবজেক্টের সাথে সম্পর্কিত হয়। বলুন আপনার একটি গ্রাহক আছে এবং তাদের একটি অ্যাকাউন্ট আছে। এই অ্যাকাউন্টটি গ্রাহকের একটি "রচিত" অবজেক্ট (কমপক্ষে, বেশিরভাগ ক্ষেত্রে আমি ভাবতে পারি)। আপনি যদি গ্রাহককে মুছে ফেলেন তবে অ্যাকাউন্টটির নিজস্ব কোনও মূল্য নেই তাই এটিও মুছে ফেলা হবে। বিপরীতটি প্রায়শই বস্তু তৈরির ক্ষেত্রে সত্য। যেহেতু কোনও অ্যাকাউন্ট কেবল গ্রাহকের প্রসঙ্গেই অর্থযুক্ত, তাই আপনার অ্যাকাউন্ট তৈরির বিষয়টি গ্রাহক তৈরির অংশ হিসাবে ঘটেছিল (বা আপনি যদি এটি আলস্যভাবে করেন তবে এটি কিছু গ্রাহকের লেনদেনের অংশ হতে পারে)।

এটি অন্যান্য বস্তুগুলির কী কী (রচনা) বনাম বনাম যেগুলি কেবল অন্য সামগ্রীর রেফারেন্স (সমষ্টিগত) এর বিষয়ে চিন্তা করতে এটি নকশায় কার্যকর। এটি নির্ধারণে অবজেক্ট তৈরি / ক্লিনআপ / আপডেটের জন্য কোথায় দায়বদ্ধ তা সহায়তা করতে পারে।

যতদূর কোড হিসাবে এটি প্রায়শই বলা শক্ত। কোডের বেশিরভাগ জিনিসই কোনও অবজেক্ট রেফারেন্স হয় তাই রেফারেন্স করা অবজেক্টটি (মালিকানাধীন) বা একত্রিত কিনা তা সুস্পষ্ট নাও হতে পারে।


15

এটা আশ্চর্যজনক কত বিভ্রান্তি মধ্যে পার্থক্য সম্পর্কে বিদ্যমান এর পার্ট পুরো - সমিতি ধারণা অ্যাগ্রিগেশন এবং রচনা । মূল সমস্যাটি বিস্তৃত ভুল বোঝাবুঝি (এমনকি বিশেষজ্ঞ সফটওয়্যার বিকাশকারীদের মধ্যে এবং ইউএমএলের লেখকদের মধ্যেও) যে রচনাটির ধারণাটি পুরো এবং এর অংশগুলির মধ্যে একটি জীবনচক্র নির্ভরতা বোঝায় যে অংশগুলি পুরো ব্যতীত অস্তিত্ব থাকতে পারে না। তবে এই দৃষ্টিভঙ্গি এ সত্যটি উপেক্ষা করে যে অংশবিহীন অংশগুলির সাথে অংশ-সম্পূর্ণ-অ্যাসোসিয়েশনেরও ঘটনা রয়েছে যেখানে অংশগুলি আলাদা করা যায় এবং পুরোটির ধ্বংস থেকে বাঁচতে পারে।

ইউএমএল স্পেসিফিকেশন ডকুমেন্টে, "রচনা" শব্দের সংজ্ঞাটি সর্বদা ভাগ না করার যোগ্য অংশগুলিকে বোঝায়, তবে "সংমিশ্রণ" এর সংজ্ঞা বর্ণনাকারী বৈশিষ্ট্য কী এবং কেবল একটি optionচ্ছিক বৈশিষ্ট্য কী তা পরিষ্কার হয়ে যায়নি। এমনকি নতুন সংস্করণে (২০১৫ হিসাবে) ইউএমএল ২.৫, "রচনা" শব্দের সংজ্ঞাটি উন্নত করার চেষ্টা করার পরেও এটি এখনও দ্ব্যর্থহীন রয়ে গেছে এবং অ-সংস্থার সাথে পার্ট-অল-অ্যাসোসিয়েশনগুলি কীভাবে মডেল করা যায় সে সম্পর্কে কোনও দিকনির্দেশনা দেয় না- ভাগ করার যোগ্য অংশগুলি যেখানে অংশগুলি আলাদা করা যায় এবং ধ্বংস থেকে বাঁচতে পারে, পুরো অংশটি বিচ্ছিন্নভাবে করা যায় না যেখানে অংশগুলি আলাদা করা যায় না এবং পুরোটির সাথে একসাথে ধ্বংস হয়ে যায়। তারা বলে

যদি কোনও যৌগিক অবজেক্ট মুছে ফেলা হয় তবে এর অংশ অংশের সমস্ত উদাহরণ যা বস্তুগুলি এটি দিয়ে মুছে ফেলা হয়।

তবে একই সাথে তারাও বলে

যৌগিক অবজেক্টটি মুছে ফেলার আগে কোনও পার্ট অবজেক্টটি কোনও যৌগিক বস্তু থেকে সরানো যেতে পারে, এবং এইভাবে সম্মিলিত বস্তুর অংশ হিসাবে মুছে ফেলা যায় না।

এই বিভ্রান্তিটি ইউএমএল সংজ্ঞাটির একটি অসম্পূর্ণতার দিকে ইঙ্গিত করে, যা উপাদান এবং সংমিশ্রণের মধ্যে জীবনচক্র নির্ভরতার জন্য অ্যাকাউন্ট করে না। সুতরাং << অবিভাজ্য >> রচনাগুলির জন্য একটি ইউএমএল স্টেরিওটাইপ প্রবর্তন করে কীভাবে ইউএমএল সংজ্ঞাটি বাড়ানো যেতে পারে তা বোঝা গুরুত্বপূর্ণ যেখানে উপাদানগুলি তাদের সংমিশ্রণ থেকে পৃথক করা যায় না এবং এইভাবে যখনই তাদের সংমিশ্রণটি ধ্বংস হয় তখন ধ্বংস করতে হয়।

1) রচনা

হিসাবে মার্টিন জালিয়া ব্যাখ্যা করেছেন , রচনা বৈশিষ্ট্য জন্য প্রধান সমস্যাটি যে, "একটি বস্তু শুধুমাত্র একটি রচনা সম্পর্কের সামিল হতে পারবেন" হয়। এটি জির্ট বেলেকেন্সের দ্বারা দুর্দান্ত ব্লগ পোস্ট ইউএমএল রচনা বনাম সমষ্টি বনাম অ্যাসোসিয়েশনেও ব্যাখ্যা করা হয়েছে। কোনও সংমিশ্রণের এই সংজ্ঞাযুক্ত বৈশিষ্ট্য ছাড়াও ( একচেটিয়া , বা অংশবিহীন , অংশবিশেষ থাকতে), একটি সংমিশ্রণটিও যৌগিক এবং এর উপাদানগুলির মধ্যে একটি জীবন-চক্র নির্ভরতা নিয়ে আসতে পারে। আসলে, এই ধরনের নির্ভরতা দুটি ধরণের রয়েছে:

  1. যখনই কোনও উপাদান সর্বদা একটি সংমিশ্রণের সাথে সংযুক্ত থাকতে হবে , বা অন্য কথায়, যখন এটি একটি বাধ্যতামূলক সংমিশ্রণ রয়েছে , যেমন রচনা লাইনের যৌগিক অংশে "ঠিক এক" গুণ দ্বারা প্রকাশিত হয়, তবে এটি অবশ্যই পুনরায় ব্যবহার করা উচিত (বা পুনরায় সংযুক্ত) অন্য সংমিশ্রণে বা ধ্বংস হয়ে যায়, যখন এর বর্তমান যৌগিক ধ্বংস হয়। এটি নীচের চিত্রে প্রদর্শিত Personএবং এর মধ্যে রচনা দ্বারা উদাহরণস্বরূপ Heart। একটি হৃদয় হয় ধ্বংস হয় বা অন্য ব্যক্তির প্রতিস্থাপন করা হয়, যখন তার মালিক মারা যায়।
  2. যখনই কোনও উপাদানটিকে তার যৌগিক থেকে বিচ্ছিন্ন করা যায় না , বা অন্য কথায়, যখন এটি অবিচ্ছেদ্য হয় , তখন এবং কেবল তখনই, উপাদানটি ধ্বংস করতে হয়, যখন তার যৌগিকটি ধ্বংস হয়। অবিচ্ছেদ্য অংশগুলির সাথে এই জাতীয় রচনাটির একটি উদাহরণ Personএবং এর মধ্যে রচনা Brain

এখানে চিত্র বর্ণনা লিখুন

সংক্ষেপে, জীবনচক্র নির্ভরতা কেবল রচনার নির্দিষ্ট ক্ষেত্রে প্রযোজ্য, তবে সাধারণভাবে নয়, সেহেতু তারা কোনও সংজ্ঞাযুক্ত বৈশিষ্ট্য নয়।

ইউএমএল স্পেসে বলা হয়েছে: "যৌগিক উদাহরণটি মুছার আগে কোনও অংশ যৌগিক উদাহরণ থেকে অপসারণ করা যেতে পারে, এবং এইভাবে সংমিশ্রণ উদাহরণের অংশ হিসাবে মোছা হবে না।" ক Car- Engineরচনার উদাহরণে , নিম্নলিখিত চিত্রটিতে যেমন দেখানো হয়েছে, স্পষ্টতই এটি দেখা যায় যে গাড়িটি ধ্বংস হওয়ার আগে ইঞ্জিনটিকে গাড়ি থেকে আলাদা করা যায়, সেই ক্ষেত্রে ইঞ্জিনটি ধ্বংস হয় না এবং পুনরায় ব্যবহার করা যায়। এটি রচনা লাইনের সম্মিলিত দিকের শূন্য বা এক গুণ দ্বারা বোঝানো হয়েছে ।

এখানে চিত্র বর্ণনা লিখুন

সংখ্যাধিক্য যৌগিক পাশে একটি রচনা সমিতির শেষ পারেন 1 বা 0..1 হয়, আসলে যদি উপাদান একটি আবশ্যিক যৌগিক আছে তার উপর নির্ভর করে না (একটি যৌগিক সংযুক্ত করা আবশ্যক) বা। যদি উপাদানগুলি অবিচ্ছেদ্য হয় তবে এর দ্বারা বোঝা যায় যে তাদের একটি বাধ্যতামূলক যৌগ রয়েছে।

2) সমষ্টি

অংশীকরণ হ'ল পার্ট-পুরো-সম্পর্কের উদ্দেশ্যযুক্ত অর্থের সাথে সংযুক্তির আরও একটি বিশেষ রূপ, যেখানে একটি অংশের অংশগুলি অন্য স্তরের সাথে ভাগ করা যায়। উদাহরণস্বরূপ, আমরা ক্লাসগুলির মধ্যে একটি সমষ্টি মডেল করতে পারি DegreeProgramএবং Courseনিম্নলিখিত চিত্রটিতে যেমন দেখায় যেহেতু একটি কোর্স একটি ডিগ্রি প্রোগ্রামের অংশ এবং একটি কোর্স দুটি বা ততোধিক ডিগ্রি প্রোগ্রামের মধ্যে ভাগ করা যায় (যেমন ইঞ্জিনিয়ারিং ডিগ্রি একটি সি ভাগ করতে পারে) কম্পিউটার সায়েন্স ডিগ্রি সহ প্রোগ্রামিং কোর্স)।

এখানে চিত্র বর্ণনা লিখুন

যাইহোক, ভাগ করার যোগ্য অংশগুলির সাথে একত্রিতকরণের ধারণাটি খুব বেশি বোঝায় না, তাই এটি বাস্তবায়নের উপর কোনও প্রভাব নেই এবং অনেক বিকাশকারী তাদের শ্রেণীর চিত্রগুলিতে সাদা হীরাটি ব্যবহার না করা পছন্দ করেন, তবে কেবল একটি সরল সংস্থার মডেল করেন পরিবর্তে. ইউএমএল স্পেস বলে: "ভাগ করা সমষ্টিগুলির যথার্থ শব্দার্থবিজ্ঞান প্রয়োগের ক্ষেত্র এবং মডেলারের দ্বারা পরিবর্তিত হয়"।

সংখ্যাধিক্য পুরো দিকে একত্রিত সমিতির শেষ হতে পারে যে কোন সংখ্যার (*) একটি অংশ অন্তর্গত পারে, অথবা কারণ ভাগ মধ্যে wholes যে কোন সংখ্যার।


4
রচনাটি জীবনচক্রের সাথে কঠোরভাবে সম্পর্কিত নয়, তবে বেশিরভাগ বাস্তব বিশ্বের সমস্যাগুলিতে জীবনচক্রটি আপনি রচনা বা সমষ্টিগত কিনা তার প্রাথমিক প্রেরণা। আমি আমার উত্তরে হেজ করে বলেছিলাম যে লাইফসাইকেলটি সর্বদা সম্পর্কিত হওয়ার চেয়ে "প্রায়শই" সম্পর্কিত is এটি লক্ষ্য করা ভাল যে জীবনচক্রের প্রয়োজন নেই, তবে উল্লেখ করা উচিত যে একটি "প্রধান সমস্যা" এবং ভুল (দুর্দান্ত সাহসী ফন্টে) আমাকে অপ্রয়োজনীয় হিসাবে আঘাত করে এবং ব্যবহারিক ব্যবহারের বিবেচনার দিক নির্দেশনা থেকে বিরত রাখে।
ক্রিস ক্যাসেল

আমি দৃ strongly়ভাবে একমত না। লাইফসাইকেল বিবেচ্য বিষয়গুলি "আপনি রচনা বা সমষ্টিগত কিনা তা প্রাথমিক প্রেরণা" হতে পারে না, যেহেতু আপনারা তাদের অনেকগুলি অংশে অংশীদারিত্বের সত্যতা (সমষ্টি বা সংমিশ্রণ) উপস্থাপন করেন তবে স্বতঃস্ফূর্তভাবে সমিতির অনেক ক্ষেত্রে তাদের উপস্থিত থাকে। যখনই কোনও অ্যাসোসিয়েশনের একটি আবশ্যক রেফারেন্স সম্পত্তির সাথে মিল রেখে 0 এর চেয়েও কম বাউনের গুণকের সাথে শেষ হয়, আপনি একটি জীবনচক্র নির্ভরতা পাবেন।
গার্ড ওয়াগনার

8

কোড পদে, রচনাটি সাধারণত পরামর্শ দেয় যে ধারণকৃত উপাদানটি * উপাদানটির দৃষ্টান্ত তৈরির জন্য দায়ী এবং এতে থাকা অবজেক্টটি এর সাথে একমাত্র দীর্ঘকালীন রেফারেন্স ধারণ করে। সুতরাং যদি পিতামাত্ত বস্তুটি ডি-রেফারেন্সযুক্ত হয়ে যায় এবং আবর্জনা সংগ্রহ করে, তবে শিশুটিও তা ঘটবে।

সুতরাং এই কোড ...

Class Order
   private Collection<LineItem> items;
   ...
   void addOrderLine(Item sku, int quantity){
         items.add(new LineItem(sku, quantity));
   }
}

পরামর্শ দেয় যে লাইনআইটেমটি অর্ডারের একটি উপাদান - লাইন আইটেমগুলির সমন্বিত ক্রমের বাইরে কোনও অস্তিত্ব নেই। তবে আইটেম অবজেক্টগুলি ক্রমে নির্মিত হয় না - প্রয়োজন অনুসারে এগুলি পাস করা হয় এবং দোকানের কোনও আদেশ না থাকলেও অস্তিত্ব অব্যাহত থাকে। সুতরাং তারা উপাদানগুলির চেয়ে বরং যুক্ত।

* এনবি কনটেইনারটি উপাদানটিকে প্রশমিত করার জন্য দায়ী , তবে এটি সম্ভবত নতুনকে কল্পনা করতে পারে না ... () নিজেই - এটি জাভা হওয়ায় সাধারণত প্রথমে কোনও ফ্যাক্টরি বা দু'জন যেতে হয়!


0

অন্যান্য উত্তরে প্রদত্ত ধারণাগত চিত্রগুলি দরকারী তবে আমি অন্য একটি বিষয় ভাগ করতে চাই যা আমি সহায়ক পেয়েছি।

কোড জেনারেশনের জন্য, সোর্স কোড বা রিলেশনাল ডাটাবেসের জন্য ডিডিএল-এর জন্য আমি ইউএমএল থেকে কিছু মাইলেজ পেয়েছি। সেখানে, আমি আমার কোডটিতে একটি টেবিলের নন-ননযোগ্য বিদেশী কী (ডাটাবেসে) এবং একটি নন-নলাবল "প্যারেন্ট" (এবং প্রায়শই "চূড়ান্ত") অবজেক্টটি নির্দেশ করে এটির জন্য রচনাটি ব্যবহার করেছি। আমি সমষ্টিটি ব্যবহার করি যেখানে আমি কোনও অনাথ "হিসাবে উপস্থিত হতে সক্ষম, কোনও পিতা-মাতার সাথে সংযুক্ত না হয়ে, বা কোনও ভিন্ন পিতা-মাতার অবজেক্টের দ্বারা" গৃহীত "হতে সক্ষম হওয়ার জন্য একটি রেকর্ড বা অবজেক্টকে লক্ষ্য করি।

অন্য কথায়, আমি মডেলটির কোড লেখার সময় প্রয়োজন হতে পারে এমন আরও কিছু বাধা বোঝাতে সংক্ষেপণ হিসাবে সংক্ষেপণটি ব্যবহার করেছি।


0

আমি যে উদাহরণটি পছন্দ করি: সংমিশ্রণ: জল একটি পুকুরের অংশ । (পুকুরের জল একটি রচনা হয়।) সমষ্টি: পুকুরের হয়েছে হাঁস আর মাছ (পুকুরের দলা হাঁস আর মাছ)

আপনি দেখতে পাচ্ছেন যে আমি "পার্ট-অফ" এবং "হয়েছে" বোল্ড করেছি, কারণ এই 2 টি বাক্যাংশ সাধারণত শ্রেণীর মধ্যে কী ধরনের সংযোগ বিদ্যমান তা নির্দেশ করতে পারে।

কিন্তু অন্যদের দ্বারা নির্দেশিত হিসাবে, অনেক সময় সংযোগটি কোনও রচনা বা সমষ্টিগত কিনা তা প্রয়োগের উপর নির্ভর করে।


কিন্তু অংশবিশেষ এবং কিছু সময় বিভ্রান্ত হয়। উদাহরণস্বরূপ, একজন ব্যক্তি শ্রেণীর নাম "রয়েছে", সুতরাং ব্যক্তির নামের সাথে সামগ্রিক সম্পর্ক রয়েছে বলে দেখায়। আসলে এটি কম্পোজিশন রিলেশন। কেন? যখন ব্যক্তি অবজেক্টটি বিনষ্ট হয়, তেমনি নামও রাখা উচিত। এবং "নামটি ব্যক্তির একটি অংশ" শব্দটি স্বাভাবিক বলে মনে হয় না।
আসিফ শাহজাদ

0

সামগ্রিক সম্পর্ক এবং যৌগিক সম্পর্কের মধ্যে পার্থক্য করা এতটা কঠিন, তবে আমি কয়েকটি উদাহরণ নিতে যাচ্ছি, আমাদের একটি ঘর এবং কক্ষ রয়েছে, এখানে আমাদের একটি সম্মিলিত সম্পর্ক রয়েছে, ঘরটি ঘরের একটি অংশ এবং ঘর জীবন শুরু হয়েছিল গৃহ জীবনের সাথে এবং উইল শেষের সাথে যখন ঘরের জীবন শেষ হয়, ঘরটি ঘরের একটি অংশ, আমরা দেশ এবং মূলধন, বই এবং পৃষ্ঠাগুলির মতো রচনা সম্পর্কে কথা বলি talk সামগ্রিক সম্পর্কের উদাহরণের জন্য, দল এবং খেলোয়াড়দের নিয়ে যান, দল ছাড়া খেলোয়াড় থাকতে পারে, এবং দলটি খেলোয়াড়দের একটি দল, এবং খেলোয়াড় জীবন টিম লাইফের আগে শুরু হতে পারে, যদি আমরা প্রোগ্রামিং সম্পর্কে কথা বলি, আমরা খেলোয়াড় তৈরি করতে পারি এবং আমরা দল তৈরি করব, তবে সংমিশ্রণ নংয়ের জন্য, আমরা ঘরের ভিতরে ঘর তৈরি করি। রচনা ----> সংমিশ্রণ | রচনা। সমষ্টি -------> গোষ্ঠী | উপাদান


0

শর্তাবলী সেট করা যাক। সমষ্টিটি ইউএমএল স্ট্যান্ডার্ডের একটি রূপক এবং এর অর্থ দুটি রচনা এবং অংশীদারি সমষ্টি, কেবল নামকরণযুক্ত ভাগ করা । প্রায়শই এটির নামকরণ হয়েছে ভুলভাবে "সমষ্টি"। এটি BAD, কারণ রচনাটিও একটি সমষ্টি। যেমনটি আমি বুঝতে পেরেছি, আপনার অর্থ "ভাগ করা"।

ইউএমএল স্ট্যান্ডার্ড থেকে আরও:

সংমিশ্রণ - ইঙ্গিত দেয় যে সম্পত্তিটি সুসংগতভাবে সংযুক্ত, অর্থাত, সংমোচিত বস্তুর রচিত বস্তুর (অংশ) অস্তিত্ব এবং সংরক্ষণের জন্য দায়বদ্ধ।

সুতরাং, ইউনিভার্সিটি টু ক্যাথেড্রস অ্যাসোসিয়েশন একটি সংমিশ্রণ, কারণ বিশ্ববিদ্যালয় থেকে বেরিয়ে ক্যাথেড্রার অস্তিত্ব নেই (আইএমএইচও)

ভাগ করা সমষ্টিটির যথার্থ শব্দার্থবিজ্ঞান অ্যাপ্লিকেশন অঞ্চল এবং মডেলারের দ্বারা পরিবর্তিত হয়।

অর্থাত্, যদি আপনি কেবল আপনার বা অন্য কারও কিছু নীতি অনুসরণ করেন তবে অন্যান্য সমস্ত সমিতিগুলি ভাগ করা সমষ্টি হিসাবে আঁকা যেতে পারে। এখানেও দেখুন ।


0

কিডনি, যকৃত, মস্তিষ্কের মতো মানব দেহের অঙ্গগুলি বিবেচনা করুন। আমরা যদি এখানে রচনা এবং সমষ্টি সম্পর্কিত ধারণাটি মানচিত্র করার চেষ্টা করি তবে এটি এমন হবে:

কিডনি ও যকৃতের মতো শরীরের অঙ্গ প্রতিস্থাপনের আগে, দেহের এই দুটি অংশ মানব দেহের সাথে সংমিশ্রণে ছিল এবং মানব দেহের সাথে বিচ্ছিন্নতা থাকতে পারে না।

কিন্তু শরীরের অঙ্গ প্রতিস্থাপনের পরে এগুলি অন্য একটি মানবদেহে প্রতিস্থাপন করা যেতে পারে, সুতরাং এই অংশগুলি মানব দেহের সাথে একত্রিত হয় কারণ মানবদেহের সাথে বিচ্ছিন্ন হয়ে তাদের অস্তিত্ব এখনই সম্ভব is

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.