شروع Design Pattern ها در جاوا
در مقاله قبل٬ مفهوم Design Pattern در جاوا را مورد بررسی قرار دادیم. به این صورت که مفاهیم کلی و توضیح اجمالی پیرامون آن توضیح داده شد. اکنون میخواهیم با استفاده از این سری مقالات، تمام Design Pattern های موجود در جاوا را بررسی کنیم تا بتوانیم در پروژه ها از آن استفاده کنیم. همانطور که در مقاله قبل نیز اشاره شد، چهار نوع کلی از Design Pattern ها موجود است:
- Creational
- Structural
- Behavioral
- J2EE
در این مقاله به ماهیت این چهار Design Pattern میپردازیم و در مقالات بعد به هریک از Design Pattern ها به صورت کامل میپردازیم.
Creational
به طور کلی در ساختار مهندسی نرم افزار Creational Pattern ها بر روی شیوه های ایجاد Object تمرکز دارند. با استفاده از روش های تعریف شده در این قسمت٬ راه های ایجاد یک instance از کلاس مورد بررسی قرار میگیرد. در این بخش چگونگی ایجاد Object متناسب با شرایط و نیاز های پروژه بررسی میشود. شیوه ایجاد Object متناسب با منطق پروژه انتخاب میشود و به صورت مستقیم از کلمه کلیدی new استفاده نمیشود. این روش به ما کمک میکند تا بتوانیم متناسب با موارد استفاده از Object، شیوه ایجاد آن را انتخاب کنیم. گاهی ممکن است روش های عادی برای ایجاد یک Instance، پیچیدگی پروژه را افزایش دهد. Design Pattern این مشکل را برطرف میکند. این بخش شامل این Design Pattern ها است:
Structural
در مهندسی نرم افزار، این روش برای تسهیل در طراحی ساختار کلاس است. با استفاده از این روش، آسان ترین راه برای یافتن ارتباط میان Entity ها بررسی میشود. این روش برای طراحی کلاس ها و همچنین ترکیب بندی Object ها استفاده می شود. در واقع با استفاده از آن میتوانیم ساختار ساده و موثری برای ساختار hierarchies کلاس ها ایجاد کنیم. وقتی از چنین الگو هایی استفاده میشود، کارایی و قابلیت استفاده مجدد افزایش مییابد. این بخش شامل این Design Pattern ها است:
- Adapter
- Composite
- Proxy
- FlyWeight
- Facade
- Bridge
- Decorator
Behavioral
هدف اصلی استفاده از چنین Pattern هایی ایجاد ارتباط میان Object ها است. این Pattern ارتباط میان Object ها را بسیار منعطف تر میسازد. با استفاده از چنین Pattern هایی میتوانیم پیچیدگی کد ها را کاهش دهیم. همچنین ارتباط میان فرستنده و گیرنده داده کاهش مییابد که این امر استفاده مجدد و انطعاف پروژه را افزایش میدهد. این بخش شامل این Design Pattern ها میباشد:
- Template method
- Mediator
- Chain of Responsibility
- Observer
- Strategy
- Command
- State
- Visitor
- Interpreter
- Iterator
- Memento
- Null Object
J2EE
از این الگو برای لایه های Presentatin ،Business و Integration استفاده میشود. این Pattern ها توسط Sun Java Center ارائه شده است. این الگو ها برای مرتفع سازی مشکلاتی است که در هنگام استفاده از انواع تکنولوژی های JavaEE ممکن است با آن مواجه شویم. همچنین این امکان را به برنامه نویسان میدهد تا بتوانند معماری برنامه های خود را مشخص کنند. این بخش شامل این Design Pattern ها است:
- Presentation
- Intercepting Filter
- Context Object
- Front Controller
- Application Controller
- View Helper
- Composite View
- Dispatcher View
- Service To Worker
- Business
- Business Delegate
- Service Locator
- Session Facade
- Application Service
- Business Object
- Composite Entity
- Transfer Object
- Transfer object assembler
- Value List Handler
- Integration
- Data Access Object
- Service Activator
- Domain Store
- web Service Broker
در این مقاله سعی بر این شد تا با مفهوم هریک از Design Pattern ها آشنا شویم و زیر مجموعه های آن را معرفی کنیم. در مقالات بعد به صورت متوالی هریک از این الگو ها را مورد بررسی قرار میدهیم.
با ما همراه باشید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.