الگوی طراحی(Facade)

ساخت وبلاگ
حوزه: Objectهدف: Behavioralنقش الگو این الگو یک راه حل‌ برای حالتی است که، در آن درخواست‌هایی از کاربر به برنامه می‌رسد و باید با توجه به شرایطی به این درخواست‌ها پاسخ داده شود و در موارد زیر کاربرد دارد. زمانی که برای پاسخ دادن به درخواست کاربر بیش از یک Handler (که می‌تواند یک برنامه، یک thread،شی الگوی طراحی(Facade)...ادامه مطلب
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 11 تاريخ : چهارشنبه 10 خرداد 1396 ساعت: 17:56

مقدمه

ابتدا مقدمه‌ای در مورد کلاس‌های abstract می‌‌آوریم. از کلاس‌ها نمی‌توان یک نمونه ساخت؛‌ اما سوال این است که چرا ما به کلاس‌هایی نیاز داریم که نمی‌توان یک نمونه از آنها ایجاد کرد؟ این کلاس‌ها قابلیت ارث‌بری دارند، به طور کلی نمی‌توان از آنها یک نمونه ایجاد کرد، ولی کلاس‌های دیگر می‌توانند از آن به ارث برسند.

ادامه مطلب
الگوی طراحی(Facade)...
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 25 تاريخ : شنبه 21 اسفند 1395 ساعت: 3:32

حوزه: Object هدف: Structuralنقش الگو الگوی Composite در عمل یک Collection Patte (الگوی مجموعه‌ای) است. که می‌توان در درون آن ترکیبی از زیر مجموعه‌های مختلف را قرار داد و سپس هر زیر مجموعه را به نوبه خود فراخوانی نمود. به بیان دیگر الگوی Composite به ما کمک می‌کند که در یک ساختار درختی بتوانیم مجموعه ای (Collection ی)، از بخشی از آبجکت‌های سلسله مراتبی را نمایش دهیم. این الگو به Client اجازه می‌دهد، که رفتار یکسانی نسبت به یک Collection ی از آبجکت‌ها یا یک آبجکت تنها داشته باشد. ادامه مطلب الگوی طراحی(Facade)...ادامه مطلب
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : الگوی طراحی composite, نویسنده : direh-hra بازدید : 18 تاريخ : سه شنبه 4 آبان 1395 ساعت: 14:33

حوزه: Object هدف: Structuralنقش الگوGOF(Gang of Four) این الگو را به این شکل تعریف کرده‌اند که "با استفاده از Builder Patte، ساختار (construction) اشیاء پیچیده را از نمایش (representation) آن جدا می‌کنیم. بنابراین می‌توان با یک فرایند ساخت، چند نمایش مختلف ایجاد کرد ". همانطور که از نام آن مشخص است، از این الگو برای ساخت اشیاء به صورت جزء به جزء یا به عبارت دیگر مرحله به مرحله استفاده می‌شود. منطق پیچیده ساخت شی از client جدا شده است و client با ارسال مجموعه‌ای از جزئیات، شی و اطلاعات مورد نیاز را بدست می آورد. ادامه مطلب الگوی طراحی(Facade)...ادامه مطلب
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 13 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44

حوزه: Objectهدف: Behavioralنقش الگو حالتی را تصور کنید که چند شی در برنامه وجود دارد که تغییر حالات یک شی دیگر را دنبال می‌کنند و با توجه به هر تغییر عملی را انجام می‌دهند. شاید اولین راه حلی که در این حالت یافت شود، این است که اشیا در یک حلقه، شی مورد نظر را بررسی کنند تا اگر تغییری به وجود آمده بود با توجه به آن کاری انجام دهند. اما این بدترین راه حل است و باعث افت کارایی و همچنین طراحی بد برنامه خواهد شد. برای حل این مسئله الگوی Observer معرفی می‌شود. ادامه مطلب الگوی طراحی(Facade)...ادامه مطلب
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 17 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44

حوزه: Object هدف: Behavioralنقش الگواین الگو یک الگوی رفتاری یا Behavioral می‌باشد. الگوهای رفتاری با الگوریتم‌ها و ارتباط بین آن‌ها درگیر می‌باشند. اگر برنامه ما یک الگوریتم یکتا را پیاده سازی می‌کند گرچه ممکن است از چندین کلاس استفاده کند ولی به خاطر بالا رفتن پیچیدگی ممکن است که برای مدیریت برنامه و نگهداری کد مشکلاتی به جود بیاید. ما با استفاده از الگوهای طراحی رفتاری سعی می‌کنیم که از این پیچیدگی ها کم کنیم. ادامه مطلب الگوی طراحی(Facade)...ادامه مطلب
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 21 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44

حوزه: Object
هدف: Creational
نقش الگو

در زمانی که نیاز به شی‌های مشابه باشد و ساخت هر شی منابع زیادی از سیستم را اشغال کند، این الگو طراحی می‌توان گزینه مناسبی باشد تا یک کپی از ‌شی مورد نظر برای ما ایجاد نماید. در واقع می‌توان گفت مزیت الگوی طراحی Prototype سرعت بالاتر آن است بدلیل اینکه کپی کردن یک شئ  از ایجاد یک نمونه جدید شئ سرعت بیشتری دارد.

ادامه مطلب
الگوی طراحی(Facade)...
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 16 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44

حوزه: Object هدف: Structuralنقش الگو پروکسی به معنی نماینده یا واسط است و پروکسی واسطی است بین ما و شیء اصلی. پروکسی در شبکه به این معنی است که سیستم شما به یک سیستم واسط متصل شده است که از طریق پروکسی محدودیت‌های دسترسی برای آن تعریف شود. در اینجا هم پروکسی در واقع به همین منظور استفاده می‌شود. به عنوان مثال فرض کنید که شما یک برنامه ساده کار با فایل را دارید. اگر بخواهید اعتبارسنجی‌هایی را برای آن تعریف کنید، بهتر است اینکار را به یک پروکسی بسپارید تا شیء گرایی بهتری را داشته باشید. ادامه مطلب الگوی طراحی(Facade)...ادامه مطلب
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 19 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44

حوزه: Class
هدف: Behavioral
نقش الگو

بعضی از مردم نمی‌توانند زندگی را بدون قهوه تصور کنند و بعضی دیگر زندگی را بدون چای نمی‌توانند تصور کنند. ولی جزء تشکیل دهنده اصلی هر دو کافئین است. شباهت‌های دیگر نیز بین این دو مورد وجود دارد. روش ساخت هر دوی آنها تقریبا مشابه است. شما اغلب موارد به ترتیب زیر عمل می‌کنید.

ادامه مطلب
الگوی طراحی(Facade)...
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 19 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44

اصل اول: Encapsulate what varies
"آنچه را که تغییر می‌کند مشخص و جدا کن یا به عبارتی آنرا کپسوله کن"
برای آنکه بتوانیم کدی منعطف، قابل استفاده مجدد و خوانا داشته باشیم، ابتدا باید بخش‌های ثابت و متغیر کد را تشخیص دهیم و کاری کنیم تا بخش ثابت، بدون تکرار در جای جای برنامه استفاده شود و سپس برای بخش متغیر برنامه ریزی کنیم.

ادامه مطلب
الگوی طراحی(Facade)...
ما را در سایت الگوی طراحی(Facade) دنبال می کنید

برچسب : نویسنده : direh-hra بازدید : 10 تاريخ : چهارشنبه 7 مهر 1395 ساعت: 0:44