एक वेब अनुप्रयोग में क्लाइंट साइड पर 5000 तत्व संग्रहीत करना [बंद]


12

मेरे पास ASP.Net डेवलपर के लिए सिर्फ एक फोन साक्षात्कार था, प्रारंभिक परिचयात्मक सामान के बाद साक्षात्कारकर्ता ने मुझसे पहला तकनीकी प्रश्न पूछा:

"आप एक वेब एप्लिकेशन में प्रत्येक उपयोगकर्ता के लिए ग्राहक की ओर से 5000 तत्वों को कैसे स्टोर करेंगे"।

मेरे जवाब के साथ शुरू हुआ,

प्रत्येक तत्व का औसत आकार क्या है? क्या हमें वास्तव में क्लाइंट की तरफ इतना डेटा स्टोर करना है? क्या हम इसे डेटाबेस में नहीं रख सकते हैं और इसे किसी भी तरह यूजर सेशन / क्लाइंट आईडी से जोड़ सकते हैं ।

उनका उत्तर था, "नहीं, आप मुझे बताएं कि आप इसे ग्राहक पक्ष में कैसे संग्रहीत करेंगे, यह देखते हुए कि प्रत्येक तत्व इंट / स्ट्रिंग, एक सामान्य तालिका पंक्ति सहित लगभग 8 फ़ील्ड के साथ एक रिकॉर्ड है"।

मैंने कहा, "उन्हें एक सत्र में रखा जा सकता है, लेकिन चूंकि सत्र प्रत्येक उपयोगकर्ता के लिए सर्वर साइड पर बनाए रखा जाता है, इसलिए यह महंगा हो सकता है, या दूसरा विकल्प कुकी में उस डेटा को संग्रहीत करना है", मैंने यह भी कहा कि मैं नहीं हूं यकीन है कि अगर इतना डेटा कुकी में संग्रहीत किया जा सकता है। मैंने HTML5 संग्रहण विकल्प का उल्लेख किया है, लेकिन मैंने इसके साथ काम नहीं किया है। चूँकि यह SQLite पर आधारित है, इसलिए यह उस डेटा को सैद्धांतिक रूप से संग्रहीत कर सकता है ।

यही कारण है कि साक्षात्कारकर्ता ने कुछ हद तक व्यंग्यात्मक रूप से कहा, इसलिए आपके पास वेब विकास में 3 साल का अनुभव है, और साक्षात्कार को समाप्त कर दिया।

मैं सोच रहा हूं, मैंने क्या गलत किया? या क्या वास्तव में कुछ बुनियादी है जो मैं ग्राहक पक्ष पर डेटा संग्रहीत करने के संबंध में याद कर रहा हूं।


14
मुझे लगता है कि वह एचटीएमएल 5 स्थानीय भंडारण की तलाश में था , हालांकि ऐसा लगता है कि आपने इसका उल्लेख किया है। यह सिर्फ हो सकता है साक्षात्कारकर्ता एक झटका था, और / या आपको गलत समझा।
को रोबोट को

1
क्या 'तत्व' के लिए एक परिभाषा दी गई थी? मुझे नहीं लगता कि आपने कुछ भी गलत किया, सवाल विशेष रूप से अस्पष्ट है।
ग्रैंडमास्टरबी

8
मुझे नहीं पता कि वह इसका वर्णन करने के लिए 'तत्व' शब्द का उपयोग क्यों करेंगे। लेकिन हाँ, ऐसा लगता है कि वह HTML स्टोरेज के बाद था। मुझे लगता है कि 'क्यों' की अपनी पहली वृत्ति आप स्टोर करना चाहते हैं कि ग्राहक पक्ष भी एक अच्छा था।
ग्रैंडमास्टरबी

5
साक्षात्कारकर्ता संभवतः आपको "स्थानीय भंडारण" शब्द कहने के लिए देख रहा है। कुछ लोग वास्तव में केवल गुदा प्रतिशोधी होते हैं। आप किसी भी तरह उनके लिए काम नहीं करना चाहेंगे। आपने गोली चलाई।
ग्रेग बर्गार्ड्ट

2
"मैंने गलत क्या किया?" उनकी टिप्पणी और दृष्टिकोण से, इस कंपनी पर लागू होना: यह वह जगह है जहां साक्षात्कारकर्ता ने कुछ हद तक व्यंग्यात्मक रूप से कहा है, इसलिए आपके पास वेब विकास में 3 साल का अनुभव है, और साक्षात्कार को समाप्त कर दिया
फ्रांसिस्को प्रेसेंसिया

जवाबों:


10

मैं उन टिप्पणियों से सहमत हूं जो वह एचटीएमएल 5 स्थानीय भंडारण की तलाश कर रही थी, और उम्मीद की जा सकती है कि आपको इसके साथ अनुभव होगा।

सच कहूँ तो, जब तक कि यह नौकरी की एक अभिन्न आवश्यकता नहीं थी और आपने कहा था कि आपके पास इसके साथ अनुभव था, उसकी उम्मीद और प्रतिक्रिया अनुचित थी, मेरी राय में, किसी भी अनुभव वाले व्यक्ति के लिए।

क्यों?

क्योंकि, तीन साल पहले, एक युक्ति के रूप में HTML5 अभी भी अपनी प्रारंभिक अवस्था में था। दूसरे शब्दों में, आपके लिए, विशेष रूप से, आपके करियर के बारे में तब तक है जब तक कि कल्पना का इतिहास ही नहीं है। किसी उत्पाद के साथ अधिक अनुभव वाले लोगों की तलाश में नौकरियों को देखना असामान्य नहीं है। संपूर्ण विवरण के लिए ऐसा ही होना दुर्लभ है उसके लिए, मैं इस तरह के एक रत्न को खोजने के लिए आपकी सराहना करता हूं।

अधिक गंभीरता से, हालांकि, ऐसा लगता है कि यह मुद्दा आपके साक्षात्कारकर्ता के साथ आपसे अधिक अस्पष्ट सवाल पूछ रहा है, और आपको इस पर बहुत कठोर निर्णय देना है। यह साक्षात्कारकर्ताओं के लिए अस्पष्ट सवाल पूछने के लिए असामान्य नहीं है, खासकर विकास के क्षेत्र में। आमतौर पर, आपको यह सोचने की कोशिश करने के लिए किया जाता है कि आप कैसे सोचते हैं, और आपकी पहली वृत्ति आपको कहां ले जाती है। उसके लिए, आपने उस तरह के डेटा को स्थानीय रूप से संग्रहीत करने की आवश्यकता पर सवाल उठाकर अच्छा किया। ये प्रश्न स्वयं के और बुरे के लिए नहीं हैं, लेकिन साक्षात्कारकर्ता उनके साथ क्या करता है, इससे आपके लिए एक बुरा परिणाम हो सकता है (यकीनन, ऐसे साक्षात्कार समाप्ति का मतलब है कि आप शायद उस कंपनी के लिए काम नहीं करना चाहते हैं, वैसे भी)।

अब, यह संभव है कि कंपनी के व्यवसाय के लिए आवश्यक हो कि वे एक कारण या किसी अन्य के लिए स्थानीय भंडारण का उपयोग करें। यदि ऐसा है, तो इसे नौकरी के विवरण में लिखा जाना चाहिए था, और आपको संभावित रूप से व्यवहार्य उम्मीदवार के रूप में खारिज किया जाना चाहिए था जब आपके फिर से शुरू होने पर ऐसा कोई अनुभव नहीं दिखा, अगर उन्हें लगा कि वे ट्रेन नहीं कर सकते हैं या अन्यथा प्रदान नहीं करना चाहिए। समय / साधन के साथ नए कर्मचारी प्रौद्योगिकी पर तेजी लाने के लिए।

स्थानीय भंडारण के लिए, स्वयं - जैसा कि मैंने पहले उल्लेख किया था, HTML5 एक युक्ति के रूप में केवल लगभग तीन वर्षों के लिए है, और यह उदार है और "अंतिम कॉल" ड्राफ्ट की गिनती कर रहा है। फिर, आपके पास ब्राउज़र समर्थन का मुद्दा है, जिसका एक लंबा इतिहास हो सकता है या नहीं हो सकता है (उदाहरण के लिए, जबकि नाम-मूल्य जोड़े HTML5 जमने से पहले भी व्यापक रूप से समर्थित हैं, IndexedDB और Web SQL DB अभी भी स्केच हैं )।

अंत में, HTML5 स्थानीय भंडारण के लिए उपयोग अभी भी कम आम है। एक वेब डेवलपर के रूप में मेरे वर्षों में, मैं एक ऐसे ऐप के बारे में आया हूं, जो मुझे पता है कि मैंने इसे एक बार उपयोग किया है (कुछ ऐसे हो सकते हैं जो इसे अदृश्य रूप से उपयोग करते हैं, लेकिन यह निर्धारित करना कठिन है), और शायद आधा दर्जन परियोजनाएं जो सक्षम हो सकती हैं। इसका उपयोग करने के लिए (लेकिन वास्तव में उस समय उनकी आवश्यकता नहीं थी , या उस दृष्टिकोण का उपयोग करने की लागत बनाम एक और उचित नहीं था)।

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


7

'सही' उत्तर - कम से कम, जिसे वे ढूंढ रहे थे - वह वास्तव में एचटीएमएल 5 लोकलस्टोरेज (स्टीवन बर्न द्वारा एक उत्कृष्ट लिंक) था। और साक्षात्कारकर्ता शायद जा रहा था ... ठीक है, मेरा मानना ​​है कि तकनीकी वाक्यांश "थोड़ा घुंडी " है।

यह मूल रूप से उन्मूलन की प्रक्रिया से आता है, जिसमें एक कुकी कहीं भी बड़ी नहीं हो सकती है , सत्र वास्तव में सर्वर-साइड हैं और क्लाइंट-साइड स्टोरेज मैकेनिक बिल्कुल नहीं हैं, आदि साक्षात्कारकर्ता ने माना कि यह सामान्य ज्ञान था और आप यह पता होना चाहिए, जो कि इस तरह से मज़ेदार है कि आपको केवल HTML5 लोकलस्टोरेज क्षमताओं की आवश्यकता होती है, विशेष रूप से डेटा-भारी UI कार्य में जो नियम के बजाय अपवाद है। एक व्यक्ति कई वर्षों तक कार्यक्रम कर सकता है और उसे इस सुविधा की आवश्यकता नहीं है, जबकि अन्य को अपने पहले प्रोजेक्ट पर इसकी आवश्यकता हो सकती है।

हालाँकि, मैं आम तौर पर इस तरह के मामलों में कहूंगा कि यह आपके उत्तर का सवाल कम है और इस सवाल का नहीं है कि आपने इसका उत्तर कैसे दिया और आप इसे प्राप्त करने के लिए किस प्रक्रिया का उपयोग करते हैं। आपके वर्णन से आपने ठीक किया, लेकिन मैं वहां नहीं था और इसलिए उनकी छाप बहुत अलग हो सकती है।

अधिकांश समझदार साक्षात्कारकर्ता प्रौद्योगिकी के एक छोटे से पहलू को लिटमस टेस्ट घोषित नहीं करेंगे, जहां हर व्यक्ति को इसका जवाब देना होगा ... हालांकि, मैंने ऐसे लोगों के साथ बहुत सारे साक्षात्कार किए हैं जो समझदार साक्षात्कारकर्ता नहीं हैं। जब आप ऐसे व्यक्तियों में भाग लेते हैं, तो ऐसे सामान्य ज्ञान को जानना एक वरदान हो सकता है।

अंत में, मैं यह नोट करूंगा कि साक्षात्कार को एक बहुत ही बढ़िया तरीके से नहीं घोषित करके, यह अत्यधिक संभावना है कि वह व्यक्ति पहले से ही नाराज था और आपके बारे में पहले ही निर्णय ले चुका था (इस विशिष्ट प्रश्न का उत्तर शायद आपके लिए मायने नहीं रखता था। थोड़ी सी)। वे बस एक पल का इंतजार कर रहे थे ताकि आप यात्रा कर सकें, इसलिए वे इस ओर इशारा कर सकते हैं और इस तथ्य को उजागर नहीं कर सकते कि उन्होंने पहले 30 सेकंड में फैसला किया था या इसलिए यदि आप एक व्यवहार्य उम्मीदवार थे या नहीं।

मैं शायद उन प्रश्नों का उत्तर देने का अभ्यास करूँगा जो आप तुरंत "सही" उत्तर नहीं जानते हैं, क्योंकि यह गलत तरीके से सुंदर होने की क्षमता है और यह जानने योग्य और बुद्धिमान लगता है कि यह एक कठिन काम है - और हम सभी अतिरिक्त अभ्यास से लाभ उठा सकते हैं। । कुछ "महत्वपूर्ण प्रौद्योगिकी के नवीनतम संस्करण में नया क्या है" लेख पर ब्रश करें और फिर वहां से वापस जाएं!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.