mohammad javad farahnak
mohammad javad farahnak
خواندن ۱ دقیقه·۵ سال پیش

دیزاین پترن سینگلتون+ویدیو

الگوی طراحی singleton
الگوی طراحی singleton


سلام.

توی این نوشته/متن/آموزش/ یا هرچی که اسمش هست میخوایم یکی از دیزاین پترن هارو توضیح بدیم.

خب همونطور که از اسمش مشخصه سینگلتون ینی اینکه یه کلاس فقط و فقط یک اینستنس خواهد داشت.

حالا برای اینکار باید چیکار کنیم؟

من یه کلاس تست ایجاد میکنم و بهش میگم هر شی که ایجاد کردی آیدیشو بهم بده!

اینطوری:

میبینیم که هر اینستنس یه آیدی یونیک داره و از هم میتونیم با آیدی متمایزشون کنیم.

حالا میخایم یکاری کنیم که دیگه شی بیشتر از یدونه نسازه.

برای اینکار باید از متد __new__ استفاده کنیم این همون متدیه که شی مارو میسازه.

این متد هست:

متد نیو اینستنس رو میسازه! حالا باید این متد رو طوری تغییر بدیم که فقط یدونه بسازه.

اینطوری:

اینجا یه متغیر ساختیم که همیشه قبل از ساخت شی جدید از روی کلاس چک میکنه که این اینستنس وجود داره یا نه . اگر وجود نداشت یدونه میسازه و ذخیره اش میکنه توی این متغیر و اگر وجود داشت همون قبلی رو ریترن میکنه.


اگر شما هم مثل من زیاد با متن حال نمیکنید یه ویدیو با جزئیات بیشتر هم رکورد کردم! میتونید اینجا ببینید:

https://www.aparat.com/v/dhgkp


امیدوارم براتون مفید باشه. پیشنهاد انتقاد و هر نظری دارید برام توی کامنت ها بنویسید.

singletondesign patternالگوی طراحیبرنامه نویسیپایتون
برنامه نویس پایتون :) با من میتونید از طریق fhot707@gmail.com در ارتباط باشید.
شاید از این پست‌ها خوشتان بیاید