NextPro | برنامه نویسی
229 subscribers
88 photos
14 videos
2 files
112 links
Next Pro Official Community Channel
Download Telegram
تو این پست میخوایم راجب یک دیزاین پترن محبوب حرف بزنیم ، SingleTon .

وقتی می‌خوایم مطمئن شیم که فقط یک نمونه از یک کلاس در کل برنامه وجود داره ، Singleton به دادت میرسه ! این الگو برای مدیریت connectionهای دیتابیس و لاگرها عالیه !

یک نمونه ساده از SingleTon :
class Database {
private static instance: Database;
// جلوگیری از ساخت نمونه جدید با new
private constructor() {}

public static getInstance(): Database {
if (!Database.instance) {
Database.instance = new Database();
}
return Database.instance;
}

}
const db1 = Database.getInstance();
const db2 = Database.getInstance();

console.log(db1 === db2); // true

چرا از Singleton استفاده کنیم ؟
• صرفه‌جویی در منابع: از ساخت نمونه‌های تکراری جلوگیری میشه
• کنترل دقیق: میتونیم رفتار یک نمونه رو کاملا مدیریت کنیم ( تغییرات و دیباگ و.. )

کلام آخر :هرچیزی زیادیش بده ، این الگوام زیادی و بی برنامه ریزی استفاده بشه میتونه به یک ضد الگو تبدیل بشه !

#DesignPatterns #Singleton
@NextPro_Ch 🚀
👍2🔥2👏1