Nullble Object

Friday, November 16, 2012

 Nullble Object Pattern מתכנתים בשפות מונחות עצמים מכירים היטב את הבעיה שלעיתים רפרנס לאובייקט הוא Null. לעיתים כי זאת הדרישה או המערכת שאתה אנו מתקשרים לעיתים מאתחול מאוחר של אובייקטים או מכל מיני סיבות לעיתים מכוונות וזה בסדר! אולם התבנית באה להתמודד אם מקרי הנפילה שבהם אנחנו נתפסים לא מוכנים כשעושים invoke על אובייקט. אחת השורות הכי נפוצות בקוד מודרני היא if Item != null  גם אם אין קשר כי כ"כ רגילים שהמערכת נופלת על Nulls אז למה לקחת סיכון ?? אבל nullble object זאת גם תבנית עיצוב עתיקה שבד"כ אנו נתקלים בצד המגעיל שלה שלה (להלן "אחת השורות הכי נפוצות..) אם כל האובייקטים היו עובדים על בסיס של null object לא היה סיכון של נפילה...
2 תגובות

Thread Safe SingleTon

Tuesday, October 23, 2012

Thread safe Singleton And Lazy initialization Singelton   בזמנו התבקשתי ע"י הקוראים לסגור  שתי פינות אלה. לקח לי זמן אבל אני הגענו לזה. Lazy initialization  מוסבר בקצרה כPattern  עצמאי בפוסט הבא. נמשיך עם Thread Safe : הבעיה מתחילה כשאובייקט שלנו במערכת שמוגדר כסינגלטון נמצא בשימוש ע"י תהליך כלשהוא ואני עכשיו מנסה לגשת לאובייקט ומתחילה מלחמה למי ישנה עדיפות (רמז, תמיד נפסיד) הפתרון הוא פשוט מאוד לבצע Lock בעת גישה לאובייקט סינגלטון באיזור ה  .return value Public seald class SingletonObject {    private static SingletonObject instance;    private static object locker = new Object();      private SingletonObject () {}      public static SingletonObject Instance    {       get       {          if (instance == null)          {             lock (locker)             {                if...
תגובה אחת