ความแตกต่างระหว่างการรวมและองค์ประกอบ (พร้อมตาราง)

สารบัญ:

Anonim

ในภาษาโปรแกรม การออกแบบระบบปฏิบัติการ และระบบการจัดการฐานข้อมูล อ็อบเจ็กต์และคลาสต่างๆ จะถูกเก็บไว้ด้วยความเชื่อมโยงระหว่างอ็อบเจ็กต์ ทั้ง Aggregation และ Composition ใช้เพื่ออธิบายความสัมพันธ์ระหว่างอ็อบเจ็กต์สำหรับการจัดเก็บและเรียกชุดข้อมูลอย่างมีประสิทธิภาพมากขึ้น โดยลดความซับซ้อนของเวลาและพื้นที่

การรวมเทียบกับองค์ประกอบ

ความแตกต่างหลัก ระหว่างการรวมและองค์ประกอบก็คือ การรวมเข้าด้วยกัน อธิบายความสัมพันธ์ระหว่างวัตถุที่พึ่งพาซึ่งกันและกันสำหรับการสร้าง ในขณะที่ Composition อธิบายอ็อบเจกต์ที่มีการพึ่งพาซึ่งกันและกันโดยตรงสำหรับการสร้างและหน้าที่ของพวกมัน ในกรณีนี้ วัตถุหนึ่งมีความเป็นเจ้าของเหนืออีกวัตถุหนึ่ง

การรวมเป็นการเชื่อมโยงระหว่างชุดข้อมูลสองชุด เช่น คลาสหรืออ็อบเจ็กต์ โดยที่อ็อบเจ็กต์ที่เกี่ยวข้องไม่มีการพึ่งพาซึ่งกันและกันโดยตรงสำหรับการสร้างหรือการทำงาน ดังนั้นการยักย้ายถ่ายเทของวัตถุหนึ่งไม่เปลี่ยนแปลงสถานะของวัตถุอื่น การเชื่อมโยงนี้อนุญาตให้ทำการเปลี่ยนแปลงได้โดยไม่สูญเสีย

องค์ประกอบเป็นการรวมประเภทพิเศษและอธิบายความสัมพันธ์ระหว่างชุดข้อมูลสองชุด โดยที่อ็อบเจ็กต์หรือคลาสที่เกี่ยวข้องจะขึ้นอยู่กับแต่ละชุดโดยตรงสำหรับการสร้าง การจัดเก็บ ฟังก์ชัน และอื่นๆ ดังนั้น การแก้ไขใด ๆ กับชุดข้อมูลใดชุดหนึ่งจะส่งผลโดยตรงต่อชุดข้อมูลอื่น

ตารางเปรียบเทียบระหว่างการรวมและองค์ประกอบ

พารามิเตอร์ของการเปรียบเทียบ

การรวม

องค์ประกอบ

คำนิยาม การรวมเป็นประเภทของการเชื่อมโยงโดยไม่ต้องพึ่งพาวัตถุซึ่งกันและกัน องค์ประกอบคือการเชื่อมโยงกับการพึ่งพาวัตถุซึ่งกันและกัน
ความสัมพันธ์ มีความสัมพันธ์ทางอ้อมระหว่างชุดข้อมูล ความสัมพันธ์แม่และลูกระหว่างชุดข้อมูล
สัญลักษณ์ UML การรวมจะแสดงด้วยเพชรเปล่า องค์ประกอบแสดงด้วยเพชรที่เต็มไป
การดัดแปลง การดัดแปลงของวัตถุหนึ่งไม่เปลี่ยนแปลงอีกวัตถุหนึ่ง การปรับเปลี่ยนของวัตถุหนึ่งเปลี่ยนแปลงข้อมูลบนอีกวัตถุหนึ่ง
ความเข้มแข็งของสมาคม เป็นสมาคมที่อ่อนแอ เป็นสมาคมที่เข้มแข็ง

การรวมคืออะไร?

การรวมเป็นประเภทของการเชื่อมโยงหรือความสัมพันธ์ระหว่างชุดข้อมูลสองชุด เช่น คลาส อ็อบเจ็กต์ และอื่นๆ การเชื่อมโยงถูกสร้างขึ้นเพื่อจัดกลุ่มชุดข้อมูลที่มีความคล้ายคลึงกัน

ในการเชื่อมโยงประเภทนี้ อ็อบเจ็กต์หรือคลาสไม่มีความสัมพันธ์โดยตรง ชุดข้อมูลมีความสัมพันธ์แบบ "Has-A"

นี่หมายความว่าชุดข้อมูลไม่ได้พึ่งพาซึ่งกันและกันสำหรับการสร้าง การจัดเก็บ หรือฟังก์ชันหรือการดำเนินการใดๆ นี่คือประโยชน์หลักของการใช้รูปแบบการเชื่อมโยงนี้สำหรับการจัดเก็บชุดข้อมูลที่คล้ายคลึงกัน

เนื่องจากอ็อบเจ็กต์และคลาสไม่มีการพึ่งพาซึ่งกันและกันโดยตรง การแก้ไขหรือเปลี่ยนแปลงใดๆ ที่ทำกับอ็อบเจ็กต์หรือคลาสตัวใดตัวหนึ่งจะไม่เปลี่ยนแปลงหรือแก้ไขเนื้อหาของข้อมูลที่จัดเก็บไว้ในชุดข้อมูลอื่น

ทำให้สามารถทำลายชุดข้อมูลชุดใดชุดหนึ่งโดยไม่จำเป็นต้องกังวลเกี่ยวกับข้อมูลที่จัดเก็บไว้ในชุดข้อมูลอื่น

เนื่องจากคุณสมบัตินี้ของความสัมพันธ์แบบรวม จึงมีการใช้งานส่วนใหญ่ในสภาพแวดล้อมการทดสอบที่ต้องแก้ไขข้อมูลอย่างต่อเนื่อง เนื่องจากความสัมพันธ์ "Has-A" ระหว่างออบเจ็กต์ที่รวมเข้าด้วยกัน ข้อมูลจะไม่ถูกทำลายในชุดข้อมูลอื่น

สำหรับการแสดง UML สัญลักษณ์เพชรที่ว่างเปล่าจะใช้เพื่อระบุความสัมพันธ์ของการรวม

องค์ประกอบคืออะไร?

องค์ประกอบเป็นประเภทของความสัมพันธ์ระหว่างชุดข้อมูลและส่วนใหญ่จะใช้ในระบบการจัดการฐานข้อมูลและในการออกแบบระบบปฏิบัติการ ชุดข้อมูลอาจรวมถึงอ็อบเจ็กต์ คลาส และอื่นๆ

องค์ประกอบสร้างความสัมพันธ์ระหว่างชุดข้อมูลที่มีความตรงมากกว่าการรวม ดังนั้นอ็อบเจ็กต์และคลาสจึงเกี่ยวข้องกันโดยตรงระหว่างการสร้างชุดข้อมูล

เนื่องจากอ็อบเจ็กต์และคลาสเกี่ยวข้องกันโดยตรง จึงขึ้นอยู่กับการสร้าง การจัดเก็บ และการดำเนินการหรือฟังก์ชันใดๆ

บางครั้งความสัมพันธ์จะแสดงเป็นความสัมพันธ์แบบ "พ่อแม่ลูก" หรือความสัมพันธ์ "เจ้าของ" โดยที่ชุดข้อมูลหนึ่งเป็นเจ้าของชุดข้อมูลอื่น

ข้อเสียเปรียบหลักของการใช้ความสัมพันธ์ประเภทนี้คือเมื่อวัตถุหรือคลาสตัวใดตัวหนึ่งถูกเปลี่ยนแปลงหรือแก้ไข การเปลี่ยนแปลงจะสะท้อนให้เห็นในชุดข้อมูลอื่น และข้อมูลที่อยู่ในชุดข้อมูลก็จะถูกแก้ไขด้วยเช่นกัน

สิ่งนี้จะต้องถูกบันทึกไว้ในขณะที่ทำงานกับชุดข้อมูลเช่นว่าชุดข้อมูลใดชุดหนึ่งถูกทำลายหรือถูกลบ ชุดข้อมูลอื่นที่เกี่ยวข้องกับชุดข้อมูลนั้นจะถูกทำลายด้วย

แต่ข้อมูลจะถูกเก็บไว้อย่างปลอดภัยมากขึ้นเมื่อใช้ความสัมพันธ์ขององค์ประกอบระหว่างอ็อบเจ็กต์หรือคลาส สำหรับการแสดง UML ของการเชื่อมโยงประเภทองค์ประกอบ จะใช้เพชรที่เติม

ความแตกต่างหลักระหว่างการรวมและองค์ประกอบ

บทสรุป

ชุดข้อมูลจำเป็นสำหรับการจัดเก็บข้อมูลอย่างมีประสิทธิภาพมากขึ้นเมื่อมีความคล้ายคลึงกันระหว่างข้อมูลที่เกี่ยวข้อง ดังนั้นในขณะที่สร้างระบบการจัดการฐานข้อมูล ความสัมพันธ์ของชุดข้อมูลประเภทต่างๆ ถูกสร้างขึ้นเพื่อสะท้อนถึงความสัมพันธ์ระหว่างชุดข้อมูล

ทั้งการรวมและองค์ประกอบเป็นประเภทของการเชื่อมโยงที่สะท้อนถึงความสัมพันธ์ระหว่างข้อมูลที่เกี่ยวข้อง

การรวมไม่ใช่ความสัมพันธ์โดยตรงและข้อมูลที่เกี่ยวข้องกับการเชื่อมโยงประเภทนี้ไม่ได้ขึ้นอยู่กับการสร้างและหน้าที่ซึ่งกันและกัน

องค์ประกอบเป็นความสัมพันธ์ประเภทโดยตรงและความสัมพันธ์ระหว่างข้อมูลที่เกี่ยวข้องบางครั้งแสดงเป็นตัวแทน "ผู้ปกครองและเด็ก"

ดังนั้น องค์ประกอบจึงเป็นการเชื่อมโยงที่แข็งแกร่งกว่าการรวม แต่การพึ่งพาชุดข้อมูลจะต้องถูกบันทึกไว้ในขณะที่ทำงานกับการเชื่อมโยงประเภทนี้

อ้างอิง

ความแตกต่างระหว่างการรวมและองค์ประกอบ (พร้อมตาราง)