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