الگوی Proxy در الگوهای طراحی Structural به همراه کد

الگوی Proxy یک الگوی طراحی ساختاری است که به برنامه نویس امکان میدهد یک جایگزین یا مکان نگهدار(Placeholder) برای یک شی دیگر تهیه کنید. یک پروکسی دسترسی به شی اصلی را کنترل کرده و به شما امکان میدهد قبل یا بعد از ارسال درخواست به شی اصلی، کاری را انجام دهید. بیان مسئله: خوب اطلا […]
الگوی Flyweight در الگوهای طراحی Structural به همراه کد

الگوی Flyweight یکی از الگوهای طراحی Structural است زیرا این الگو راههایی را برای کاهش تعداد اشیا ارائه میدهد و در نتیجه ساختار اشیاء مورد نیاز کاربرد را بهبود میبخشد. الگوی Flyweight زمانی که ما نیاز به ایجاد تعداد زیادی از اشیاء مشابه داشته باشیم (مثلاً تعداد 213) استفاده میشود. یکی از ویژگیهای مهم اجسام […]
الگوی Facade در الگوهای طراحی Structural به همراه کد

الگوی Facade یا نما، پیچیدگیهای سیستم را پنهان میکند و اینترفیسی را برای مشتری فراهم میکند که با استفاده از آن مشتری میتواند به سیستم دسترسی داشته باشد. این نوع الگوی طراحی زیر مجموعهای از الگوی ساختاری(Structural) قرار میگیرد زیرا این الگو یک اینترفیس به سیستم موجود اضافه میکند تا پیچیدگیهای آن را پنهان کند. […]
الگوی Decorator در الگوهای طراحی Structural به همراه کد

الگوی Decorator به کاربر اجازه میدهد تا عملکرد جدیدی را به یک شیء موجود بدون تغییر ساختار آن اضافه کند. این نوع الگوی طراحی تحت الگوهای ساختاری قرار میگیرد زیرا این الگو به عنوان یک پوشش برای یک کلاس موجود عمل میکند. این الگو یک کلاس دکوراتور ایجاد میکند که کلاس اصلی را میپوشاند و […]
الگوی Composite در الگوهای طراحی Structural به همراه کد

الگوی Composite یک الگوی طراحی ساختاری(Structural) است که به شما امکان میدهد اشیاء را در ساختارهای درخت مانند ترکیب کنید تا با این ساختار سلسله مراتب ایجاد شده را که بخشی از کل است را نشان دهید. این الگو به مشتریان اجازه میدهد تا با اشیا و ترکیبات اشیاء به طور یکنواخت رفتار کنند. به […]
الگوی Bridge در الگوهای طراحی Structural به همراه کد

الگوی Bridge یک الگوی طراحی ساختاری(Structural) است که به شما امکان میدهد که یک کلاس بزرگ یا مجموعهای از کلاسهای نزدیک به هم را به دو سلسله مراتب مجزا تقسیم کنید که شامل کلاسهای انتزاعی و پیادهسازی است که میتوانند مستقل از یکدیگر توسعه یابند. در واقع الگوی Bridge زمانی استفاده میشود که باید یک […]
الگوی Adapter در الگوهای طراحی Structural به همراه کد

الگوی Adapter یک الگوی ساختاری(Structural) است که به اینترفیس یک کلاس موجود اجازه میدهد تا به عنوان اینترفیس کلاس دیگر استفاده شود. در واقع این الگوها باعث به وجود آمدن پلی بین دو اینترفیس ناسازگار میشوند. الگویAdapter که با نام Wrapper(پوشاننده) نیز شناخته میشود به اشیا با رابطهای ناسازگار اجازه همکاری میدهد. این الگو شامل […]
الگوهای طراحی Structural چیست؟

الگوهای طراحی Structural در مهندسی نرم افزار و برنامه نویسی به نحوه ترکیب کلاسها و اشیاء برای تشکیل ساختارهای بزرگتر مربوط میشود، در حالی که این ساختارها را انعطافپذیر و کارآمد نگه میدارند. الگوهای کلاس ساختاری(Structural) از وراثت برای ایجاد اینترفیس یا پیادهسازی استفاده میکنند. در نظر بگیرید که چگونه وراثت چندگانه، دو یا چند […]
الگوهای طراحی Creational چیست؟

در مهندسی نرمافزار، الگوهای طراحی Creational، الگوهای طراحی هستند که با مکانیسمهای ایجاد شی سر و کار دارند و سعی میکنند اشیا را به شیوهای مناسب و منطبق با موقعیت ایجاد کنند. شکل اصلی ایجاد شی میتواند منجر به مشکلات طراحی یا افزودن پیچیدگی بیشتر به طراحی شود. الگوهای طراحی Creational این مشکل را با […]
الگوی Singleton در الگوهای طراحی Creational به همراه پیاده سازی کد

الگوی Singleton را احتمالاً میتوان پرکاربردترین الگوی طراحی و یکی از اصلیترین زیر دستههای الگوهای طراحی ساختاری(Creational) دانست. الگوی Singleton به کاربر امکان میدهد اطمینان حاصل کند که یک کلاس فقط یک نمونه(instance) دارد، در حالی که یک نقطه دسترسی گلوبال به این نمونه ارائه میدهد. این الگو دارای یک ساختار ساده، آسان برای درک […]
الگوی Prototype در الگوهای طراحی Creational به همراه پیاده سازی کد

الگوی طراحی Prototype یک الگوی طراحی Creational است که امکان ایجاد اشیاء(object) جدید را با کپی کردن یک شی موجود فراهم میکند. الگوی Prototype به برنامه نویس امکان میدهد پیچیدگی ایجاد نمونههای جدید را از مشتری پنهان کند. در واقع مفهوم اصلی این الگو، کپی کردن یک شی موجود به جای ایجاد یک نمونه جدید […]
الگوی Builder در الگوهای طراحی Creational به همراه پیاده سازی کد

الگوی Builder یک الگوی طراحی Creational است که به شما امکان میدهد اشیاء پیچیده را مرحله به مرحله بسازید. این الگو به شما اجازه میدهد تا انواع و نمایشهای مختلف یک شی را با استفاده از کد ساخت یکسان تولید کنید. بیان مسئله: یک شی پیچیده را تصور کنید که نیاز به مقداردهی اولیه پر […]
الگوی Abstract Factory در الگوهای طراحی Creational به همراه پیاده سازی کد

الگوی Abstract Factory در مهندسی نرمافزار یک Design Pattern است که راهی برای ایجاد خانوادههای اشیاء مرتبط بدون تحمیل کلاسهای Concrete آنها، با کپسولهسازی گروهی از کارخانههای(Factories) منفرد که دارای یک موضوع مشترک هستند، بدون مشخص کردن کلاسهای Concrete خود، فراهم میکند. بر اساس این الگو که از دسته Creational است، یک جزء نرم افزار […]
متد Factory در الگوهای طراحی Creational به همراه پیاده سازی کد

الگوهای طراحی Creational دستهای از Design Pattern های نرم افزار هستند که با مکانیسمهای ایجاد شی سروکار دارند. آنها راهها و تکنیکهای مختلفی را برای ایجاد اشیاء به روشی ارائه میدهند که انعطاف پذیر و قابل استفاده مجدد بوده و بتواند اصول طراحی بهتر را ترویج کند. در ادامه به تشریح متد Factory از این […]
الگوی طراحی (Design Pattern) در فرآیند تولید نرم افزار چیست؟

الگوهای طراحی راه حلهای معمولی برای مشکلات رایج در طراحی نرم افزار هستند. در واقع دیزاین پترنها(Design Pattern) مانند نقشههای از پیش ساخته شدهای هستند که میتوانید آنها را برای حل یک مشکل طراحی تکراری در برنامه نویسی و کد خود سفارشی کنید. کاربر نمیتواند فقط یک الگو را پیدا کرده و آن را در […]
