Javada “Design Pattern” lar
«Design Patterns» atamasi nimani anglatadi?
Design Patterns bu dasturlash jarayonini yengillashirish uchun oldindan ishlab chiqilgan standart kod yozish usullaridir. Odatda (bundan keyin qulaylik uchun Patternlar deb yozaman) Patternlar dastur ishlab chiqish jarayonida yuzaga keladigan ma’lum bir muammolarga yechimlar ko’rinishadi bo’ladi.
Ushbu oldindan ishlab chiqilgan standart Patternlardan foydalanish orqali dasturchilar, o’zlari va jamoalariga yuqori sifatli va bundanda sifatini yaxshilash imkoni mavjud dasturlarni yaratish imkonini beradilar.
Yana bir Patternlarning e’tiborga olish kerak bo’lgan tomoni shundaki, ularni ishlab chiqish umumiy bo’lgani uchun, Javadan tashqari boshqa dasturlash tillarida ham ularni qo’llash imkoni mavjud.
Hozirda Patternlarning asosiy 3 ta turi mavjud:
Creational Patterns — nomi aytib turganidek, ular obyektni yaratish va initsializatsiya qilish ya’ni unga boshlang’ich qiymat berish jarayonida paydo bo’ladigan muammolarni yechish uchun ishlab chiqilgan Pattern lardir
Structural Patterns — bu turdagi Pattern lar obyekt strukturasi va uning kompozitsiyasini(ya’ni sodda obyektlardan bitta murakkab vazifani bajaruvchi obyektni yaratish) tuzishni samarali yechimlari hisoblanadi. Shu bilan birga, ular bir butun samarali ishlovchi kompozitsiyani yaratish uchun vorislik va interfeyslardan foydalanadi.
Behavioral Patterns — ushbu Pattern lar obyektlarni o’zaro aloqalari va qay tarzda bir-biri bilan bog’lanishi, bir-birlariga qay darajadi bog’liqligini belgilash uchun ishlatiladi.
Creational Pattern larga quyidagilar kiradi:
- Factory Method/Template;
- Abstract Factory;
- Builder;
- Prototype;
- Singleton.
Structural Pattern larga quyidagilar kiradi:
- Adapter;
- Bridge;
- Filter;
- Composite;
- Decorator;
- Facade;
- Flyweight;
- Proxy.
Behavioral Pattern larga quyidagilar kiradi:
- Interpreter;
- Template Method/Pattern;
- Chain of Responsibility;
- Command;
- Iterator;
- Mediator;
- Memento;
- Observer;
- State;
- Strategy;
- Visitor.
Manba:
Algoritm
Javada “Design Pattern” lar