Ман ҳамеша боварӣ доштам, ки барномасози танбал барномасози хуб аст. Чаро? Зеро аз коргари мехнаткаш кореро талаб кунед, рафта онро ичро мекунад. Ва як барномасози танбал 2-3 маротиба бештар вақт сарф мекунад, аммо скрипт менависад, ки ин корро барои ӯ иҷро кунад. Ин метавонад бори аввал вақти беасос тӯлониро талаб кунад, аммо ҳангоми иҷрои вазифаҳои такрорӣ ин равиш хеле зуд пардохт хоҳад кард. Ман худро барномасози танбал меҳисобам. Ин муқаддима буд, акнун биёед ба кор равем.
Ҳикояи аввал
Чанд сол пеш ман фикр мекардам, ки чӣ тавр ман метавонам забони англисии худро такмил диҳам. Ҳеҷ чиз беҳтар аз хондани адабиёт ба хотир намеомад. Ман як хонандаи электронӣ харидам, китобҳоро зеркашӣ кардам ва ба хондан шурӯъ кардам. Ҳангоми хондан ман ба калимаҳои ношинос дучор мешудам. Ман онҳоро дарҳол бо истифода аз лугатҳои дар хонанда сохташуда тарҷума кардам, аммо як хусусиятро мушоҳида кардам: калимаҳо дар хотир мондан намехостанд. Вақте ки ман пас аз чанд саҳифа боз ба ин калима дучор шудам, бо эҳтимоли 90% ба ман боз ба тарҷума ниёз пайдо шуд ва ин ҳар дафъа рӯй дод. Хулоса ин буд, ки ҳангоми хондан танҳо тарҷума кардани калимаҳои ношинос кифоя нест, шумо бояд кори дигарро анҷом диҳед. Варианти беҳтарин ин ҷорӣ кардани он ба ҳаёти ҳаррӯза ва оғози истифодаи он аст, аммо ман дар кишвари англисӣзабон зиндагӣ намекунам ва ин аз эҳтимол дур нест. Баъд ба ёдам омад, ки боре дар ин бора хонда будам
Он чӣ аст ва бо чӣ мехӯранд? Хулоса, ин вуҷуд дорад
Аллакай дар як соати аввал то 60% тамоми иттилооти гирифташуда фаромӯш мешавад, 10 соат пас аз ёд кардан 35% маълумоти омӯхташуда дар хотира боқӣ мемонад. Баъд процесси фаромушкунй охиста-охиста давом мекунад ва баъди 6 руз кариб 20 фоизи микдори умумии хадхои аввал омухташуда дар хотира ва хамон микдор пас аз як мох дар хотира мемонад.
Ва хулоса аз ин ҷо
Хулосаҳое, ки дар асоси ин хатти каҷӣ бароварда мешаванд, аз он иборат аст, ки барои аз ёд кардани самарабахш такрори маводи ёдшуда зарур аст.
Ҳамин тавр, мо як идея пайдо кардем
Ба таври дастӣ сохтани кортҳо тӯлонӣ, дилгиркунанда ва бо эҳтимоли зиёд аст, пас аз муддате шумо ин вазифаро фаромӯш мекунед ва аз ин рӯ, дар як лаҳза ман ба худ савол додам, ки оё ин вазифаро автоматӣ кардан мумкин аст? Ҷавоб ҳа, шумо метавонед. Ва ман ин корро кардам. Ман дарҳол мегӯям, ин бештар аст
Ман бо истифода аз барнома китоб мехонам
Дар аввал ман кӯшиш кардам, ки барои тарҷума истифода барам
Чунин аст вуруди луғат дар *.html, варианти ман нисбат ба вариант
Пеш аз ҷустуҷӯи калима дар луғатҳои алоқаманд, ман онро ба он меорам
Ҳамин тавр, ман як калима ба забони англисӣ дорам, вуруди луғати он дар формати *.html, танҳо ин аст, ки ҳама чизро якҷоя кунед, аз рӯйхати калимаҳо мақолаҳои ANKI эҷод кунед ва онҳоро ба пойгоҳи додаҳои ANKI ворид кунед. Бо ин максад лоихаи зерин тартиб дода шуд
Ҳикояи дуюм.
Ҳама одамоне, ки дар ҷустуҷӯи ихтисоси камтар/ками тахассус ҳастанд, аз ҷумла барномасозон, ба зарурати омодагӣ ба мусоҳиба дучор меоянд. Бисёре аз мафҳумҳое, ки дар мусоҳибаҳо пурсида мешаванд, шумо дар амалияи ҳаррӯза истифода намебаред ва онҳо фаромӯш мешаванд. Ҳангоми омодагӣ ба мусоҳиба, варақ кардани қайдҳо, китоб, маълумотнома, ман ба он дучор шудам, ки барои аз байн бурдани маълумоте, ки шумо аллакай медонед, вақти зиёд ва диққати зиёдро талаб мекунад, зеро он на ҳамеша аён аст ва шумо бояд онро бодиққат хонед, то бифаҳмед, ки он чӣ аст. Вақте ки шумо ба мавзӯъе мерасед, ки воқеан такрор кардан лозим аст, аксар вақт чунин мешавад, ки шумо аллакай хаста шудаед ва сифати омодагии шумо осеб мерасонад. Дар баъзе лаҳзаҳо ман фикр кардам, ки чаро кортҳои ANKI-ро барои ин низ истифода набаред? Масалан, дар ваќти ќайд гирифтан аз мавзўъ дарњол дар шакли саволу љавоб ёддошт созед ва баъдан ваќте такрор мекунед, дарњол мефањед, ки љавоби ин саволро медонед ё на.
Ягона мушкилоте, ки ба миён омад, ин буд, ки чоп кардани саволҳо хеле тӯлонӣ ва дилгиркунанда буд. Барои осон кардани раванд,
Пас аз сохтани ин файл, шумо data2anki -ро иҷро мекунед ва он кортҳои ANKI-ро эҷод мекунад. Файли аслӣ таҳрир ва мубодила осон аст, ба шумо танҳо лозим аст, ки корт(ҳо)-и мувофиқро тоза кунед ва барномаро дубора иҷро кунед ва версияи нав эҷод мешавад.
Насб ва истифода
-
Насб кардани ANKI + AnkiConnect
- ANKI-ро аз ин ҷо зеркашӣ кунед:
https://apps.ankiweb.net/ - Васлкунаки AnkiConnect насб кунед:
https://ankiweb.net/shared/info/2055492159
- ANKI-ро аз ин ҷо зеркашӣ кунед:
-
параметр
data2anki - Зеркашӣ кунед
data2anki аз анбори githubgit clone https://github.com/anatoly314/data2anki
- Вобастагӣ насб кунед
cd data2anki && npm install
- Вобастагии javaро зеркашӣ кунед
https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip - Кушодан jar-dependencies.zip ва мундариҷаи онро дар data2anki/java/jars
- Зеркашӣ кунед
-
Барои тарҷумаи калимаҳо истифода баред:
-
Дар файл data2anki/config.json:
-
дар калид ҳолати арзишро ворид кунед dsl2anki
-
дар калид modules.dsl.anki.deckName и modules.dsl.anki.modelName мувофиқи он нависед
Номи Дек иНоми намунавии (бояд аллакай пеш аз сохтани кортҳо сохта шавад). Дар айни замон танҳо намуди модел дастгирӣ карда мешавад асосӣ:Майдонҳои Пеш ва Қафо дорад ва як корт эҷод мекунад. Матне, ки шумо ба пеш ворид мекунед, дар пеши корт пайдо мешавад ва матне, ки шумо ба қафо ворид мекунед, дар қафои корт пайдо мешавад.
калимаи аслӣ куҷост? Майдони пеши, ва тарҷума дар он хоҳад буд Майдони қафо.
Барои илова кардани дастгирӣ мушкилот вуҷуд надорад асосӣ (ва корти баръакс), ки дар он корти баръакс барои калима ва тарҷума сохта мешавад, ки дар асоси тарҷума шумо бояд калимаи аслиро дар хотир нигоҳ доред. Ба шумо танҳо вақт ва хоҳиш лозим аст.
-
дар калид modules.dsl.dictionariesPath массивро бо пайваст * сабт кунед.dsl луғатҳо. Ҳар як луғати пайвастшуда феҳристест, ки дар он файлҳои луғат мувофиқи формат ҷойгир шудаанд:
Сохтори луғати DSL
-
дар калид modules.dsl.wordToTranslatePath роҳро ба рӯйхати калимаҳое, ки тарҷума кардан мехоҳед, ворид кунед.
-
- Бо иҷрокунандаи барномаи ANKI оғоз кунед
node data2ankiindex.js
- ФОИДА!!!
-
-
Барои сохтани кортҳо аз markdown истифода мебарад
-
Дар файл data2anki/config.json:
- дар калид ҳолати арзишро ворид кунед markdown2anki
- дар калид modules.markdown.anki.deckName и modules.dsl.anki.modelName мувофиқи он нависед
Номи Дек иНоми намунавии (бояд аллакай пеш аз сохтани кортҳо сохта шавад). Барои markdown2anki ҳолати танҳо намуди модел дастгирӣ карда мешавад асосӣ. -
дар калид modules.markdown.selectors.startQuestionSelectors и modules.markdown.selectors.startAnswerSelectors шумо интихобкунандагон менависед, ки бо онҳо ибтидои савол ва ҷавобро қайд мекунед. Сатр бо худи селектор таҳлил карда намешавад ва дар корт хотима намеёбад, таҳлилгар аз сатри оянда ба кор шурӯъ мекунад.
Масалан, ин корти савол/ҷавоб:
Он дар қайдкунӣ чунин хоҳад буд:
#САВОЛ# ## Саволи 5. Функсияи mul нависед, ки ҳангоми даъват бо синтаксиси зерин дуруст кор мекунад. ```javascript console.log(mul(2)(3)(4)); // баромад: 24 console.log(mul(4)(3)(4)); // баромад: 48 ``` #ҶАВОБ# Дар зер код аст, ки пас аз он шарҳи он ки чӣ тавр кор мекунад: ```javascript функсияи mul(x) { функсияи бозгашт (y) { // функсияи номаълум Функсияи бозгашт (z) { // функсияи номаълум баргардонидани x * y * z; }; }; } ``` Дар ин ҷо функсияи `mul` далели аввалро қабул мекунад ва функсияи беномро бармегардонад, ки параметри дуюмро мегирад ва функсияи беномро бар мегардонад, ки параметри сеюмро мегирад ва зарби аргументҳои пай дар пай интиқолшавандаро бармегардонад. Дар Javascript функсияи дар дохили он муайяншуда ба тағирёбандаи функсияи берунӣ дастрасӣ дорад ва функсия объекти синфи якум аст, бинобар ин, он метавонад аз ҷониби функсия баргардонида шавад ва ҳамчун аргумент дар функсияи дигар интиқол дода шавад. - Функсия як мисоли навъи Объект аст - Функсия метавонад хосият дошта бошад ва ба усули созандаи худ пайванд дорад - Функсияро метавон ҳамчун тағирёбанда нигоҳ дошт - Функсия метавонад ҳамчун параметр ба функсияи дигар гузарад - Функсияро аз дигар функсия баргардонидан мумкин аст
Намуна аз ин ҷо гирифта шудааст:
123-JavaScript-Мусоҳиба-Саволҳо Дар папкаи лоиҳа инчунин як файл бо мисолҳо мавҷуд аст
examples/markdown2anki-example.md
- дар калид modules.markdown.pathToFile
роҳро ба файл нависед, ки дар он *.md файли савол/ҷавоб
- Бо иҷрокунандаи барномаи ANKI оғоз кунед
node data2ankiindex.js
- ФОИДА!!!
-
Ин аст он чизе ки дар телефони мобилӣ ба назар мерасад:
Дар натиҷа
Кортҳои дар версияи мизи кории ANKI гирифташуда бе мушкилот бо абри ANKI (то 100 mb ройгон) ҳамоҳанг карда мешаванд ва пас шумо метавонед онҳоро дар ҳама ҷо истифода баред. Мизоҷон барои Android ва iPhone мавҷуданд ва шумо инчунин метавонед онро дар браузер истифода баред. Дар натиҷа, агар шумо вақт дошта бошед, ки барои сарф кардани он чизе надоред, пас ба ҷои он ки дар Facebook ё гурбаҳо дар Instagram ҳаракат кунед, шумо метавонед чизи навро омӯзед.
Эпилогонӣ
Тавре ки ман зикр кардам, ин як POC коркунанда аст, ки шумо метавонед аз маҳсулоти тайёр истифода баред. Тақрибан 30% стандарти таҳлилгари DSL амалӣ карда нашудааст ва аз ин рӯ,
P.S. Агар шумо ягон хатогиро мушоҳида кунед (ва, мутаассифона, баъзеҳо ҳастанд), дар паёми шахсӣ ба ман нависед, ман ҳама чизро ислоҳ мекунам.
Манбаъ: will.com