Awọn itan meji ti bii ANKI ṣe le ṣe iranlọwọ fun ọ lati kọ ede ajeji ati murasilẹ fun awọn ifọrọwanilẹnuwo

Mo nigbagbogbo gbagbọ pe olutọpa ọlẹ jẹ olutọpa ti o dara. Kí nìdí? Nitoripe beere lọwọ oṣiṣẹ lile lati ṣe ohun kan, yoo lọ ṣe e. Ati pe olutọpa ọlẹ yoo lo awọn akoko 2-3 diẹ sii, ṣugbọn yoo kọ iwe afọwọkọ ti yoo ṣe fun u. O le gba akoko pipẹ ti ko ni imọran lati ṣe eyi ni igba akọkọ, ṣugbọn pẹlu awọn iṣẹ ṣiṣe ti o tun ṣe, ọna yii yoo sanwo ni kiakia. Mo ro ara mi a ọlẹ pirogirama. Iyẹn ni iṣaaju, ni bayi jẹ ki a sọkalẹ lọ si iṣowo.

Ìtàn kìíní

Ni ọdun diẹ sẹhin Mo ṣe iyalẹnu bawo ni MO ṣe le ṣe ilọsiwaju Gẹẹsi mi. Ko si ohun ti o dara julọ wa si ọkan ju kika iwe. Mo ra oluka itanna kan, awọn iwe ti a gba lati ayelujara ati pe Mo bẹrẹ kika. Bí mo ṣe ń ka ìwé náà, mo máa ń bá àwọn ọ̀rọ̀ tí kò mọ̀ rí. Mo ṣe itumọ wọn lẹsẹkẹsẹ ni lilo awọn iwe-itumọ ti a ṣe sinu oluka, ṣugbọn Mo ṣe akiyesi ẹya kan: awọn ọrọ naa ko fẹ lati ranti. Nigbati mo tun pade ọrọ yii ni awọn oju-iwe diẹ lẹhinna, pẹlu iṣeeṣe 90% Mo tun nilo itumọ lẹẹkansi, ati pe eyi ṣẹlẹ ni gbogbo igba. Ipari ni pe ko to lati tumọ awọn ọrọ ti ko mọ nirọrun lakoko kika, o nilo lati ṣe nkan miiran. Aṣayan ti o dara julọ yoo jẹ lati ṣafihan rẹ sinu igbesi aye ojoojumọ ati bẹrẹ lilo rẹ, ṣugbọn Emi ko gbe ni orilẹ-ede Gẹẹsi ati pe eyi ko ṣeeṣe. Lẹhinna Mo ranti pe Mo ti ka nipa rẹ lẹẹkan Atunwo aaye.

Kini o jẹ ati kini o jẹun pẹlu? Ni kukuru, eyi wa igbagbe ti tẹ, sọ siwaju lati Wikipedia:

Tẹlẹ laarin wakati akọkọ, o to 60% ti gbogbo alaye ti o gba ti gbagbe; Awọn wakati 10 lẹhin iranti, 35% ti ohun ti a kọ wa ni iranti. Lẹhinna ilana ti gbagbe n tẹsiwaju laiyara, ati lẹhin awọn ọjọ 6 nipa 20% ti nọmba lapapọ ti awọn syllables akọkọ ti a kọkọ wa ni iranti, ati pe iye kanna wa ni iranti lẹhin oṣu kan.

Ati ipari lati ibi

Awọn ipinnu ti o le fa ti o da lori ọna yii ni pe fun iranti ti o munadoko o jẹ dandan lati tun awọn ohun elo ti o ti kọ sori.

Nitorina a wa pẹlu imọran kan àlàfo atunwi.

KANKI jẹ ọfẹ ọfẹ ati eto orisun ṣiṣi ti o ṣe imuse imọran ti atunwi aaye. Ni irọrun, awọn kaadi filasi kọnputa ni ibeere ni ẹgbẹ kan ati idahun ni ekeji. Niwọn igba ti o le ṣe awọn ibeere / awọn idahun ni lilo deede html/css/javascript, ki o si a le so pe o ni iwongba ti limitless o ṣeeṣe. Ni afikun, o jẹ expandable pẹlu pataki awọn afikun, ati ọkan ninu wọn yoo wulo pupọ fun wa ni ojo iwaju.

Ṣiṣe awọn kaadi pẹlu ọwọ jẹ pipẹ, tedious, ati pẹlu iṣeeṣe giga, lẹhin igba diẹ iwọ yoo gbagbe nipa iṣẹ yii, ati pe ni aaye kan Mo beere lọwọ ara mi ni ibeere naa, ṣe o ṣee ṣe lati ṣe adaṣe iṣẹ yii. Idahun si jẹ bẹẹni, o le. Mo si ṣe. Emi yoo sọ lẹsẹkẹsẹ, o jẹ diẹ sii POC (Ẹri ti imọran), ṣugbọn eyi ti o le ṣee lo. Ti iwulo ba wa lati ọdọ awọn olumulo ati awọn idagbasoke miiran, lẹhinna o le mu wa si ọja ti o pari ti paapaa awọn olumulo alaimọ-imọ-ẹrọ le lo. Bayi, lilo ohun elo mi nilo imọ diẹ ti siseto.

Mo ka awọn iwe ni lilo eto naa AI Reader. O ni agbara lati so awọn iwe-itumọ ita pọ, ati nigbati o ba tumọ ọrọ kan, o fipamọ ọrọ ti o pe fun itumọ si faili ọrọ. Gbogbo ohun ti o ku ni lati tumọ awọn ọrọ wọnyi ati ṣẹda awọn kaadi ANKI.

Ni akọkọ Mo gbiyanju lati lo fun itumọ tumo gugulu, Lingvo API ati be be lo. Ṣugbọn awọn nkan ko ṣiṣẹ pẹlu awọn iṣẹ ọfẹ. Mo ti re opin ọfẹ lakoko ilana idagbasoke, ni afikun, ni ibamu si awọn ofin iwe-aṣẹ, Emi ko ni ẹtọ si awọn ọrọ kaṣe. Ni aaye kan Mo rii pe Mo nilo lati tumọ awọn ọrọ naa funrararẹ. Bi abajade, a ti kọ module kan dsl2html eyiti o le sopọ si Awọn iwe-itumọ DSL ati awọn ti o mọ bi o lati se iyipada wọn sinu HTML ọna kika.

Eyi ni ohun ti titẹ sii iwe-itumọ dabi ninu *.html, aṣayan mi akawe si aṣayan GoldenDict

Awọn itan meji ti bii ANKI ṣe le ṣe iranlọwọ fun ọ lati kọ ede ajeji ati murasilẹ fun awọn ifọrọwanilẹnuwo

Ṣaaju wiwa ọrọ kan ninu awọn iwe-itumọ ti o sopọ, Mo mu wa si fọọmu iwe-itumọ (lemma) lilo ìkàwé Stanford CoreNLP. Ni otitọ, nitori ile-ikawe yii, Mo bẹrẹ kikọ ni Java ati pe ero atilẹba ni lati kọ ohun gbogbo ni Java, ṣugbọn ninu ilana Mo rii ile-ikawe naa. ipade-java pẹlu eyiti o le ni irọrun ni irọrun ṣiṣẹ koodu Java lati awọn nodejs ati diẹ ninu koodu ti kọ ni JavaScript. Ti mo ba ti rii ile-ikawe yii ni iṣaaju, ko si laini kan ti a ti kọ ni Java. Ise agbese ẹgbẹ miiran ti a bi ninu ilana jẹ ẹda ibi ipamọ pẹlu DSL iwe eyiti a rii lori nẹtiwọọki ni ọna kika *.chm, iyipada ati ki o mu sinu Ibawi fọọmu. Ti onkọwe faili atilẹba jẹ olumulo nipasẹ oruko apeso yozhic Nígbà tó rí àpilẹ̀kọ yìí, mo dúpẹ́ lọ́wọ́ rẹ̀ gan-an fún iṣẹ́ tó ṣe; láìjẹ́ pé ìwé tó kọ, ó ṣeé ṣe kí n má ti ṣàṣeyọrí.

Nitorinaa, Mo ni ọrọ kan ni Gẹẹsi, titẹsi iwe-itumọ rẹ ni ọna kika *.html, Gbogbo ohun ti o ku ni lati fi ohun gbogbo papọ, ṣẹda awọn nkan ANKI lati atokọ ti awọn ọrọ ki o tẹ wọn sinu ibi ipamọ data ANKI. Fun idi eyi a ṣẹda ise agbese ti o tẹle data2anki. O le gba atokọ ti awọn ọrọ bi titẹ sii, tumọ, ṣẹda ANKI *.html awọn nkan ati ṣe igbasilẹ wọn sinu data data ANKI. Ni ipari nkan naa awọn itọnisọna wa lori bi o ṣe le lo. Lakoko, itan keji ni ibi ti awọn atunwi aaye le wulo.

Itan keji.

Gbogbo eniyan ti o wa ni wiwa pataki diẹ sii / kere si, pẹlu awọn pirogirama, ni o dojuko pẹlu iwulo lati mura silẹ fun ifọrọwanilẹnuwo. Ọpọlọpọ awọn imọran ti a beere ni awọn ifọrọwanilẹnuwo ti o ko lo ninu iṣe ojoojumọ ati pe wọn gbagbe. Nigbati o ba n murasilẹ fun ifọrọwanilẹnuwo, yiyi pada nipasẹ awọn akọsilẹ, iwe kan, iwe itọkasi, Mo dojuko pẹlu otitọ pe o gba akoko pupọ ati akiyesi lati yọkuro alaye ti o ti mọ tẹlẹ nitori kii ṣe nigbagbogbo han ati pe o ni lati ka daradara lati ni oye ohun ti o jẹ ko ṣe pataki. Nigbati o ba wa si koko kan ti o nilo lati tun ṣe gaan, o maa n ṣẹlẹ pe o ti rẹ rẹ tẹlẹ ati pe didara igbaradi rẹ n jiya. Ni aaye kan Mo ro pe, kilode ti o ko lo awọn kaadi ANKI fun eyi paapaa? Fun apẹẹrẹ, nigbati o ba n ṣe akọsilẹ lori koko-ọrọ, lẹsẹkẹsẹ ṣẹda akọsilẹ ni irisi ibeere ati idahun, lẹhinna nigbati o ba tun ṣe, iwọ yoo mọ lẹsẹkẹsẹ boya o mọ idahun si ibeere yii tabi rara.

Iṣoro kan ṣoṣo ti o dide ni pe titẹ awọn ibeere ti gun pupọ ati pe o nira. Lati jẹ ki ilana naa rọrun, data2anki ise agbese Mo ti fi kun iyipada iṣẹ samisi ọrọ ni ANKI awọn kaadi. Gbogbo ohun ti o nilo ni lati kọ faili nla kan ninu eyiti awọn ibeere ati awọn idahun yoo jẹ samisi pẹlu ọna ti a ti pinnu tẹlẹ ti awọn kikọ, nipasẹ eyiti parser yoo loye ibiti ibeere naa wa ati nibiti idahun naa wa.

Ni kete ti a ṣẹda faili yii, o ṣiṣẹ data2anki ati pe o ṣẹda awọn kaadi ANKI. Faili atilẹba jẹ rọrun lati satunkọ ati pin, o kan nilo lati nu awọn kaadi (s) ti o baamu ati ṣiṣe eto naa lẹẹkansi, ati pe ẹya tuntun yoo ṣẹda.

Fifi sori ẹrọ ati lilo

  1. Fifi ANKI + AnkiConnect

    1. Ṣe igbasilẹ ANKI lati ibi: https://apps.ankiweb.net/
    2. Fi sori ẹrọ itanna AnkiConnect: https://ankiweb.net/shared/info/2055492159

  2. eto data2anki

    1. Gba lati ayelujara data2anki lati ibi ipamọ github
      git clone https://github.com/anatoly314/data2anki
    2. Fi awọn igbẹkẹle sori ẹrọ
      cd data2anki && npm install
    3. Ṣe igbasilẹ awọn igbẹkẹle Java https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip
    4. Ṣiṣi silẹ idẹ-dependencies.zip ki o si fi awọn akoonu rẹ sinu data2anki/java/pọn

  3. Lo lati tumọ awọn ọrọ:

    1. Ninu faili data2anki/config.json:

      • ninu bọtini mode tẹ iye dsl2anki

      • ninu bọtini modules.dsl.anki.deckOrukọ и modules.dsl.anki.modelOrukọ kọ accordingly Dekini Name и awoṣe Name (gbọdọ tẹlẹ ṣẹda ṣaaju ṣiṣẹda awọn kaadi). Lọwọlọwọ iru awoṣe nikan ni atilẹyin ipilẹ:

        Ni awọn aaye iwaju ati ẹhin, ati pe yoo ṣẹda kaadi kan. Ọrọ ti o tẹ ni Iwaju yoo han ni iwaju kaadi, ati ọrọ ti o tẹ Back yoo han ni ẹhin kaadi naa.

        nibo ni ọrọ atilẹba wa? Aaye iwaju, ati pe itumọ yoo wa ninu Pada aaye.

        Ko si iṣoro lati ṣafikun atilẹyin Ipilẹ (ati kaadi iyipada), nibiti kaadi iyipada yoo ti ṣẹda fun ọrọ ati itumọ, nibiti o da lori itumọ iwọ yoo nilo lati ranti ọrọ atilẹba. Gbogbo ohun ti o nilo ni akoko ati ifẹ.

      • ninu bọtini modules.dsl.dictionariesPath forukọsilẹ eto pẹlu asopọ *.dsl iwe-itumọ. Itumọ-itumọ kọọkan ti a ti sopọ jẹ itọsọna kan ninu eyiti awọn faili iwe-itumọ wa ni ibamu pẹlu ọna kika: DSL dictionary be

      • ninu bọtini modules.dsl.wordToTranslatePath tẹ ọna si atokọ awọn ọrọ ti o fẹ tumọ.

    2. Lọlẹ pẹlu ohun elo ANKI nṣiṣẹ
      node data2ankiindex.js
    3. ERE!!!

  4. Nlo fun ṣiṣẹda awọn kaadi lati markdown

    1. Ninu faili data2anki/config.json:

      • ninu bọtini mode tẹ iye markdown2anki
      • ninu bọtini modules.markdown.anki.deckName и modules.dsl.anki.modelOrukọ kọ accordingly Dekini Name и awoṣe Name (gbọdọ tẹlẹ ṣẹda ṣaaju ṣiṣẹda awọn kaadi). Fun markdown2anki mode iru awoṣe nikan ni atilẹyin ipilẹ.
      • ninu bọtini modules.markdown.selectors.startQuestionSelectors и modules.markdown.selectors.startAnswerSelectors o kọ awọn yiyan pẹlu eyiti o samisi ibẹrẹ ibeere ati idahun, lẹsẹsẹ. Laini pẹlu oluyan funrararẹ kii yoo ṣe itọka ati pe kii yoo pari ni kaadi; parser yoo bẹrẹ ṣiṣẹ lati laini atẹle.

        Fun apẹẹrẹ, ibeere/kaadi idahun:

        Awọn itan meji ti bii ANKI ṣe le ṣe iranlọwọ fun ọ lati kọ ede ajeji ati murasilẹ fun awọn ifọrọwanilẹnuwo

        Yoo dabi eyi ni isamisi:
        #IBEERE# ## Ibeere 5. Kọ iṣẹ mul kan ti yoo ṣiṣẹ daradara nigbati o ba pe pẹlu sintasi atẹle yii. ``` JavaScript console.log (mul (2) (3) (4)); // jade: 24 console.log (mul (4) (3) (4)); // àbájade: 48 ``` #ANSWER# Ni isalẹ ni koodu ti o tẹle pẹlu alaye bi o ti n ṣiṣẹ: ``` javascript function mul (x) { return function (y) {// anonymous function return function (z) { // ipadabọ iṣẹ ailorukọ x * y * z; }; }; } ``` Nibi iṣẹ `mul` gba ariyanjiyan akọkọ ati da iṣẹ ailorukọ pada ti o gba paramita keji ati da iṣẹ ailorukọ pada eyiti o gba paramita kẹta ti o si da isodipupo awọn ariyanjiyan pada eyiti o ti kọja ni itẹlera Ni iṣẹ Javascript ti ṣalaye. inu ni iwọle si oniyipada iṣẹ ode ati iṣẹ jẹ ohun elo kilasi akọkọ nitorinaa o le pada nipasẹ iṣẹ naa daradara ati kọja bi ariyanjiyan ni iṣẹ miiran. - Iṣẹ kan jẹ apẹẹrẹ ti iru Nkan - Iṣẹ kan le ni awọn ohun-ini ati pe o ni ọna asopọ pada si ọna olupilẹṣẹ rẹ - Iṣẹ kan le wa ni ipamọ bi oniyipada - Iṣẹ kan le kọja bi paramita si iṣẹ miiran - Iṣẹ kan le jẹ pada lati miiran iṣẹ
        

        Apẹẹrẹ ya lati ibi: 123-JavaScript-Ifọrọwanilẹnuwo-Awọn ibeere

        Faili tun wa pẹlu awọn apẹẹrẹ ninu folda ise agbese examples/markdown2anki-example.md

      • ninu bọtini modules.markdown.pathToFile
        kọ ọna si faili nibiti *.md ibeere/faili idahun

    2. Lọlẹ pẹlu ohun elo ANKI nṣiṣẹ
      node data2ankiindex.js
    3. ERE!!!

Eyi ni ohun ti o dabi lori foonu alagbeka:

Esi

Awọn kaadi ti o gba lori ẹya tabili tabili ti ANKI ṣiṣẹpọ laisi awọn iṣoro pẹlu awọsanma ANKI (ọfẹ to 100mb), ati lẹhinna o le lo wọn nibi gbogbo. Nibẹ ni o wa ibara fun Android ati iPhone, ati awọn ti o tun le lo o ni a kiri ayelujara. Bi abajade, ti o ba ni akoko ti o ko ni nkankan lati lo lori, lẹhinna dipo lilọ kiri lainidi nipasẹ Facebook tabi awọn ologbo lori Instagram, o le kọ ẹkọ tuntun.

Imudaniloju

Gẹgẹbi Mo ti sọ, eyi jẹ diẹ sii ti POC ti n ṣiṣẹ ti o le lo ju ọja ti o pari lọ. O fẹrẹ to 30% ti boṣewa parser DSL ko ṣe imuse, ati nitorinaa, fun apẹẹrẹ, kii ṣe gbogbo awọn titẹ sii iwe-itumọ ti o wa ninu awọn iwe-itumọ ni a le rii, ero tun wa lati tun kọ sinu JavaScript, nitori Mo fẹ "aitasera", ati Yato si, bayi o ti wa ni ko kọ gan optimally. Bayi parser n kọ igi kan, ṣugbọn ninu ero mi eyi ko ṣe pataki ati pe ko nilo lati ṣe idiju koodu naa. IN markdown2anki mode, awọn aworan ti wa ni ko parsed. Emi yoo gbiyanju lati ge diẹ diẹ, ṣugbọn niwọn igba ti MO nkọ fun ara mi, Emi yoo kọkọ yanju awọn iṣoro ti Emi funrarami yoo tẹsiwaju, ṣugbọn ti ẹnikan ba fẹ lati ṣe iranlọwọ, lẹhinna o kaabọ. Ti o ba ni awọn ibeere nipa eto naa, Emi yoo dun lati ṣe iranlọwọ nipasẹ awọn oran-ìmọ ni awọn iṣẹ-ṣiṣe ti o yẹ. Kọ miiran lodi ati awọn didaba nibi. Mo nireti pe iṣẹ akanṣe yii yoo wulo fun ẹnikan.

PS Ti o ba ṣe akiyesi awọn aṣiṣe eyikeyi (ati, laanu, diẹ ninu awọn wa), kọwe si mi ni ifiranṣẹ ti ara ẹni, Emi yoo ṣe atunṣe ohun gbogbo.

orisun: www.habr.com

Fi ọrọìwòye kun