एक बार जब आप hello-world अभ्यास लागू कर लेते हैं, तो अगला काम है 20 से अधिक दूसरे अभ्यास लागू करना।
आप दो तरह के अभ्यास लागू कर सकते हैं:
सामान्य तौर पर, हम सलाह देते हैं कि नए ट्रैक प्रैक्टिस अभ्यास लागू करने से शुरुआत करें, क्योंकि इन्हें लागू करना आसान होता है और शुरू में इनके बारे में कम सोचना पड़ता है। कॉन्सेप्ट अभ्यास बाद में कभी भी जोड़े जा सकते हैं, जब आपका ट्रैक ठीक से चलने लगे।
ट्रैक को प्रैक्टिस अभ्यास लागू करने में मदद करने के लिए हमने exercism/problem-specifications रिपॉज़िटरी बनाई है। इस रिपॉज़िटरी में 100 से अधिक प्रैक्टिस अभ्यासों का मेटाडेटा मौजूद है, जिसका इस्तेमाल अलग-अलग ट्रैक इन अभ्यासों का अपने ट्रैक के लिए खास संस्करण लागू करने में कर सकते हैं। इसी कारण आपको कई अलग-अलग ट्रैक में वही अभ्यास लागू किए हुए मिलेंगे।
तो इस 100 से अधिक अभ्यासों की सूची में से आप 20 से अधिक कैसे चुनेंगे? यहाँ कुछ दिशानिर्देश दिए गए हैं।
इन 100 से अधिक अभ्यासों में इस्तेमाल होने वाले कॉन्सेप्ट में काफी विविधता है। आपका लक्ष्य ऐसे अभ्यास लागू करना होना चाहिए जिनसे विद्यार्थी कई तरह के कॉन्सेप्ट का अभ्यास करें। इसलिए स्ट्रिंग पर केंद्रित 20 अभ्यास लागू करने के बजाय अलग-अलग कॉन्सेप्ट पर केंद्रित अभ्यास लागू करने की कोशिश कीजिए।
यहाँ कुछ कॉन्सेप्ट और उनके नमूना अभ्यास दिए गए हैं:
| कॉन्सेप्ट | अभ्यास |
|---|---|
| बिट मैनिपुलेशन | allergies, secret-handshake |
| बूलियन | leap |
| क्लास | circular-buffer, robot-name |
| कंकरेंसी | bank-account |
| शर्तें | raindrops |
| तारीखें और समय | gigasecond, meetup |
| समानता | clock |
| दशमलव संख्याएँ | darts, space-age |
| लेज़ीनेस | alphametics, zebra-puzzle |
| ऐरे | resistor-color, spiral-matrix |
| लूप | collatz-conjecture, protein-translation |
| मैप | nucleotide-count |
| संख्याएँ | leap, grains |
| रैंडमनेस | dnd-character, robot-name |
| स्ट्रिंग | bob, isogram, |
| ट्री | binary-search-tree, pov |
कुछ अभ्यास लागू करना दूसरों से ज़्यादा कठिन होगा। आपका लक्ष्य अलग-अलग कठिनाई स्तर वाले अभ्यास लागू करना होना चाहिए: कुछ आसान, कुछ मध्यम और कुछ कठिन।
कोई अभ्यास कितना कठिन है, यह कई बातों पर निर्भर करता है, जैसे उसमें शामिल कॉन्सेप्ट और ट्रैक की भाषा। यह देखना मददगार हो सकता है कि जिन अन्य ट्रैक ने वह अभ्यास लागू किया है, उनमें वह कैसा दिखता है, ताकि आपको बेहतर अंदाज़ा हो सके कि उसे लागू करना कैसा लगेगा।
यहाँ कुछ कठिनाई स्तर और उनके अभ्यास दिए गए हैं:
| कठिनाई | अभ्यास |
|---|---|
| आसान | darts, gigasecond, isogram, leap, resistor-color, space-age |
| मध्यम | allergies, bob, meetup, protein-translation, raindrops, secret-handshake |
| कठिन | alphametics, forth, react, pov, zebra-puzzle, zipper |
सभी अभ्यास आपके ट्रैक के लिए उपयुक्त नहीं होंगे। आपको केवल वही अभ्यास चुनने चाहिए जो आपके ट्रैक के लिए उपयुक्त हों; ऐसा अभ्यास लागू करने से बेहतर है कि जिसका कोई अर्थ नहीं बनता, उसे लागू ही न किया जाए। उदाहरण के लिए, lens-person अभ्यास में विद्यार्थी को लेंस के साथ काम करना होता है, जिन्हें कई भाषाएँ सपोर्ट नहीं करतीं।
अगर आपको कोई ऐसा अभ्यास मिले जो आपके ट्रैक के लिए उपयुक्त न हो, तो आप उसका स्लग ट्रैक की config.json फ़ाइल में exercises.foregone ऐरे में जोड़ सकते हैं।
इससे यह पक्का हो जाएगा कि टूल उस अभ्यास को नज़रअंदाज़ कर दे।
इसे थोड़ा और ठोस बनाने के लिए, शुरुआती अभ्यासों का एक नमूना चयन ऐसा दिख सकता है:
| अभ्यास | कठिनाई | कॉन्सेप्ट |
|---|---|---|
| hello-world | आसान | कोई नहीं (शुरुआती अभ्यास) |
| leap | आसान | संख्याएँ, बूलियन |
| gigasecond | आसान | तारीखें और समय |
| isogram | आसान | स्ट्रिंग |
| resistor-color | आसान | ऐरे |
| nucleotide-count | आसान | मैप |
| collatz-conjecture | आसान | लूप |
| darts | आसान | दशमलव संख्याएँ |
| two-fer | आसान | स्ट्रिंग फ़ॉर्मैटिंग, वैकल्पिक आर्गुमेंट |
| high-scores | आसान | कलेक्शन प्रोसेसिंग |
| raindrops | मध्यम | शर्तें |
| bob | मध्यम | स्ट्रिंग |
| allergies | मध्यम | बिट मैनिपुलेशन |
| series | मध्यम | एक्सेप्शन |
| circular-buffer | मध्यम | क्लास |
| meetup | मध्यम | तारीखें और समय |
| yacht | मध्यम | ऐरे |
| dominoes | कठिन | टपल, लेज़ीनेस |
| diamond | कठिन | स्ट्रिंग फ़ॉर्मैटिंग |
| alphametics | कठिन | लेज़ीनेस |
| forth | कठिन | पार्सिंग |
अपने ट्रैक में शामिल करने के लिए अभ्यास चुन लेने के बाद, अगला कदम है उन्हें लागू करना। प्रैक्टिस अभ्यास जोड़ने के दस्तावेज़ में प्रैक्टिस अभ्यास जोड़ने के विस्तृत निर्देश दिए गए हैं।