Үндсэн ялгаа – Нэгтгэл ба найрлага
Объект хандалтат програмчлал (OOP) нь програм хангамжийн хөгжүүлэлтийн нийтлэг парадигм юм. Объект нь ангийн жишээ юм. Нэг дор объект үүсгэх боломжгүй. Объект үүсгэхийн тулд зураг төсөл эсвэл тайлбар байх ёстой. Тэр зураг төслийг анги гэж нэрлэдэг. Анги нь шинж чанар, аргуудыг агуулдаг. Объектуудыг класс ашиглан бүтээдэг. Анги болон объект нь бодит ертөнц дэх төлөвлөгөө, байшинтай төстэй. Зөв төлөвлөлтгүйгээр байшин барих боломжгүй. Үүний нэгэн адил анги нь объект үүсгэхэд ашиглагддаг. Объект нь бусад объектуудтай хамтран ажилладаг. Хоёр ба түүнээс дээш объектын харилцааг илэрхийлдэг холбоосыг "холбоо" гэж нэрлэдэг. Агрегат ба бүрэлдэхүүн нь холбоодын төрөл юм. Тэд ангиудын хоорондын харилцааг тодорхойлдог. Энэ нийтлэлд нэгтгэх ба найрлагын ялгааг авч үзэх болно. Агрегат ба найрлагын гол ялгаа нь нэгтгэх нь "байгаа" харилцааг дүрсэлсэн хоёр объектын хоорондын холбоо бөгөөд бүтэц нь өмчлөлийг илэрхийлдэг нэгтгэлийн илүү тодорхой төрөл юм.
Нэгтгэл гэж юу вэ?
Хоёр объектын хоорондын хамаарлыг Нэгдсэн Загварын Хэл (UML) дээр шугам зурж харуулна. Холбоос нь холбоо юм. UML нь системийн дүрслэлийг авахад тусалдаг. Энэ нь ердийн програмчлалын хэлээс ялгаатай. Нийгэмлэг нь объектын олон талт байдлыг мөн тодорхойлдог. Эдгээр нь нэгийг харьцах, нэгээс олон, олон-олон юм. А ангиллын нэг объект нь В ангиллын нэг объекттой холбоотой байвал энэ нь нэгийг харьцах харилцаа юм. Жишээ нь ном бичиж буй зохиолч юм. Энэ жишээнд нэг зохиолч ном бичиж байна.
А ангиллын нэг объект В ангиллын олон объекттой холбоотой байвал энэ нь нэгээс олон хамаарал болно. Жишээлбэл, нэг хэлтэс олон ажилтантай байж болно. А ангиллын объект нь В ангиллын олон объекттой, В ангиллын объект нь А ангиллын олон объекттой холбоотой байвал энэ нь олон-олон холбоо болно. Нэг жишээ нь, нэг ажилтан олон төсөл дээр ажиллаж, төсөл нь олон ажилтантай байж болно.
Нэгтгэх гэдэг нь объектуудын хоорондын харилцааг тодорхойлдог төрлийн холбоо юм. Нэгтгэх нь "байгаа" харилцааг тодорхойлдог. Харилцааг дүрсэлсэн зарим жишээ нь оюутан оюутны үнэмлэхтэй, тээврийн хэрэгсэл хөдөлгүүртэй байна. Мөн харилцааг их хэмжээгээр өргөжүүлэх боломжтой. Зарим жишээ нь банк "олон" данстай, нэг анги "олон" оюутантай. Үүнийг доорх жишээн дээр тайлбарлаж болно.
Зураг 01: Нэгтгэх
Дээрх жишээнээс харахад анги нь нэг оюутан эсвэл олон сурагчаас бүрддэг. Multiplicity нь объектын тоог зааж өгөхөд бас ашиглагддаг. Энэ нь нэг ангид олон сурагчтай болохыг тодорхойлсон. Алмазны тэмдэг нь UML дахь нэгтгэлийг илэрхийлдэг. Оюутны объектууд нь ангийн объект дээр тулгуурладаггүй. Хэрэв ангийн объект устгагдсан бол энэ нь оюутны объектод нөлөөлөхгүй. Эдгээр объектууд байсаар байх болно.
Бүтэц гэж юу вэ?
Бүтэц нь нэгтгэх илүү өвөрмөц хэлбэр юм. Энэ нь өмчлөлийг тодорхойлдог. Үүнийг доорх жишээн дээр тайлбарлаж болно.
Зураг 02: Зохиол
Дээрхээс үзвэл номын объект нь хуудасны объект эсвэл хуудаснаас бүрдэнэ. Multiplicity нь объектын тоог зааж өгөхөд бас ашиглагддаг. Энэ нь нэг ангид олон сурагчтай болохыг тодорхойлсон. Тодруулсан алмазын тэмдэг нь UML-д найрлагыг илэрхийлдэг. Ном нь хуудас эсвэл олон хуудастай тул нэгтгэсэн зүйл боловч илүү тодорхой бичсэн байдаг. Хэрэв номын объект устгагдсан бол хуудасны объектууд мөн устах болно. Номын объектгүйгээр хуудасны объектууд оршин тогтнох боломжгүй. Тиймээс бүтэц нь өмчлөлийг илэрхийлдэг нэгтгэлийн илүү тодорхой хэлбэр юм.
Нэгдүүлэх болон найруулгын хооронд ямар төстэй зүйл байдаг вэ?
- Хоёуланг нь Объект хандалтат програмчлалд ашигладаг.
- Хоёуланг нь нэгдсэн загварчлалын хэлэнд (UML) ашигладаг бөгөөд системийн талаар визуал ойлголттой болно.
Нэгдүүлэх болон найрлага хоёрын ялгаа юу вэ?
Нэгтгэл ба Зохиол |
|
Нэгтгэх гэдэг нь "байгаа" харилцааг тодорхойлсон хоёр объектын холбоо юм. | Бүтэц нь өмчлөлийг илэрхийлдэг нэгтгэлийн хамгийн өвөрмөц төрөл юм. |
UML тэмдэг | |
Нэгтгэлийг алмаазаар тэмдэглэнэ. | Бүтэцийг тодруулсан алмаазаар тэмдэглэсэн. |
Функциональ | |
Хэрэв нэгтгэсэн тохиолдолд эзэмшиж буй объект устгагдсан тохиолдолд энэ нь агуулж буй объектод нөлөөлөхгүй. | Бүтэц дотор, хэрэв эзэмшигч объект устгагдсан бол энэ нь агуулж буй объектод нөлөөлнө. |
Хураангуй – Нэгтгэх ба Зохиол
Объект хандалтат програмчлал нь програм хангамж хөгжүүлэх гол парадигм юм. OOP-д системийг объект ашиглан загварчилдаг. Эдгээр объектууд нь тусдаа байдаггүй. Объектууд бусад объектуудтай хамтран ажилладаг. Объектуудын хоорондын харилцаа холбоог холбоо гэж нэрлэдэг. Агрегат ба бүрэлдэхүүн нь холбоодын төрөл юм. Нэгтгэх ба найрлагын хоорондох ялгаа нь нэгтгэх нь "байгаа" харилцааг тодорхойлдог хоёр объектын холбоо бөгөөд бүтэц нь өмчлөлийг илэрхийлдэг нэгтгэлийн илүү тодорхой төрөл юм. Нэгтгэх болон найрлага нь системийн үйл ажиллагааг ойлгоход тусалдаг.
Агрегация ба Зохиолын PDF хувилбарыг татаж авах
Та энэ нийтлэлийн PDF хувилбарыг татаж аваад офлайн зорилгоор ашиглах боломжтой. PDF хувилбарыг эндээс татаж авна уу. Нэгтгэл ба найрлагын ялгаа