داشتم یک کدی رو امروز روش کار میکردم؛ که یک سری کانفیگ از یوزر میگیره اما اگر وجود نداشت یک سری دیفالت رو بجاش استفاده میکنه و تمام این تنظیمات dictionary هستند.
مشکل بعدیش این بود که تنظیمات دیفالت هم خودش توسط یگ یوزر دیگه تعریف میشه و لزوما تنظیمات صفر ابزار ما نیست.
بطور خلاصه ما یک dict داریم که خودش یک سری تنظیمات داره؛ ولی ممکنه یک بخشهایی رو یک نفر بخواد تغییر بده پس باید overwrite بشه! ولی اجازه overwrite نداریم چون ممکنه کاربر نهایی تنظیماتش رو بخواد reset کنه ولی این وسط ممکنه تنظیمات از طریق مشتریهای میانی به دست کاربر نهایی رسیده باشه و مشتری میانی نخواد کاربر رو مستقیم به ما وصل کنه (مطمئن باشه ما دورش نمیزنیم ولی خودش هم برنامهنویس نیست که سایت و ابزارهای خودش رو توسعه بده)
خلاصه که ممکنه چیزی که نهایتا به مشتری آخر میرسه اینطوری باشه : default -> default -> default -> ....... -> default و بعد مشتری نهایی سیستم اون رو برای خودش شخصیسازی کنه.
کلی راهکار پیشنهاد شد؛ یکباره یاد ChainMap توی پایتون افتادم اول رفتم یک تست گرفتم مطمئن بشم به محدودیتهای بیزینس نمیخوریم بعد کد رو دادیم رفت بالا (شد بهترین راهکار) چون خودم اصلا یادم نبود که ChainMap همچین کاربردی داشته باشم گفتم با شما هم به اشتراک بذارم.
اگر یکی از مقادیر توسط مشتریها تعریف نشده باشه؛ در اونصورت از دیکشنری default خونده میشه.
داشتم یک کدی رو امروز روش کار میکردم؛ که یک سری کانفیگ از یوزر میگیره اما اگر وجود نداشت یک سری دیفالت رو بجاش استفاده میکنه و تمام این تنظیمات dictionary هستند.
مشکل بعدیش این بود که تنظیمات دیفالت هم خودش توسط یگ یوزر دیگه تعریف میشه و لزوما تنظیمات صفر ابزار ما نیست.
بطور خلاصه ما یک dict داریم که خودش یک سری تنظیمات داره؛ ولی ممکنه یک بخشهایی رو یک نفر بخواد تغییر بده پس باید overwrite بشه! ولی اجازه overwrite نداریم چون ممکنه کاربر نهایی تنظیماتش رو بخواد reset کنه ولی این وسط ممکنه تنظیمات از طریق مشتریهای میانی به دست کاربر نهایی رسیده باشه و مشتری میانی نخواد کاربر رو مستقیم به ما وصل کنه (مطمئن باشه ما دورش نمیزنیم ولی خودش هم برنامهنویس نیست که سایت و ابزارهای خودش رو توسعه بده)
خلاصه که ممکنه چیزی که نهایتا به مشتری آخر میرسه اینطوری باشه : default -> default -> default -> ....... -> default و بعد مشتری نهایی سیستم اون رو برای خودش شخصیسازی کنه.
کلی راهکار پیشنهاد شد؛ یکباره یاد ChainMap توی پایتون افتادم اول رفتم یک تست گرفتم مطمئن بشم به محدودیتهای بیزینس نمیخوریم بعد کد رو دادیم رفت بالا (شد بهترین راهکار) چون خودم اصلا یادم نبود که ChainMap همچین کاربردی داشته باشم گفتم با شما هم به اشتراک بذارم.
اگر یکی از مقادیر توسط مشتریها تعریف نشده باشه؛ در اونصورت از دیکشنری default خونده میشه.
The Singapore stock market has alternated between positive and negative finishes through the last five trading days since the end of the two-day winning streak in which it had added more than a dozen points or 0.4 percent. The Straits Times Index now sits just above the 3,060-point plateau and it's likely to see a narrow trading range on Monday.
Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.