613
צפיות
צפיות
3
תשובות
תשובות
מחלקה מסוג singletone
שלום,
רציתי לדעת איך הופכים מחלקה ל – singletone (ב C#)
אני יודע שחייבים להגדיר את ה CONSTRACTOR כ PRIVATE על מנת שיווצר
רק מופע אחד מהמחלקה .
מה עוד צריך להגדיר על מנת שזאת תהיה מחלקה singletone?
תודה
3 תשובות
Singletone design pattern:
אתה מגדיר Constructor כ private.
אתה מגדיר משתנה מחלקה (static) בוליאני כ private, שנקרא לו לצורך העניין bObjectExist, ואתה מגדיר מתודה ברמת המחלקה כ public, שנקרא לה לצורך העניין getObject. המתודה הזו תעשה משהו די פשוט:
תבדוק את הערך של bObjectExist. במידה ו true, תחזיר null ותסתיים. במידה ו false, תשנה אותו ל true, תקרא ל constructor ותחזיר רפרנס לאובייקט.
זה בעצם כל מה שצריך בשביל ליצור מחלקה מטיפוס Singletone.
(כמובן, אם אי פעם יתעורר הצורך ליצור מחלקה שניתן ליצור ממנה רק שלושה אובייקטים, כל מה שצריך זה לשנות את המשתנה bObjectExist למספרי, ולבדוק אם הוא קטן משלוש במתודה getObject.)
חולק עליך
משתנה המחלקה הפרטי צריך להיות המופע היחידי של המחלקה. המתודה צריכה לבדוק אם הוא null, במידה וכן אז ליצור את האובייקט.
ואח"כ להחזיר אותו.
עוד על ה-DP הזה:
(ככלל, אם רוצים לדעת משהו לגבי DP מסויים – כנסו לאתר הזה, יש בו גם דוגמאות קוד ב-C#).
אתה יודע מה, מקובל עלי.
האופציה שלך יותר טובה.
את שלי כתבתי מהזכרון עוד מהקורס java, מאלוהים יודע מתי…