ความแตกต่างระหว่าง Passive Object และ Active Object ใน UML

...

UML ช่วยให้การแสดงตรรกะภายในของโปรแกรมง่ายขึ้น

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

วัตถุและคลาส

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

วิดีโอประจำวันนี้

ออบเจ็กต์ใน UML

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

วัตถุที่ใช้งาน

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

วัตถุแบบพาสซีฟ

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

หมวดหมู่

ล่าสุด

ประเภทของไดรเวอร์อุปกรณ์

ประเภทของไดรเวอร์อุปกรณ์

เครดิตรูปภาพ: Ryan McVay / รูปภาพ Photodisc / G...

วิธีแก้ไขข้อผิดพลาดรันไทม์ R6025

วิธีแก้ไขข้อผิดพลาดรันไทม์ R6025

เครดิตรูปภาพ: gpointstudio / iStock / Getty Ima...

วิธีรับแท็กบริการของ Dell จากระยะไกล

วิธีรับแท็กบริการของ Dell จากระยะไกล

หากคุณต้องการแท็กบริการของ Dell เช่น ข้อมูลการร...