Middle
Dizayn shablonlari nima?
sobes.tech AI
AIdan javob
Dizayn shablonlari — bu obyektga yo‘naltirilgan dasturlash doirasida uchraydigan muammolar uchun keng tarqalgan, ko‘p marta tekshirilgan yechimlar. Ular tayyor kutubxonalar yoki ramkalar emas, balki konseptlar yoki "retseptlar" bo‘lib, ularni aniq vazifaga moslashtirish mumkin.
Shablonlar sinflar va obyektlar o‘rtasidagi munosabatlarga qaratilgan. Ular uchta asosiy toifaga bo‘linadi:
- Yaratish (Creational): Ob'ektlarni yaratish uchun shablonlar.
- Fabrika usuli (Factory Method)
- Abstrakt fabrikasi (Abstract Factory)
- Singleton
- Builder
- Prototype
- Strukturalar (Structural): Sinflar va obyektlarni katta tuzilmalarga tashkil qilish uchun shablonlar.
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
- Xulq-atvor (Behavioral): Algoritmlar va sinflar hamda obyektlar o‘rtasidagi o‘zaro ta'sir usullari uchun shablonlar.
- Chain of Responsibility
- Command
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
Dizayn shablonlaridan foydalanish, kodni yanada moslashuvchan, kengaytiriladigan va saqlashga qulay qilish, uning o‘qilishi va jamoaviy ishni osonlashtirish imkonini beradi.
Masalan, Singleton shabloni, sinfning faqat bitta nusxasi bo‘lishini kafolatlaydi va unga global kirish nuqtasini taqdim etadi.
// Java tilida Singleton misoli
class Singleton {
private static Singleton instance; // Yagona nusxa
private Singleton() {
// Yangi nusxalarni yaratishni oldini olish uchun maxfiy konstruktor
}
public static Singleton getInstance() {
if (instance == null) { // Birinchi chaqiruvda nusxani yaratish
instance = new Singleton();
}
return instance; // Yagona nusxani qaytarish
}
public void showMessage() {
System.out.println("Singletondan Salom!");
}
}