![translation](https://cdn.durumis.com/common/trans.png)
यह एक AI अनुवादित पोस्ट है।
[गैर-प्रमुख, डेवलपर के रूप में जीवित रहना] 14. नौसिखिए डेवलपर द्वारा अक्सर पूछे जाने वाले तकनीकी साक्षात्कार सामग्री का सारांश
- लेखन भाषा: कोरियाई
- •
-
आधार देश: सभी देश
- •
- आईटी
भाषा चुनें
durumis AI द्वारा संक्षेपित पाठ
- नौसिखिए डेवलपर के साक्षात्कार में अक्सर पूछे जाने वाले तकनीकी प्रश्नों को संक्षेप में प्रस्तुत किया गया है, जिसमें मेमोरी क्षेत्र, डेटा संरचना, डेटाबेस, प्रोग्रामिंग, पेज रिप्लेसमेंट एल्गोरिदम, प्रक्रिया और थ्रेड, OSI 7 लेयर, TCP और UDP, आदि विभिन्न विषयों के बारे में बताया गया है।
- प्रत्येक विषय के संक्षिप्त अवधारणा विवरण के साथ-साथ विशिष्ट उदाहरणों के माध्यम से समझने में मदद मिलती है।
- इसमें डेवलपर द्वारा साक्षात्कार की तैयारी करते समय आवश्यक बुनियादी तकनीकी ज्ञान प्राप्त करने में मदद करने वाली उपयोगी जानकारी है।
नॉन-मेजर, डेवलपर के रूप में जीवित रहना
#14. नौसिखिए डेवलपर द्वारा अक्सर पूछे जाने वाले तकनीकी साक्षात्कार प्रश्न
[मुख्य मेमोरी का क्षेत्र]
- कोड क्षेत्र: प्रोग्राम का सोर्स कोड संग्रहीत करने वाला क्षेत्र, CPU कोड क्षेत्र में संग्रहीत निर्देशों (सोर्स, फ़ंक्शन, नियंत्रण कथन) को प्राप्त करता है और उन्हें संसाधित करता है। उदाहरण के लिए, जब C भाषा में लिखा गया कोई प्रोग्राम निष्पादित होता है, तो कोड क्षेत्र में इस प्रोग्राम का सोर्स कोड संग्रहीत होता है।
- डेटा क्षेत्र: वैश्विक चर और स्थिर चर संग्रहीत करने वाला क्षेत्र, प्रोग्राम शुरू होने के साथ आवंटित किया जाता है, और प्रोग्राम समाप्त होने तक विनाश नहीं होता है। उदाहरण के लिए, जब C भाषा में लिखा गया कोई प्रोग्राम निष्पादित होता है, तो डेटा क्षेत्र में इस प्रोग्राम में घोषित वैश्विक चर या स्थिर चर संग्रहीत होते हैं।
- स्टैक क्षेत्र: प्रोग्राम द्वारा उपयोग की जाने वाली अस्थायी मेमोरी क्षेत्र, फ़ंक्शन के कॉल और स्थानीय चर और पैरामीटर से संबंधित है। फ़ंक्शन कॉल के साथ आवंटित किया गया और फ़ंक्शन समाप्त होने पर विनाश हो गया। उदाहरण के लिए, जब C भाषा में लिखे गए फ़ंक्शन को बुलाया जाता है, तो स्थानीय चर या पैरामीटर जो उस फ़ंक्शन द्वारा उपयोग किए जाते हैं, स्टैक क्षेत्र में आवंटित किए जाते हैं।
- हीप क्षेत्र: उपयोगकर्ता द्वारा गतिशील रूप से आवंटित और मुक्त की जाने वाली मेमोरी स्पेस। उदाहरण के लिए, जब C भाषा में malloc() फ़ंक्शन का उपयोग करके गतिशील रूप से मेमोरी आवंटित की जाती है, तो आवंटित मेमोरी क्षेत्र हीप क्षेत्र में संग्रहीत होता है।
[डेटा संरचना]
- स्टैक: LIFO (लास्ट इन, फ़र्स्ट आउट) डेटा संरचना है। उदाहरण के लिए, कंप्यूटर में 'बैक' बटन स्टैक जैसा होता है। पिछले विज़िट किए गए पृष्ठ स्टैक में संग्रहीत होते हैं, और 'बैक' बटन दबाने पर, सबसे हाल ही में संग्रहीत पृष्ठ निकाल दिया जाता है और प्रदर्शित होता है।
- क्यू: FIFO (फ़र्स्ट इन, फ़र्स्ट आउट) डेटा संरचना है। उदाहरण के लिए, बैंक में वेटिंग नंबर लेना और वेटिंग लाइन में जोड़ना क्यू जैसा है। सबसे पहले आने वाले व्यक्ति को सबसे पहले सेवा मिलती है, और सबसे बाद में आने वाले व्यक्ति को सबसे बाद में सेवा मिलती है।
- ट्री: डेटा को पदानुक्रमित संरचना में दर्शाने वाली डेटा संरचना है। उदाहरण के लिए, HTML का DOM ट्री ट्री जैसा है। HTML पृष्ठ की संरचना को ट्री के रूप में दर्शाया गया है, जो html टैग से शुरू होकर हाइरार्की में बना हुआ है।
- हीप: बाइनरी ट्री संरचनाओं में से एक, जिसे मैक्स हीप और मिन हीप में विभाजित किया गया है। उदाहरण के लिए, प्राथमिकता कतार में, उच्चतम प्राथमिकता वाला डेटा हीप के रूट नोड पर स्थित होता है, और अगले उच्चतम प्राथमिकता वाले डेटा को निम्न नोड पर रखा जाता है।
[RDBMS और NoSQL]
- RDBMS: डेटाबेस है जो डेटा को संरचनात्मक रूप से परिभाषित और प्रबंधित करने के लिए एक सख्त स्कीमा का उपयोग करता है। डेटा को विकेंद्रीकृत रूप से संग्रहीत किया जा सकता है और इसे आसानी से संशोधित किया जा सकता है। उदाहरण के लिए, MySQL, Oracle, MS-SQL आदि RDBMS के विशिष्ट उदाहरण हैं।
- NoSQL: डेटाबेस है जो डेटा को संग्रहीत और प्रबंधित करने के लिए एक लचीले स्कीमा का उपयोग करता है। यह बड़े डेटा प्रोसेसिंग और स्टोरेज के लिए उपयुक्त है और इसमें स्केलेबिलिटी भी अधिक है। उदाहरण के लिए, MongoDB, Cassandra, HBase आदि NoSQL के विशिष्ट उदाहरण हैं।
[प्रक्रियात्मक और ऑब्जेक्ट ओरिएंटेड]
- प्रक्रियात्मक प्रोग्रामिंग: प्रोग्रामिंग तकनीक है जिसमें क्रमिक प्रसंस्करण महत्वपूर्ण है। C, Pascal आदि भाषाएं प्रक्रियात्मक भाषाएं हैं।
- ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग: ऑब्जेक्ट (Object) की अवधारणा पर आधारित एक तरीका है जिसमें डेटा और प्रक्रियाओं को तार्किक रूप से एक साथ बांधा जाता है। Java, C++, Python आदि भाषाएं ऑब्जेक्ट ओरिएंटेड भाषाएं हैं। उदाहरण के लिए, कार सिमुलेशन प्रोग्राम में कार को एक ऑब्जेक्ट के रूप में दर्शाया गया है, जिसमें कार की विशेषताओं (रंग, त्वरण आदि) को डेटा के रूप में और कार द्वारा किए गए कार्यों (ड्राइविंग, रोकना आदि) को विधियों के रूप में दर्शाया गया है।
[ओवरराइडिंग और ओवरलोडिंग]
- ओवरराइडिंग: पैरेंट क्लास में मौजूद विधि को चाइल्ड क्लास में फिर से परिभाषित करके उपयोग करना है। जब चाइल्ड क्लास में पैरेंट क्लास की विधि को बुलाया जाता है, तो पैरेंट क्लास की विधि के बजाय चाइल्ड क्लास में फिर से परिभाषित की गई विधि निष्पादित की जाती है। उदाहरण के लिए, Java में toString() विधि ओवरराइडिंग का एक उदाहरण है।
- ओवरलोडिंग: एक ही नाम की कई विधियों को परिभाषित करना है, लेकिन पैरामीटर के प्रकार और संख्या को अलग-अलग करना है ताकि विभिन्न प्रकार के कॉल का जवाब दिया जा सके। विभिन्न पैरामीटर होने के बावजूद, एक ही नाम की कई विधियां संचालित होती हैं। उदाहरण के लिए, Java में print() विधि ओवरलोडिंग का एक उदाहरण है।
[पृष्ठ प्रतिस्थापन एल्गोरिथम]
- FIFO: भौतिक मेमोरी में लोड किए गए सबसे पुराने पृष्ठ को बदल देता है। कंप्यूटर में होने वाला 'टास्कबार से बंद करें' भी FIFO एल्गोरिथम जैसा है। सबसे पहले लॉन्च किया गया प्रोग्राम सबसे अंत में दिखाई देता है और बंद हो जाता है।
- LRU: सबसे लंबे समय तक उपयोग नहीं किए गए पृष्ठ को बदल देता है। उन ऐप्स में से पुराने ऐप को बंद करना जो अक्सर उपयोग नहीं किए जाते हैं, 'ऐप बंद करें' ऐप भी LRU एल्गोरिथम जैसा है।
- LFU: सबसे कम रेफरेंस काउंट वाला पृष्ठ बदल देता है। उदाहरण के लिए, ब्राउज़र में खोले गए नए टैब में से सबसे कम उपयोग किए जाने वाले टैब को बंद करना 'टैब बंद करें' फीचर भी LFU एल्गोरिथम जैसा है।
- MFU: सबसे अधिक रेफरेंस काउंट वाला पृष्ठ बदल देता है। MFU एल्गोरिथम का उपयोग बहुत कम होता है।
[प्रक्रिया और थ्रेड]
- प्रक्रिया: ऑपरेटिंग सिस्टम से आवंटित किया गया निष्पादन कार्य इकाई, प्रोग्राम का अर्थ है। जब कई प्रक्रियाएं एक साथ चल रही होती हैं, तो प्रत्येक प्रक्रिया को एक स्वतंत्र मेमोरी क्षेत्र और CPU आवंटित किया जाता है।
- थ्रेड: प्रक्रिया के भीतर चलने वाली निष्पादन इकाई, जो प्रक्रिया द्वारा आवंटित संसाधनों को साझा करके चलती है। उदाहरण के लिए, वेब ब्राउज़र में प्रत्येक टैब एक प्रक्रिया नहीं है, बल्कि एक थ्रेड है।
[OSI 7Layer]
- एप्लीकेशन लेयर: उपयोगकर्ता और नेटवर्क को जोड़ने वाली परत, जिसमें HTTP, FTP, SMTP आदि प्रोटोकॉल शामिल हैं।
- प्रेजेंटेशन लेयर: डेटा प्रस्तुति के तरीके को परिभाषित करने वाली परत, जिसमें JPEG, MPEG, SSL आदि प्रोटोकॉल शामिल हैं।
- सत्र परत: संचार करने वाले दो सिस्टम के बीच सत्र का प्रबंधन करने वाली परत।
- परिवहन परत: डेटा ट्रांसफर के लिए जिम्मेदार परत, जिसमें TCP, UDP आदि प्रोटोकॉल शामिल हैं।
- नेटवर्क लेयर: डेटा ट्रांसफर के लिए मार्ग स्थापित करने वाली परत, जिसमें IP, ICMP आदि प्रोटोकॉल शामिल हैं।
- डेटा लिंक परत: भौतिक पते (MAC पते) द्वारा डेटा ट्रांसफर करने वाली परत, जिसमें ईथरनेट, टोकन रिंग आदि प्रोटोकॉल शामिल हैं।
- भौतिक परत: भौतिक कनेक्शन और ट्रांसमिशन मीडिया के लिए संचार के लिए जिम्मेदार परत।
[TCP और UDP]
- TCP: कनेक्शन-ओरिएंटेड सेवा, जो डेटा को विश्वसनीय रूप से ट्रांसफर करने का एक तरीका है। कनेक्शन स्थापित करने या समाप्त करने के लिए 3-वे हैंडशेकिंग और 4-वे हैंडशेकिंग का उपयोग करता है। उदाहरण के लिए, किसी वेबसाइट पर लॉग इन करते समय या फाइल ट्रांसफर करते समय, TCP का उपयोग किया जाता है।
- UDP: कनेक्शन रहित सेवा, जो डेटा ट्रांसफर के लिए सिग्नलिंग प्रक्रिया से नहीं गुजरती है, और डेटा की विश्वसनीयता कम है, लेकिन प्रसंस्करण गति तेज है। उदाहरण के लिए, वीडियो स्ट्रीमिंग या ऑनलाइन गेम जैसे मामलों में, जहां तेज ट्रांसफर महत्वपूर्ण है, UDP का उपयोग किया जाता है।