de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

نمودار شیء UML: ثبت یک تصویر از سیستم

این نمودار شیء UML وظیفه منحصر به فرد و حیاتی‌ای در میان ابزارهای مدلسازی ساختاری ایفا می‌کند: دیدی ملموس و سطح نمونه‌ای از یک سیستم ارائه می‌دهد. در حالی که نمودار کلاس (طرح اولیه) پتانسیل انتزاعی را نشان می‌دهد—انواع شی‌هایی که می‌توانند وجود داشته باشند و روابط پتانسیلی آنها—نمودار شیء، شی‌های واقعی را که واقعاًدر یک لحظه خاص وجود دارند، شامل مقادیر داده فعلی و ارتباطات برقرار شده آنها.

نمودار کلاس را مانند دستور پخت کیک در نظر بگیرید که مواد و مراحل را توضیح می‌دهد. در مقابل، نمودار شیء عکسی از یک کیک خاص است که امروز پخته شده و اندازه، رنگ کریم و موقعیت واقعی آن روی میز را نشان می‌دهد.

اطلاعات بیشتر در مورد نمودار کلاس در مقابل نمودار شی—زمانی که از نمونه‌ها استفاده کنیم .

Object diagram of University Course Enrollment System

رابطه با نمودارهای کلاس

نمودار شی به طور اساسی نسخه سطح نمونه‌ای یک نمودار کلاس. هر عنصر در نمودار شی باید مطابق ساختار تعریف شده توسط کلاس متناظر در نمودار کلاس باشد:

  1. نمونه شی:یک شی در نمودار نمونه‌ای از یک کلاس خاص است.

  2. ارتباط:ارتباط بین دو شی، نمونه‌ای از ارتباط خاصی است که بین کلاس‌های متناظر آنها تعریف شده است.

The Relationship to Class Diagrams

این دید ملموس برای اعتبارسنجی طراحی انتزاعی و نظری بسیار حیاتی است. اگر نمودار کلاس به درستی طراحی نشده باشد، اشکال معمولاً بلافاصله هنگام تلاش برای مدلسازی یک سناریوی واقعی با استفاده از نمودار شی، آشکار می‌شود.

عناصر کلیدی نمودار شی

1. نمونه شی

نمونه شی عنصر اصلی است و به صورت مستطیل نمایش داده می‌شود. نمادگذاری به شکل خاصی انجام می‌شود تا به طور واضح از کلاس متمایز شود:

نام_شی : نام_کلاس
  • نام_شی (اختیاری): نام خاصی که به نمونه داده می‌شود (مثلاً “می‌آردر, کاربرA). نام زیرخط‌دار است.

  • نام_کلاس: نام کلاسی که از آن شیء ساخته شده است.

  • جداکننده دو نقطه: نقطه ویرگول (:) نام نمونه را از نام کلاس جدا می‌کند.

  • زیرخط‌دار کردن: نام نمونه و نام کلاس هر دوباید زیرخط‌دار باشند برای نشان دادن اینکه این نمایش یک نمونه شی است، نه تعریف کلاس. (مثلاً کاربرB : کاربر یا : آردر)

2. مقادیر ویژگی‌ها

برخلاف نمودار کلاس، که نام‌هاینام‌هاویژگی‌ها را نشان می‌دهد، نمودار شی نشان‌دهندهمقادیر فعلیاین ویژگی‌ها برای نمونه خاص است. این ویژگی نمودار را به یک «تصویر لحظه‌ای» تبدیل می‌کند.

ویژگی‌ها در قسمت دوم مستطیل با استفاده از سینتکس زیر فهرست می‌شوند:

نام_ویژگی = مقدار
  • مثال: یک شی با نامماکار : ویکل ممکن است دارای مقدار ویژگی باشد رنگ = "قرمز" و سرعت = 65.

3. لینک‌ها

یک لینک نمونه‌ای از یک ارتباط (رابطه) که در نمودار کلاس تعریف شده است. لینک‌ها به صورت خطوط ساده و پررنگ بین دو مستطیل شیء رسم می‌شوند.

لینک‌ها نشان می‌دهند که یک نمونه خاص شیء در حال حاضر به یک نمونه خاص دیگر متصل است یا به آن ارجاع دارد. محدودیت‌های چندگانگی (مثلاً $1..*$ یا $0..1$) با وجود این لینک‌ها در تصویر لحظه‌ای تأیید می‌شوند.

  • مثال: اگر نمودار کلاس ارتباطی بین مشتری و سفارش، نمودار شیء یک لینک مشخص بین نمونه cust1 : مشتری و نمونه order52 : سفارش.

چرا و چه زمانی از نمودار شی استفاده کنیم

نمودارهای شی معمولاً در مراحل تحلیل و طراحی برای دو هدف اصلی استفاده می‌شوند:

  1. تصویرسازی و تأیید سناریو: این ابزارهای عالی‌ای برای تصویرسازی پیکربندی‌های پیچیده یا موارد لبه هستند. با چیدمان شی‌های خاص و مقادیر آنها، تیم می‌تواند مطمئن شود که طراحی به درستی سناریوها را پردازش می‌کند، مانند یک مشتری با چند آدرس یا یک سبد خرید که در حال حاضر خالی است.

  2. نمایش ساختارهای پیچیده:هنگامی که ساختار کلاس از مفاهیم پیشرفته‌ای مانند تجمیع یا ترکیب استفاده می‌کند، می‌توان از یک نمودار شیء برای نشان دادن یک مثال واقعی از سلسله مراتب و وابستگی‌های زمانی نتیجه‌گیری شده استفاده کرد.

  3. آزمون و اشکال‌زدایی:با تعریف یک تصویر لحظه‌ای، می‌توانند به عنوان حالت مورد انتظار سیستم قبل یا بعد از اجرای یک مورد آزمون خاص عمل کنند و ارتباط واضحی از داده‌های پیچیده آزمون فراهم کنند.

نمودار شیء ساختارهای کلاسی مفهومی را به سناریوهای واقعی و قابل بررسی تبدیل می‌کند و به عنوان ابزاری بی‌قیمت برای اطمینان از صحت طراحی و ارائه واضح مثال‌های پیاده‌سازی عمل می‌کند.

می‌خواهید بیشتر درباره UML و بینش بصری هوش مصنوعی بدانید؟ به ما مراجعه کنیدمرکز منابع UML.

This post is also available in Deutsch, English, Español, Français, Bahasa Indonesia, 日本語, Polski, Portuguese, Ру́сский, Việt Nam, 简体中文 and 繁體中文.