تبلیغات
آکنده
آکنده ،،،،
در اندیشه پرواز هم نباش، پرنده هم مردنی است

الگوی Late-Update[توسعه نرم‏افزار , ]

الگوی Late-Update یک الگوی کدنویسی است که از خودم در کردم و میتواند خیلی پرکاربرد باشد و احتمالاً هم، تاکنون از آن استفاده کردید و من صرفاً اکنون یک نام برای آن لحاظ کرده ام.

ایده اصلی

ایده اصلی این الگو استفاده از تاثیر غیر مستقیم است، یعنی تاثیر یک قسمت در قسمت دیگر به جای ارسال پیام(صدا زدن متود) از طرق دیگر برقرار میشود که در اینجا از یک flag استفاده شده است و منظور از flag یک متغیر boolean است که مشخص میکند وضعیت خاصی برقرار است.(در اینجا غیر معتبر بودن ویژگی وابسته)

شرایط کاربرد:

در حالتی که مقدار یک ویژگی به مقدار چند ویژگی وابسته باشد یا اینکه کلاً مقدار یک ویژگی برآیند مقدار چند ویژگی دیگر باشد و با تغییر مقادیر وابسته-به مقدار وابسته باید ارتقا یابد و دو حالت زیر برقرار باشد:

تغییر در مقدارهای ویژگی وابسته-به متداول باشد ویا تغییرات به صورت دسته ای(batch) اعمال میشوند.

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

مزایا:

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

حداقل بازسازی مقدار وابسته - ویژگی وابسته فقط در اولین دستیابی بازسازی میشود و نه در هر تغییر مقدار ویژگی وابسته-به. (توجه داشته باشید در یک الگوی اشتباه و متداول مقدار ویژگی وابسته هر بار از اول بر اساس ویژگیهای وابسته-به بازسازی میشود. و این روش در مقابل آن فوق العاده موثر است.)

معایب:

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

روش:

1. هر بار که مقدار وابسته-به تغییر کرد یک flag را تنظیم میکنید تا معین کنید که مقدار ویژگی وابسته غیر معتبر شده است.(مثلاً میتوانید مقدار وابسته را مساوی null ست کنید.)

2. در get accessor ویژگی وابسته flag فوق الذکر را بررسی کنید و در صورتی که برقرار بود مقدار ویژگی وابسته را از نوع بازسازی میکند و cache میکند در غیر اینصورت مقدار cache شده بر گردانده میشود.

از بابت عدم استفاده از model های نمایشی و ارائه مثال عذر میخواهم، در آینده حرفه ای تر مینویسیم.

تاریخ فرستادن:شنبه 9 مهر 1384، نویسنده: فرشید کزازی (همیشه همینه)
تعداد بازخوردها: ، شما هم دیدگاه خود را ارائه کنید

 

درباره فرشیدکزازی

 
 

هیچ چیز قابل گفتنی درباره خودم وجود نداره.
کاری داشتید به farshidkazazi@gmail.com پیام بفرستید.

 

 

درباره آکنده

 
 

این وبنوشت دربردارنده دیدگاهها و گفتنیها و نوشتینهای من است و من هرچی که دلم بخواهد میام و اینجا مینویسم و چون فعلاً نرم افزار کار میکنم، زمینه تخصصی آن بیشتر به آن گرایش دارد.

** اسم وبنوشت هیچ معنای خاصی ندارد، اولین کلمه ای بود که موقع ثبت نام به ذهنم رسید.

دسته بندی نگاره ها:
عمومی (7)
توسعه نرم‏افزار (13)

 

 

وبنوشتهای دیگر

 
  زیر چتر باران
واژگان مدیریت دانش
 

 

ابزارها

 
 
جستجو در بلاگ


برای دریافت نگاره ها از طریق email با وارد کردن آدرس email نام‏ نویسی کنید:
بایگانی گذشته
مرداد 1385 (2)
تیر 1385 (3)
اردیبهشت 1385 (1)
بهمن 1384 (4)
آذر 1384 (1)
آبان 1384 (4)
مهر 1384 (5)