تفکیک مسئولیت پرسش فرمان، خواندن را از نوشتن جدا می کند… اما چگونه؟

اولین باری که این اصطلاح در فرهنگ لغات مهندسی نرم افزار ظاهر شد، تمام راه بازگشت بود 1997. در کتاب “ساخت نرم افزار شی گرا” توسط Bertrand Meyer. در این زمان به عنوان شناخته شده بود CQS (فرمان پرس و جو جداسازی). CQRS در نهایت توسط Greg Young در 2010. این معماری نرم افزار برای کاهش هشدارهای شناخته شده طراحی شده است Object-Oriented architecture. به طور خاص در این مورد، این هشدارها عبارتند از:

  • نوشتن و خواندن، تقریباً همیشه، بار بسیار متفاوتی را در برابر سیستم ایجاد می کند.
  • عملیات نوشتن اغلب بسیار پیچیده تر از خواندن است و بر دامنه های مختلف برنامه تأثیر می گذارد. عملیات Write باید تضمین کند که داده‌های صحیح، معتبر و منسجم به درستی به فروشگاه می‌رسند.
  • نگرانی های امنیتی نیز بین عملیات نوشتن و خواندن متفاوت است.
  • روشی که معمولاً داده ها در پایگاه داده ذخیره می شوند به صورت 3NF یا به شکل بهینه شده دیگر است. هنگامی که داده ها را می خوانیم، اغلب از آن برای ایجاد نماها استفاده می کنیم تا داده های قابل خواندن را در اختیار کاربر قرار دهیم. داده های ارائه شده به کاربر به سختی عادی می شود. به این داده‌های غیرعادی‌شده نیز گفته می‌شود. به عبارت دیگر، تنها با این نگرانی که کاربر بتواند آن را بخواند، داده ها را به کاربر ارائه می کنیم.

از طریق این لیست بسیار ساده می توانید ببینید که خواندن و نوشتن در…

Source link