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