+3 امتیاز
قبل در کامپیوتر و اینترنت توسط (1.1هزار امتیاز)
برچسب گذاری دوباره قبل توسط

در کلاس دیاگرام های UML برای تعریف رابطه بین دو کلاس، تفاوت بین رابطه Composition و Aggregation را نمی دانم، آیا این دو نوع رابطه می توانند جایگزین یکدیگر استفاده شوند؟

2 پاسخ

+3 امتیاز
قبل توسط (1.2هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ
اگر دو شی از یک کلاس با هم رابطه ماندگار داشته باشند این رابطه به شکل association نمایش داده می شود. مثل رابطه ماشین و مالک آن.

اگر این رابطه ماندگار حالت کل به جز داشته باشد این رابطه به شکل aggregation نمایش داده می شود. مثل رابطه ماشین با چرخ.

اگر رابطه کل به جز به گونه ای باشد که یکی بدون دیگری معنی نداشته باشد (life time dependency داشته باشند) مثل رابطه بدن و دست این رابطه به شکل composition ترسیم می شود.
قبل توسط (1.4هزار امتیاز)
+3
البته دو شرط دیگر نیز لازم است:
1) sharing نداریم (یعنی جز نمی توانند متعلق به بیش از یک کل باشد).
2) جز نباید به طور مستقیم از بیرونِ کل قابل دسترس باشد.
قبل توسط (475 امتیاز)
استفاده از عبارت رابطه ماندگار اشتباه است، زیرا در aggregation رابطه ماندگار نیست و در شرایطی ایجاد می شود و در شرایطی نیز از بین می رود
مثال ماشین و چرخ نیز مثال مناسبی نیست زیرا ماشین بدون چرخ قادر به انجام فانکشن اصلی حرکت نیست،
+1 امتیاز
قبل توسط (7.0هزار امتیاز)
ویرایش شده قبل توسط
رابطه Aggregation برای مواردی استفاده می شود که دو کلاس به هم وابسته نمی باشند مانند کلاس و دانش آموز اما در Composition  یک کلاس بدون دیگر نمی تواند وجود داشته باشد مانند کتاب و کاغذ.

سوالات مشابه

+1 امتیاز
1 پاسخ 626 بازدید
+1 امتیاز
1 پاسخ 833 بازدید
سوال شده 10 سال قبل در کامپیوتر و اینترنت توسط soheil.fi (15 امتیاز)
0 امتیاز
1 پاسخ 779 بازدید
+1 امتیاز
1 پاسخ 2.5هزار بازدید
0 امتیاز
2 پاسخ 1.4هزار بازدید
0 امتیاز
1 پاسخ 1.7هزار بازدید
+1 امتیاز
2 پاسخ 701 بازدید
0 امتیاز
1 پاسخ 2.6هزار بازدید
0 امتیاز
0 پاسخ 568 بازدید
سوال شده 10 سال قبل در کامپیوتر و اینترنت توسط Milad (1.3هزار امتیاز)
...