ٻه ڪهاڻيون ڪيئن ANKI توهان جي مدد ڪري سگهي ٿي هڪ غير ملڪي ٻولي سکڻ ۽ انٽرويو لاء تيار ڪرڻ

مون کي هميشه يقين آهي ته هڪ سست پروگرامر هڪ سٺو پروگرامر آهي. ڇو؟ ڇو ته ڪنهن محنتي کي ڪجهه ڪرڻ لاءِ چيو، هو وڃي ڪري اهو ڪندو. ۽ هڪ سست پروگرامر 2-3 ڀيرا وڌيڪ وقت گذاريندو، پر هڪ اسڪرپٽ لکندو جيڪو هن لاء ڪندو. اهو پهريون ڀيرو ڪرڻ ۾ غير معقول حد تائين ڊگهو وقت وٺي سگھي ٿو، پر بار بار ڪمن سان اهو طريقو تمام جلدي ادا ڪندو. مان پاڻ کي هڪ سست پروگرامر سمجهان ٿو. اها ته اڳڪٿي هئي، هاڻي اچون ٿا ڌنڌي ڏانهن.

هڪ ڪهاڻي

ڪجهه سال اڳ مون سوچيو هو ته مان پنهنجي انگريزي کي ڪيئن بهتر ڪري سگهان ٿو. ادب پڙهڻ کان وڌيڪ ٻيو ڪجهه به ذهن ۾ نه آيو. مون هڪ اليڪٽرانڪ ريڊر خريد ڪيو، ڪتاب ڊائون لوڊ ڪيا ۽ مون پڙهڻ شروع ڪيو. پڙهڻ دوران مون کي اڻڄاتل لفظ نظر ايندا رهيا. مون انهن کي فوري طور تي پڙهندڙن ۾ ٺاهيل لغات استعمال ڪندي ترجمو ڪيو، پر مون هڪ خاصيت محسوس ڪئي: لفظن کي ياد رکڻ نه چاهيو. جڏهن مون کي اهو لفظ ٻيهر نظر آيو ته ڪجهه صفحا بعد، 90 سيڪڙو امڪان سان مون کي ٻيهر ترجمي جي ضرورت هئي، ۽ ائين هر ڀيري. نتيجو اهو نڪتو ته پڙهڻ دوران صرف اڻڄاتل لفظن جو ترجمو ڪرڻ ڪافي ناهي، توهان کي ڪجهه ٻيو ڪرڻ جي ضرورت آهي. مثالي اختيار اهو هوندو ته ان کي روزمره جي زندگيءَ ۾ متعارف ڪرايو وڃي ۽ ان کي استعمال ڪرڻ شروع ڪيو وڃي، پر مان انگريزي ڳالهائيندڙ ملڪ ۾ نه رهندس ۽ اهو ممڪن ناهي. پوءِ مون کي ياد آيو ته مون هڪ دفعو بابت پڙهيو هو وقفي واري ورجائي.

اهو ڇا آهي ۽ ان سان گڏ کاڌو ڇا آهي؟ مختصر ۾، هي آهي وسارڻ وارو وکروڪيپيڊيا مان وڌيڪ اقتباس:

اڳ ۾ ئي پهرين ڪلاڪ اندر، حاصل ڪيل معلومات جو 60 سيڪڙو تائين وساريو ويو آهي؛ ياد ڪرڻ کان 10 ڪلاڪ بعد، 35 سيڪڙو جيڪي سکيو ويو هو ياداشت ۾ رهي ٿو. پوءِ وسارڻ جو عمل آهستي آهستي اڳتي وڌي ٿو ۽ 6 ڏينهن کان پوءِ 20 سيڪڙو شروعاتي سکيل اکر ياداشت ۾ رهي ٿو ۽ ساڳئي رقم هڪ مهيني کان پوءِ ياداشت ۾ رهي ٿي.

۽ اتان جو نتيجو

هن وکر جي بنياد تي جيڪي نتيجا ڪڍي سگهجن ٿا، اهي هي آهن ته مؤثر يادگار لاءِ ضروري آهي ته يادگار مواد کي ورجايو وڃي.

تنهنڪري اسان کي هڪ خيال آيو وقفي واري ورجائي.

اينڪي هڪ مڪمل طور تي مفت ۽ کليل ذريعو پروگرام آهي جيڪو وقفي واري ورجائي جي خيال کي لاڳو ڪري ٿو. آسان لفظ ۾، ڪمپيوٽرائيزڊ فليش ڪارڊ ۾ هڪ پاسي هڪ سوال ۽ ٻئي طرف جواب هوندو آهي. جيئن توهان باقاعده استعمال ڪندي سوال/جواب ڪري سگهو ٿا html/css/javascript، پوءِ اسان چئي سگهون ٿا ته ان ۾ واقعي لامحدود امڪان آهن. ان کان سواء، ان کي خاص سان expandable آهي پلگ ان، ۽ انهن مان هڪ مستقبل ۾ اسان لاءِ تمام ڪارآمد ثابت ٿيندو.

هٿرادو ڪارڊ ٺاهڻ ڊگھو، مشڪل ۽ وڏي امڪان سان، ٿوري دير کان پوءِ توهان هن ڪم کي وساري ويهندؤ، ۽ پوءِ ڪجهه وقت تي مون پاڻ کان اهو سوال پڇيو ته، ڇا اهو ممڪن آهي ته هن ڪم کي خودڪار ڪرڻ. جواب آهي ها، توهان ڪري سگهو ٿا. ۽ مون ڪيو. مان فوري طور تي چوندس، اهو وڌيڪ آهي POC (تصور جو ثبوت)، پر جيڪو استعمال ڪري سگهجي ٿو. جيڪڏهن صارفن جي دلچسپي آهي ۽ ٻيا ڊولپر شامل ٿي وڃن ٿا، ته پوءِ ان کي مڪمل پراڊڪٽ تي آڻي سگهجي ٿو، جنهن کي ٽيڪنيڪل طور اڻ پڙهيل استعمال ڪندڙ به استعمال ڪري سگهن ٿا. هاڻي، منهنجي يوٽيلٽي کي استعمال ڪندي پروگرامنگ جي ڪجهه ڄاڻ جي ضرورت آهي.

مان پروگرام استعمال ڪندي ڪتاب پڙهندو آهيان ائر ايڊر. ان ۾ خارجي لغتن کي ڳنڍڻ جي صلاحيت آهي، ۽ جڏهن توهان هڪ لفظ جو ترجمو ڪيو ٿا، اهو لفظ محفوظ ڪري ٿو جيڪو توهان ترجمو ڪرڻ لاءِ سڏيو آهي ٽيڪسٽ فائل ۾. باقي رهي ٿو انهن لفظن کي ترجمو ڪرڻ ۽ ANKI ڪارڊ ٺاهڻ.

شروع ۾ مون ترجمي لاءِ استعمال ڪرڻ جي ڪوشش ڪئي گوگل ٽرانسليٽ, Lingvo API وغيره پر شيون مفت خدمتن سان ڪم نه ٿيون. مون ترقي جي عمل دوران آزاد حد کي ختم ڪيو، ان کان علاوه، لائسنس جي شرطن جي مطابق، مون کي لفظن کي ڪيش ڪرڻ جو حق نه هو. ڪجهه نقطي تي مون محسوس ڪيو ته مون کي لفظن جو ترجمو ڪرڻ جي ضرورت آهي. نتيجي طور، هڪ ماڊل لکيو ويو dsl2html جنهن سان توهان ڳنڍي سگهو ٿا DSL لغات ۽ ڪير ڄاڻي ٿو ته انهن کي ڪيئن تبديل ڪجي HTML فارميٽ.

ھي اھو آھي جيڪو لغت ۾ داخل ٿئي ٿو * ۾.html، منهنجو اختيار اختيار جي مقابلي ۾ گولڊن ڊڪٽ

ٻه ڪهاڻيون ڪيئن ANKI توهان جي مدد ڪري سگهي ٿي هڪ غير ملڪي ٻولي سکڻ ۽ انٽرويو لاء تيار ڪرڻ

جڙيل لغات ۾ لفظ ڳولڻ کان اڳ، مان آڻيان ٿو ڊڪشنري فارم (ليما) لائبريري استعمال ڪندي اسٽينفورڊ ڪور اين ايل پي. حقيقت ۾، هن لائبريري جي ڪري، مون جاوا ۾ لکڻ شروع ڪيو ۽ اصل منصوبو اهو هو ته هر شي جاوا ۾ لکان، پر ان عمل ۾ مون کي لائبريري مليو. node-java جنهن سان توهان نسبتا آساني سان جاوا ڪوڊ کي nodejs مان ايگزيڪيوٽو ڪري سگهو ٿا ۽ ڪجهه ڪوڊ جاوا اسڪرپٽ ۾ لکيل آهن. جيڪڏهن مون کي هي لائبريري اڳ ۾ ملي ها ته جاوا ۾ هڪ به سٽ نه لکي ها. هڪ ٻي پاسي جو منصوبو جيڪو عمل ۾ پيدا ٿيو هو تخليق آهي DSL دستاويزن سان گڏ مخزن جيڪو نيٽ ورڪ تي فارميٽ ۾ مليو هو *.chm، تبديل ڪيو ۽ خدائي روپ ۾ آندو. جيڪڏهن اصل فائل جو ليکڪ nickname طرفان صارف آهي يوزڪ جڏهن هو هي مضمون ڏسي ٿو، مان هن جو تمام گهڻو شڪرگذار آهيان جيڪو هن ڪيو آهي؛ هن جي دستاويزن کان سواء، مان گهڻو ڪري ڪامياب نه ٿي سگهان ها.

تنهن ڪري، مون وٽ انگريزيءَ ۾ هڪ لفظ آهي، ان جي ڊڪشنري فارميٽ ۾ *.htmlباقي اهو آهي ته هر شي کي گڏ ڪرڻ لاء، لفظن جي فهرست مان ANKI آرٽيڪل ٺاهيو ۽ انهن کي ANKI ڊيٽابيس ۾ داخل ڪريو. هن مقصد لاء هيٺيون پروجيڪٽ ٺاهي وئي data2anki. اهو لفظن جي لسٽ وٺي سگھي ٿو جيئن ان پٽ، ترجمو، ٺاھيو ANKI *.html آرٽيڪل ۽ انهن کي ANKI ڊيٽابيس ۾ رڪارڊ ڪريو. مضمون جي آخر ۾، ان کي ڪيئن استعمال ڪرڻ لاء هدايتون آهن. ساڳئي وقت ۾، ٻي ڪهاڻي آهي جتي وقفي واري ورهاڱي ڪارائتو ٿي سگهي ٿي.

ٻي ڪهاڻي.

سڀ ماڻهو هڪ وڌيڪ/گهٽ لائق خاصيت جي ڳولا ۾، بشمول پروگرامر، هڪ انٽرويو لاءِ تيار ٿيڻ جي ضرورت کي منهن ڏئي رهيا آهن. ڪيترا ئي تصور جيڪي انٽرويو ۾ پڇيا ويا آهن جيڪي توهان روزمره جي مشق ۾ استعمال نٿا ڪن ۽ اهي وساري ويا آهن. جڏهن هڪ انٽرويو جي تياري ڪندي، نوٽس، هڪ ڪتاب، هڪ ريفرنس بڪ ذريعي ڦريندي، مون کي ان حقيقت سان منهن ڏيڻو پيو ته ان معلومات کي ڪڍڻ ۾ تمام گهڻو وقت ۽ توجه جي ضرورت آهي جيڪا توهان اڳ ۾ ئي ڄاڻو ٿا ڇاڪاڻ ته اهو هميشه واضح ناهي ۽ توهان کي ڪرڻو پوندو. ان کي غور سان پڙھو سمجھڻ لاءِ ته اھو ڇا آھي غير لاڳاپيل. جڏهن توهان هڪ موضوع تي ايندا آهيو جنهن کي واقعي بار بار ڪرڻ جي ضرورت آهي، اهو اڪثر ڪري ٿو ته توهان اڳ ۾ ئي ٿڪل آهيو ۽ توهان جي تياري جي معيار کي نقصان پهچايو آهي. ڪجهه نقطي تي مون سوچيو، ڇو نه ان لاء پڻ ANKI ڪارڊ استعمال ڪيو وڃي؟ مثال طور، جڏهن ڪنهن موضوع تي نوٽس وٺو، فوري طور تي سوال ۽ جواب جي صورت ۾ هڪ نوٽ ٺاهيو، ۽ پوءِ جڏهن توهان ان کي ورجائيندا، توهان کي فوري طور تي معلوم ٿيندو ته توهان کي ان سوال جو جواب معلوم آهي يا نه.

صرف مسئلو اهو پيدا ٿيو ته سوالن کي ٽائپ ڪرڻ تمام ڊگهو ۽ مشڪل هو. عمل کي آسان ڪرڻ لاء، data2anki پروجيڪٽ مون کي تبديل ڪرڻ جي ڪارڪردگي شامل ڪئي نشان ANKI ڪارڊ ۾ متن. توهان کي صرف هڪ وڏي فائل لکڻ جي ضرورت آهي جنهن ۾ سوالن ۽ جوابن کي اکرن جي اڳواٽ ترتيب سان نشان لڳل هوندو، جنهن سان پارسر سمجهي سگهندو ته سوال ڪٿي آهي ۽ جواب ڪٿي آهي.

هڪ دفعو هي فائل ٺاهي وئي آهي، توهان هلائيندا آهيو data2anki ۽ اهو ٺاهي ٿو ANKI ڪارڊ. اصل فائل کي ايڊٽ ڪرڻ ۽ شيئر ڪرڻ ۾ آسان آهي، توهان کي صرف لاڳاپيل ڪارڊ ختم ڪرڻ جي ضرورت آهي ۽ پروگرام کي ٻيهر هلائڻو پوندو، ۽ هڪ نئون ورزن ٺاهيو ويندو.

انسٽاليشن ۽ استعمال

  1. انسٽال ڪرڻ ANKI + AnkiConnect

    1. ڊائون لوڊ ڪريو ANKI هتان کان: https://apps.ankiweb.net/
    2. انسٽال ڪريو AnkiConnect پلگ ان: https://ankiweb.net/shared/info/2055492159

  2. تنصيب data2anki

    1. ڊائون لوڊ ڪريو data2anki github مخزن کان
      git clone https://github.com/anatoly314/data2anki
    2. انحصار کي انسٽال ڪريو
      cd data2anki && npm install
    3. ڊائون لوڊ ڪريو جاوا انحصار https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip
    4. پيڪنگ ڪرڻ jar-dependencies.zip ۽ ان جو مواد داخل ڪريو data2anki/java/jars

  3. لفظن جو ترجمو ڪرڻ لاءِ استعمال ڪريو:

    1. فائل ۾ data2anki/config.json:

      • چاٻي ۾ صورت قدر داخل ڪريو dsl2anki

      • چاٻي ۾ modules.dsl.anki.deckName и modules.dsl.anki.modelName مطابق لکڻ ڊيڪ جو نالو и ماڊل جو نالو (ڪارڊ ٺاهڻ کان اڳ ۾ ئي ٺاھيو وڃي). في الحال صرف ماڊل قسم جي حمايت ڪئي وئي آهي بنيادي:

        اڳيان ۽ پوئتي فيلڊ آهن، ۽ هڪ ڪارڊ ٺاهيندو. جيڪو ٽيڪسٽ توهان فرنٽ ۾ داخل ڪيو اهو ڪارڊ جي سامهون ظاهر ٿيندو، ۽ ٽيڪسٽ جيڪو توهان واپس داخل ڪيو اهو ڪارڊ جي پوئين پاسي ظاهر ٿيندو.

        اصل لفظ ڪٿي آهي؟ سامهون ميدان، ۽ ترجمو ان ۾ ٿيندو پوئتي ميدان.

        سپورٽ شامل ڪرڻ ۾ ڪو مسئلو ناهي بنيادي (۽ واپس ڪارڊ)، جتي لفظ ۽ ترجمي لاءِ هڪ ريورس ڪارڊ ٺاهيو ويندو، جتي ترجمي جي بنياد تي توهان کي اصل لفظ ياد رکڻو پوندو. توهان کي صرف وقت ۽ خواهش جي ضرورت آهي.

      • چاٻي ۾ modules.dsl.dictionariesPath ڳنڍيل سان گڏ هڪ صف رجسٽر ڪريو *.dsl لغات. هر ڳنڍيل ڊڪشنري هڪ ڊاريڪٽري آهي جنهن ۾ ڊڪشنري فائلون فارميٽ جي مطابق موجود آهن: DSL لغت جي جوڙجڪ

      • چاٻي ۾ modules.dsl.wordToTranslatePath انھن لفظن جي لسٽ ڏانھن رستو داخل ڪريو جيڪي توھان ترجمو ڪرڻ چاھيو ٿا.

    2. ANKI ايپليڪيشن سان لانچ ڪريو
      node data2ankiindex.js
    3. منافعو!!!

  4. مارڪ ڊائون مان ڪارڊ ٺاهڻ لاءِ استعمال ٿئي ٿو

    1. فائل ۾ data2anki/config.json:

      • چاٻي ۾ صورت قدر داخل ڪريو markdown2anki
      • چاٻي ۾ modules.markdown.anki.deckName и modules.dsl.anki.modelName مطابق لکڻ ڊيڪ جو نالو и ماڊل جو نالو (ڪارڊ ٺاهڻ کان اڳ ۾ ئي ٺاھيو وڃي). لاءِ markdown2anki موڊ صرف ماڊل قسم جي حمايت ڪئي وئي آهي بنيادي.
      • چاٻي ۾ modules.markdown.selectors.startQuestionSelectors и modules.markdown.selectors.startAnswerSelectors توهان چونڊيندڙ لکندا آهيو جنهن سان توهان ترتيب سان سوال ۽ جواب جي شروعات کي نشان لڳايو. سليڪٽر سان ليڪ پاڻ کي پارس نه ڪيو ويندو ۽ ڪارڊ ۾ ختم نه ٿيندو؛ پارسر ايندڙ لائن کان ڪم ڪرڻ شروع ڪندو.

        مثال طور، هي سوال/جواب ڪارڊ:

        ٻه ڪهاڻيون ڪيئن ANKI توهان جي مدد ڪري سگهي ٿي هڪ غير ملڪي ٻولي سکڻ ۽ انٽرويو لاء تيار ڪرڻ

        اهو هن طرح نظر ايندو markdown ۾:
        # سوال# ## سوال 5. هڪ mul فنڪشن لکو جيڪو صحيح ڪم ڪندو جڏهن هيٺين نحو سان گڏ ڪيو ويندو. ```javascript console.log(mul(2)(3)(4))؛ // آئوٽ: 24 console.log(mul(4)(3)(4)); // output : 48 ``` #ANSWER# هيٺ ڏنل ڪوڊ آهي جنهن جي پٺيان وضاحت آهي ته اهو ڪيئن ڪم ڪري ٿو: ```جاوا اسڪرپٽ فنڪشن mul (x) { return function (y) { // anonymous function return function (z) { // گمنام فنڪشن واپسي x * y * z؛ }؛ }؛ } ``` هتي `mul` فنڪشن پهرين آرگيومينٽ کي قبول ڪري ٿو ۽ واپس ڪري ٿو گمنام فنڪشن جيڪو ٻيو پيرا ميٽر وٺي ٿو ۽ واپس ڪري ٿو گمنام فنڪشن جيڪو ٽيون پيراميٽر وٺي ٿو ۽ واپس ڪري ٿو دليلن جو ضرب جيڪو لڳاتار پاس ڪيو پيو وڃي جاوا اسڪرپٽ فنڪشن ۾ بيان ڪيو ويو آهي. اندر کي ٻاهرين فنڪشن variable تائين پهچ آهي ۽ فنڪشن فرسٽ ڪلاس آبجیکٹ آهي ان ڪري ان کي پڻ فنڪشن ذريعي واپس ڪري سگهجي ٿو ۽ ٻئي فنڪشن ۾ دليل طور پاس ڪيو ويو آهي. - هڪ فنڪشن شئي جي قسم جو هڪ مثال آهي - هڪ فنڪشن ملڪيت رکي سگهي ٿو ۽ ان جي تعمير ڪندڙ طريقي سان واپس لنڪ رکي ٿو - هڪ فنڪشن کي متغير طور محفوظ ڪري سگهجي ٿو - هڪ فنڪشن ٻئي فنڪشن کي پيراميٽر جي طور تي منتقل ڪري سگهجي ٿو - هڪ فنڪشن ٿي سگهي ٿو. ٻئي فنڪشن کان واپس
        

        هتي مان ورتو ويو مثال: 123-جاوا اسڪرپٽ-انٽرويو-سوال

        پروجيڪٽ فولڊر ۾ مثالن سان گڏ هڪ فائل پڻ آهي examples/markdown2anki-example.md

      • چاٻي ۾ modules.markdown.pathToFile
        فائل ڏانهن رستو لکو جتي *.d سوال / جواب فائل

    2. ANKI ايپليڪيشن سان لانچ ڪريو
      node data2ankiindex.js
    3. منافعو!!!

هي اهو آهي جيڪو موبائل فون تي نظر اچي ٿو:

نتيجي ۾

ANKI جي ڊيسڪ ٽاپ ورزن تي وصول ڪيل ڪارڊ ANKI ڪلائوڊ (100 ايم بي تائين مفت) سان مسئلن جي بغير هم وقت سازي ڪيا ويا آهن، ۽ پوء توهان انهن کي هر جڳهه استعمال ڪري سگهو ٿا. اينڊرائيڊ ۽ آئي فون لاءِ ڪلائنٽ موجود آهن، ۽ توهان ان کي برائوزر ۾ به استعمال ڪري سگهو ٿا. نتيجي طور، جيڪڏهن توهان وٽ وقت آهي ته توهان وٽ خرچ ڪرڻ لاء ڪجهه به ناهي، ته پوء بغير ڪنهن مقصد جي فيس بوڪ يا انسٽاگرام تي ڪيٽس ذريعي اسڪالر ڪرڻ جي بدران، توهان ڪجهه نئون سکي سگهو ٿا.

چرچا

جيئن مون ذڪر ڪيو آهي، اهو هڪ ڪم ڪندڙ POC کان وڌيڪ آهي جيڪو توهان استعمال ڪري سگهو ٿا ختم ٿيل پيداوار کان. اٽڪل 30٪ DSL parser معيار تي عمل نه ڪيو ويو آهي، ۽ تنهن ڪري، مثال طور، لغت ۾ موجود سڀئي ڊڪشنريون نه ملي سگھن ٿيون، ان کي ٻيهر لکڻ لاءِ پڻ هڪ خيال آهي JavaScript، ڇاڪاڻ ته مان چاهيان ٿو "مسلسل"، ۽ ان کان علاوه، هاڻي اهو تمام سٺو نه لکيو ويو آهي. هاڻي پارسر هڪ وڻ ٺاهي رهيو آهي، پر منهنجي خيال ۾ اهو غير ضروري آهي ۽ ڪوڊ کي پيچيده ڪرڻ جي ضرورت ناهي. IN markdown2anki موڊ، تصويرن کي پارس نه ڪيو ويو آهي. مان ڪوشش ڪندس ته ٿورڙو ڪٽڻ جي، پر جيئن ته مان پنهنجي لاءِ لکي رهيو آهيان، ان ڪري سڀ کان پهرين آئون پاڻ ئي مسئلن جو حل ڪندس، پر جيڪڏهن ڪو مدد ڪرڻ چاهي ته ڀليڪار. جيڪڏهن توهان وٽ پروگرام بابت سوال آهن، مون کي لاڳاپيل منصوبن ۾ کليل مسئلن جي ذريعي مدد ڪرڻ ۾ خوشي ٿي ويندي. هتي ٻيون تنقيدون ۽ تجويزون لکو. مون کي اميد آهي ته هي پروجيڪٽ ڪنهن کي مفيد ٿيندو.

PS جيڪڏهن توهان ڪي غلطيون محسوس ڪيون (۽، بدقسمتي سان، ڪجهه آهن)، مون کي ذاتي پيغام ۾ لکو، مان هر شي کي درست ڪندس.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو