मैंने अभी नोडाटाइम के साथ काम करना शुरू कर दिया है। मेरे ऐप में, उपयोगकर्ता एक ईवेंट बनाता है और एक समय क्षेत्र चुनता है। भले ही मैं बीसीएल (विंडोज) समय क्षेत्र सूची या टीजेडीडीबी (ओल्सन) सूची का उपयोग करता हूं (और उन्हें मिश्रण न करें!), मुझे समय क्षेत्र की आईडी को अपने डेटाबेस में जारी रखने की आवश्यकता है ताकि मैं बाद में टाइमज़ोन को फिर से बना सकूं -वेयर समयक्या डेटाबेस में समय क्षेत्र आईडी को स्टोर करना सुरक्षित है या वे बदल सकते हैं?
यह देखते हुए कि टाइमज़ोन आईडी कुछ हद तक मनमानी प्रतीत होती है और आईएसओ मानक नहीं है, क्या मैं हमेशा उस आईडी को भविष्य में ढूंढने पर भरोसा कर सकता हूं जब मैं GetZoneOrNull को कॉल करता हूं?
मुझे लगता है कि GetZoneOrNull विधि उस घटना के खिलाफ रक्षा है; यानी, जब यह एक आईडी पारित की जाती है जो अपने स्वयं के आईडी संग्रह में मौजूद नहीं होती है। मेरा सवाल यह है कि: यदि आईडी को आईडी संग्रह से पुनर्प्राप्त किया गया है, तो क्या मैं भरोसा कर सकता हूं कि GetZoneOrNull कभी भविष्य में वापस नहीं आ जाएगा?
लेकिन यदि कोई आईडी इतिहास से गायब हो सकता है, तो उससे निपटने के लिए सबसे अच्छी रणनीति क्या है?
मैं या तो टीजेडीबी या विंडोज का चयन करूँगा, ओल्सन की तरफ झुकने के लिए सिर्फ ईमानदार होने के लिए अगर मुझे बाहरी दुनिया से बात करने की ज़रूरत है। मुझे यह तथ्य पसंद है कि वे नए लोगों को पुरानी आईडी बनाते हैं, जिससे समस्या दूर हो जाती है। मुझे यकीन नहीं है कि क्या विंडोज एक ही सम्मेलन को अपनाएगा लेकिन आप ऐसा सोचना चाहते हैं। उस संदेह के कारण, मैं ओल्सन का उपयोग करने जा रहा हूं। धन्यवाद। –