آشنایی با الگوی طراحی Facade


در این آموزش قصد داریم تا به بررسی Facade Design Pattern و نحوۀ پیاده‌سازی آن در زبان برنامه‌نویسی PHP بپردازیم و ببینیم که چگونه می‌توان با به‌کارگیری آن روند توسعه را بهبود داده و اپلیکیشنی با قابلیت نگاه‌داری بالا پیاده‌سازی کرد (لازم به یادآوری است که این الگوی طراحی به صورت Façade نیز نوشته می‌شود که در فارسی «فِساد» خوانده می‌شود.)

به طور کلی، الگوی طراحی فِساد زیرشاخۀ الگوهای طراحی Structural قرار می‌گیرد و استفاده از آن در شرایطی مؤثر واقع می‌شود که کدی پیچیده داشته باشیم که با چندین کلاس مختلف پیاده‌سازی شده است یا زمانی که یک کد به اصطلاح Legacy (قدیمی) داریم که ریفکتور کردن آن بسیار دشوار و زمان‌بر می‌باشد که در چنین شرایطی با استفاده از دیزاین پترن فِساد یک کلاسی می‌سازیم که امکان ارجاع به تمامی کلاس‌های اپلیکیشن را داشته و در نهایت می‌توانیم متدهای مد نظر خود را از طریق تنها یک متد فراخوانی کنیم که این امر منجر به کاهش پیچیدگی ساختار سیستم می‌شود (در همین راستا توصیه می‌کنیم به مقالهٔ چگونه یک سورس‌کد اصطلاحاً Legacy را ریفکتور کنیم؟ مراجعه نمایید.)

حال برای درک بهتر ساختار دیزاین پترن فِساد مثالی را در نظر می‌گیریم که در آن قصد داریم تا چند کلاس مختلف به منظور اشتراک‌گذاری پست‌های وبلاگ خود در شبکه‌های اجتماعی توسعه دهیم به طوری که به ازای هر شبکۀ اجتماعی یک کلاس منحصربه‌فرد به همراه متدهای مد نظر را پیاده‌سازی می‌کنیم. در همین راستا، برای انتشار پست‌های وبلاگ خود در شبکه‌هایی همچون توئیتر، فیسبوک و گوگل‌پلاس سه کلاس مختلف توسعه می‌دهیم و داخل هر یک از آن‌ها متدی مجزا برای انجام تَسک مد نظر پیاده‌سازی خواهیم کرد.

این بخش از محتوا مخصوص کاربرانی است که ثبت‌نام کرده‌اند.
جهت مشاهدهٔ این بخش از محتوا لاگین نمایید.

جمع‌بندی
به طور کلی، پیاده‌سازی Facade Design Pattern برای تسهیل توسعه و ساده‌سازی کار با اپلیکیشن‌هایی مناسب می‌باشد که پیچیدگی بالایی داشته و در آن چندین کلاس و متد مختلف پیاده‌سازی شده‌اند به طوری که با پیاده‌سازی یک کلاس به اصطلاح Facade می‌توان به تمامی کلاس‌های اپلیکیشن دسترسی یافته و متدهای مد نظر از آن‌ها را فراخوانی کرد.

دانلود فایل‌های تمرین

لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان