الگوی طراحی Observer در c++‎ چیست ؟

  • الگوی Observer یک الگوی رفتاریست .
  • الگوی Observer برای بروز رسانی و همگام سازی چندین شی با یک تغییر است مانند مفهوم Model-View-Controller (MVC)
  • مفید برای پیاده سازی سناریوهای رویداد محور و مدیریت رویداد
  • دو کلاس درگیر هستند .
  • Observable کلاس که تغییر واقعی در آن ایجاد می‌شود و از کلاسهایی که باید از تغییرات مطلع شوند خبر دارد .
  • Observer یک کلاس ابسترکت است که اینترفیس مورد نیاز برای کلاس هایی که باید از تغییرات مطلع شوند را فراهم می‌کند .

کد موجود در لینک منبع :

 

 

درکد زیر همین مفهوم بدون استاتیک بودن ایجاد شده و میتوان از دو کلاس بیس برای پیاده سازی این مفهوم بر روی هر کلاسی استفاده می‌شود ولی کد موجود در لینک با توجه به استاتیک بودن فقط برای همین کلاس Observable قابل استفاده است .

کد اصلاح شده توسط بنده :


منبع