Unified Modeling Language (UML) หรือที่รู้จักในชื่อ Unified Modeling Language หรือ Standard Modeling Language เป็นมาตรฐาน OMG ที่เริ่มต้นในปี 1997 เป็นภาษากราฟิกที่รองรับการสร้างแบบจำลองและการพัฒนาระบบซอฟต์แวร์ โดยจัดเตรียมแบบจำลองสำหรับการพัฒนาซอฟต์แวร์และการแสดงภาพทุกขั้นตอน การสนับสนุน ตั้งแต่การวิเคราะห์ความต้องการไปจนถึงข้อกำหนด ไปจนถึงการก่อสร้างและการกำหนดค่า การพัฒนาวิธีการวิเคราะห์และการออกแบบเชิงวัตถุ (OOA&D, OOAD) มาถึงจุดไคลแม็กซ์ตั้งแต่ปลายทศวรรษ 1980 ถึงกลางทศวรรษ 1990 และ UML เป็นผลผลิตจากจุดไคลแม็กซ์นี้ มันไม่เพียงแต่รวมวิธีการเป็นตัวแทนของ Booch, Rumbaugh และ Jacobson เท่านั้น แต่ยังพัฒนาเพิ่มเติมและในที่สุดก็รวมพวกมันให้เป็นภาษาการสร้างแบบจำลองมาตรฐานที่เป็นที่ยอมรับของสาธารณชน
ในคลาสไดอะแกรม UML ความสัมพันธ์ที่ใช้กันทั่วไปหลายประการ ได้แก่: ลักษณะทั่วไป, การรับรู้, การเชื่อมโยง, การรวมกลุ่ม, องค์ประกอบ, การพึ่งพา ต่อไป บทความนี้จะให้คำอธิบายโดยละเอียดทีละรายการ โดยมีรายละเอียดดังนี้:
1. ลักษณะทั่วไป
[ความสัมพันธ์ทั่วไป]: เป็นความสัมพันธ์แบบสืบทอดที่แสดงถึงความสัมพันธ์ทั่วไปและพิเศษ โดยระบุว่าคลาสย่อยเชี่ยวชาญคุณลักษณะและพฤติกรรมทั้งหมดของคลาสแม่อย่างไร ตัวอย่างเช่น เสือเป็นสัตว์ชนิดหนึ่งที่มีลักษณะเฉพาะของเสือ ตลอดจนความเหมือนกันของสัตว์ต่างๆ
[ลูกศรชี้]: เส้นทึบที่มีลูกศรสามเหลี่ยม ลูกศรชี้ไปที่คลาสหลัก
2. การตระหนักรู้
[ความสัมพันธ์ในการนำไปใช้]: มันเป็นความสัมพันธ์ระหว่างคลาสและอินเทอร์เฟซ ซึ่งบ่งชี้ว่าคลาสนั้นเป็นการนำคุณลักษณะและพฤติกรรมทั้งหมดของอินเทอร์เฟซไปใช้
[ลูกศรชี้]: เส้นประที่มีลูกศรสามเหลี่ยม ลูกศรชี้ไปที่อินเทอร์เฟซ
3. สมาคม
[ความสัมพันธ์แบบสมาคม]: เป็นความสัมพันธ์แบบความเป็นเจ้าของซึ่งทำให้ชั้นเรียนหนึ่งรู้คุณลักษณะและวิธีการของอีกชั้นเรียนหนึ่ง เช่น ครูกับนักเรียน สามีและภรรยา
การเชื่อมโยงอาจเป็นแบบสองทิศทางหรือทิศทางเดียวก็ได้ การเชื่อมโยงแบบสองทิศทางสามารถมีลูกศรสองตัวหรือไม่มีลูกศรเลย และการเชื่อมโยงแบบทิศทางเดียวจะมีลูกศรเพียงอันเดียว
[การสะท้อนโค้ด]: ตัวแปรสมาชิก
[ลูกศรและชี้]: เส้นทึบพร้อมลูกศรธรรมดาชี้ไปที่เจ้าของ
ในภาพด้านบน ครูและนักเรียนมีความสัมพันธ์กันแบบสองทิศทาง ครูอาจมีนักเรียนหลายคน และนักเรียนอาจมีครูหลายคนก็ได้ อย่างไรก็ตาม ความสัมพันธ์ระหว่างนักเรียนกับหลักสูตรเป็นความสัมพันธ์แบบทางเดียว นักเรียนอาจเรียนหลายหลักสูตรเป็นสิ่งที่เป็นนามธรรมและไม่ได้เป็นเจ้าของนักเรียน
ภาพด้านบนแสดงความสัมพันธ์ของตัวเอง:
4. การรวมกลุ่ม
[ความสัมพันธ์แบบรวมกลุ่ม]: เป็นความสัมพันธ์ระหว่างส่วนทั้งหมดและส่วนหนึ่ง และส่วนหนึ่งสามารถดำรงอยู่ได้โดยแยกจากส่วนทั้งหมด ตัวอย่างเช่น รถยนต์และยางรถยนต์มีความสัมพันธ์ระหว่างส่วนทั้งหมดกับส่วนหนึ่ง และยางก็ยังคงอยู่ได้ โดยไม่มีรถ
ความสัมพันธ์แบบรวมกลุ่มเป็นความสัมพันธ์แบบสมาคมและเป็นความสัมพันธ์แบบเชื่อมโยงแบบแน่นหนา ไม่สามารถแยกความแตกต่างแบบสมาคมและแบบรวมกลุ่มได้ และต้องตรวจสอบความสัมพันธ์เชิงตรรกะเฉพาะ
[การสะท้อนโค้ด]: ตัวแปรสมาชิก
[ลูกศรและชี้]: เส้นทึบที่มีรูปสี่เหลี่ยมขนมเปียกปูนกลวง รูปสี่เหลี่ยมขนมเปียกปูนชี้ไปที่ทั้งหมด
5. องค์ประกอบ
[ความสัมพันธ์แบบรวม]: เป็นความสัมพันธ์ระหว่างส่วนทั้งหมดกับส่วนต่างๆ แต่ส่วนต่างๆ ไม่สามารถดำรงอยู่ได้โดยอิสระจากส่วนทั้งหมด ตัวอย่างเช่น ความสัมพันธ์ระหว่างบริษัทกับแผนกคือความสัมพันธ์ระหว่างส่วนทั้งหมดกับส่วนหนึ่งโดยไม่มีบริษัท ก็คงไม่มีแผนก.
ความสัมพันธ์แบบรวมเป็นความสัมพันธ์แบบสมาคมและเป็นความสัมพันธ์ที่เข้มแข็งกว่าความสัมพันธ์แบบรวมกลุ่ม โดยกำหนดให้วัตถุที่เป็นตัวแทนทั้งหมดในความสัมพันธ์แบบรวมกลุ่มทั่วไปต้องรับผิดชอบต่อวงจรชีวิตของวัตถุที่เป็นตัวแทนของส่วนนั้น
[การสะท้อนโค้ด]: ตัวแปรสมาชิก
[ลูกศรและการชี้]: เส้นทึบที่มีรูปสี่เหลี่ยมขนมเปียกปูนทึบ รูปสี่เหลี่ยมขนมเปียกปูนชี้ไปที่ทั้งหมด
6. การพึ่งพาอาศัยกัน
[การพึ่งพา]: เป็นความสัมพันธ์ในการใช้งาน กล่าวคือ การใช้งานคลาสหนึ่งต้องได้รับความช่วยเหลือจากอีกคลาสหนึ่ง ดังนั้นอย่าพยายามใช้การพึ่งพาอาศัยกันแบบสองทาง
[ประสิทธิภาพโค้ด]: ตัวแปรท้องถิ่น พารามิเตอร์วิธีการ หรือการเรียกวิธีการคงที่
[ลูกศรและการชี้]: เส้นประที่มีลูกศรชี้ไปที่ผู้ใช้
ลำดับความแข็งแกร่งของความสัมพันธ์ต่างๆ:
ลักษณะทั่วไป = การนำไปปฏิบัติ > องค์ประกอบ > การรวมกลุ่ม > การเชื่อมโยง > การพึ่งพา
แผนภาพ UML ต่อไปนี้แสดงความสัมพันธ์ของไดอะแกรมคลาสต่างๆ ให้ชัดเจนยิ่งขึ้น:
ข้างต้นเป็นเรื่องราวทั้งหมดของบทความนี้ ฉันหวังว่าคุณจะชอบมัน