Logo hi.boatexistence.com

स्ट्रिंग कॉन्सटेनेशन खराब क्यों है?

विषयसूची:

स्ट्रिंग कॉन्सटेनेशन खराब क्यों है?
स्ट्रिंग कॉन्सटेनेशन खराब क्यों है?

वीडियो: स्ट्रिंग कॉन्सटेनेशन खराब क्यों है?

वीडियो: स्ट्रिंग कॉन्सटेनेशन खराब क्यों है?
वीडियो: पायथन में इस तरह से स्ट्रिंग्स को न जोड़ें, एक बेहतर तरीका है। 2024, मई
Anonim

यह "स्ट्रिंग संयोजन" है, और यह एक बुरा अभ्यास है: … कुछ लोग कह सकते हैं कि यह धीमा है, ज्यादातर क्योंकि परिणामी स्ट्रिंग के कुछ हिस्सों को कई बार कॉपी किया जाता है वास्तव में, प्रत्येक + ऑपरेटर पर, स्ट्रिंग वर्ग स्मृति में एक नया ब्लॉक आवंटित करता है और इसमें जो कुछ भी है उसे कॉपी करता है; साथ ही एक प्रत्यय जोड़ा जा रहा है।

स्ट्रिंग संयोजन अक्षम है?

सम्मिलन इतना अक्षम नहीं है, क्योंकि आधुनिक कंपाइलर इसे स्ट्रिंगबिल्डर के आधार पर एक कुशल कार्यान्वयन के साथ बदलते हैं (यदि आप क्लासफाइल के बाइटकोड को देखते हैं तो आप इसे देखेंगे)।

स्ट्रिंग संयोजन महंगा क्यों है?

महंगा हो गया है। आइए पहले इस मुद्दे पर खुदाई करें कि यह महंगा क्यों है।जावा में, स्ट्रिंग ऑब्जेक्ट अपरिवर्तनीय हैं, जिसका अर्थ है कि एक बार इसे बनाने के बाद, आप इसे बदल नहीं सकते। इसलिए जब हम एक स्ट्रिंग को दूसरे के साथ जोड़ते हैं, एक नई स्ट्रिंग बनाई जाती है, और पुराने को कचरा संग्रहकर्ता के लिए चिह्नित किया जाता है।

SQL क्वेरी में स्ट्रिंग कॉन्सटेनेशन का उपयोग करने के क्या खतरे हैं?

1 उत्तर

  1. प्रदर्शन: तैयार कथन का उपयोग करते समय क्वेरी-वाक्यविन्यास को केवल एक बार पार्स किया जाना है और प्रत्येक विशिष्ट क्वेरी-प्रकार के लिए एक्सेस-पथ की गणना केवल एक बार की जानी है। …
  2. सुरक्षा: उपयोगकर्ता द्वारा प्रदान किए गए डेटा के साथ स्ट्रिंग-संयोजन का उपयोग करना हमेशा SQL-इंजेक्शन-हमलों के लिए प्रवण होता है।

क्या पायथन में स्ट्रिंग संयोजन धीमा है?

इस व्यवहार से आपको आश्चर्य नहीं होना चाहिए: पायथन की स्ट्रिंग ऑब्जेक्ट अपरिवर्तनीय हैं, इसलिए प्रत्येक संयोजन मौजूदा स्थान को संशोधित करने के बजाय एक नया स्ट्रिंग उत्पन्न करता है। यह भी कोई आश्चर्य की बात नहीं है कि एकाधिक स्ट्रिंग संयोजनों को धीमा माना जाता है।

सिफारिश की: