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