diff --git a/docs/abstract.typst b/docs/abstract.typst index 7526d93..3e77c56 100644 --- a/docs/abstract.typst +++ b/docs/abstract.typst @@ -1,5 +1,6 @@ #import "layout.typst": indent-par #pagebreak() + #heading( level: 1, outlined: false, @@ -7,21 +8,23 @@ "Anotācija", ) - #indent-par([ - -// LV abstract - + Atmiņas kartītes (angl. flashcards) ir izplatīts veids, kā skolēni, + studenti un citi macošies cilvēki iegaumē materiālu. To veidošanai, + uzturēšanai un izmantošanai izmanto programmatūras risinājumus, taču + lielākoties neizmato pilnīgi caurspīdīgu vienkārša teksta formātu. Darbā + tiek aprakstīts risinājums, kas izmanto domēna specifisku valodu ar pilnīgu + informācijas glabāšanu to ietvaros. ]) #par( first-line-indent: 0cm, - [*Atslēgvārdi:*], + [ + *Atslēgvārdi:* atmiņas kartītes, domēna specifiska valoda, vienkārša + teksts, apzīmēšanas valoda. + ], ) - -// LV keywords - #text( hyphenate: auto, lang: "en", @@ -34,13 +37,19 @@ "Abstract", ) #indent-par([ - - // EN abstract - + Flashcards are a common way for students to + students and other studying people memorize the material. To create them, + software solutions are used for maintenance and use, however + most do not use a fully transparent plain text format. At work + a solution that uses a domain-specific language with a complete is described + information storage within them. ]) #par( first-line-indent: 0cm, - [*Keywords:*], + [ + *Keywords:* memory cards, domain specific language, simple text, markup + language. + ], ) // EN keywords diff --git a/docs/main.pdf b/docs/main.pdf index a2f431e..3be8443 100644 Binary files a/docs/main.pdf and b/docs/main.pdf differ diff --git a/docs/main.typst b/docs/main.typst index 57f15b8..31820ec 100644 --- a/docs/main.typst +++ b/docs/main.typst @@ -12,7 +12,6 @@ date: "Rīga 2025", ) - #set heading(numbering: none) #pagebreak(weak: true) @@ -24,6 +23,7 @@ / API: lietojumprogrammu saskarne (angl. Application Program Interface); / Markdown: TODO; / Atzīmēšanas valoda: TODO; + // TODO: add all the terms ], ) @@ -56,7 +56,7 @@ // Kas ir atmiņas kartes #indent-par([ - Atmiņas kartītes (Angl. flashcards) ir izplatīts veids, kā skolēni, studenti un + Atmiņas kartītes (angl. flashcards) ir izplatīts veids, kā skolēni, studenti un citi macošies cilvēki iegaumē materiālu. Šādu kartīšu pamatā parasti ir priekša un aizmugura. Priekšā atrodas jautājums vai uzdevums vai cita informācija, kas uzstāda mentālu vai praktisku uzdevumu, iespējams iekļaujot arī mājieni. @@ -75,7 +75,7 @@ dienas, 3 dienas, 1 diena, 0 dienas attiecīgi. Jo lielāka ir subjektīva piepūle, atbildot uz jautājumu vai risinot uzdevumu, jo tiek uzturēts garāks pārtraukums pirms nākamās reizes, kad šī kartīte būs izmantota. Šī mācīšanās metode ir atkārtošana ar intervāliem. -// TODO: reference +// TODO: add reference. // Stuff mdemory does Veidojot atmiņas kartītes manuāli tās var pazaudēt, var kļūdīties, sagatavojot @@ -91,9 +91,9 @@ programmatūras mācīšanās funkcionalitāti. Uzsvars ir uz pilnīgu atmiņas kartīšanu glabāšanas pilnīgu caurspīdīgumu - kartītes glabājas bez slēptas informācijas. Vienkārša teksta izmantošana bez slēptas informācijas atbrīvo lietotāju no atkarības no šīs programmatūras ar -iespēju pārslēgties uz citu risinājumu ar dažām teksta izmaiņām. +iespēju pārslēgties uz citu risinājumu ar dažām teksta izmaiņām. -// TODO: import / manage all questions +// TODO: add someth?? // The name Programmatūras produkta nosaukums ir "Mdemory", kas ir darināts nosaukums no @@ -107,8 +107,8 @@ parāda produkta saistību ar atmiņu. // apraksts: Ievads -Ievadā tiek aprakstīta galvenā programmatūras produkta būtība. -// TODO +Ievadā tiek definēts nolūks darbības sfēra, aprakstīta galvenā programmatūras +produkta būtība un mērķi, saistītie dokumenti. // apraksts: Vispārējs apraksts // TODO @@ -246,28 +246,32 @@ Secības jautājums. ``` - Savienojiet planētas ar to īpašībām > - - Zeme: - - Satur dzīvi - - Jupiters: - - Lielākā planēta - - Ir gredzeni - - Venēra: - - Merkurs: - - Mazākā - - Saturns: - - Ir gredzeni - - Neptūns: - - Tālākā no saules - - Ir gredzeni + - Zeme: + - Satur dzīvi + - Jupiters: + - Lielākā planēta + - Ir gredzeni + - Venēra: + - Merkurs: + - Mazākā + - Saturns: + - Ir gredzeni + - Neptūns: + - Tālākā no saules + - Ir gredzeni ``` === Jautājumu datu struktūra +// TODO jautājumu veidi + +// TODO lappuse === Funkciju sadalījums moduļos Risinājuma moduļi ar to saistītām datu plūsmām un datu glabātuvēm ir attēlots -1. līmeņa DPD (skat. @fig:dpd1 attēls). +1\. līmeņa DPD (skat. @fig:dpd1 attēls). Funkciju sadalījums moduļos ir +apraksīts sadalījuma tabulā (skat. @tbl:function_table tabula). #figure( caption: "1. līmeņa datu plūsmas diagramma", @@ -275,8 +279,6 @@ Risinājuma moduļi ar to saistītām datu plūsmām un datu glabātuvēm ir att image("img/DPD1.svg"), ) -Funkciju sadalījums moduļos ir apraksīts sadalījuma tabulā (skat. @tbl:function_table). - #pagebreak(weak: true) #figure( caption: "Funkciju sadalījums pa moduļiem", @@ -287,37 +289,37 @@ Funkciju sadalījums moduļos ir apraksīts sadalījuma tabulā (skat. @tbl:func [*Modulis*], [*Funkcija*], [*Identifikators*], /* -------------- */ - // TODO links: #link[AMF01] - // TODO: adjust the rowspanxes - rowspanx(8)[Atmiņas bāzes modulis], - [Kartīšu faila ielāde], [AB01], - [Kartīšu saraksta lappušu izveidošana], [AB02], - [Atmiņas bāzes lappuses iesūšana], [AB03], - [Kartīšu pievienošana], [AB04], - [Kartītes pirmteksta iegūšana], [AB05], - [Kartītes redigēšana], [AB06], - [Kartītes dzēšana], [AB07], - [Kartītes faila saglabāšana], [AB08], + [Kartīšu faila ielāde], [#link()[AB01]], + [Kartīšu saraksta lappušu izveidošana], [#link()[AB02]], + [Atmiņas bāzes lappuses iegūšana], [#link()[AB03]], + [Kartīšu pievienošana], [#link()[AB04]], + [Kartītes pirmteksta iegūšana], [#link()[AB05]], + [Kartītes redigēšana], [#link()[AB06]], + [Kartītes dzēšana], [#link()[AB07]], + [Kartītes faila saglabāšana], [#link()[AB08]], - rowspanx(6)[Mācīšanās modulis], - [Nākamās kartītes noteikšana], [MA01], - [Izvēles kartītes pārbaude], [MA02], - [Kārtošanas kartītes pārbaude], [MA03], - [Grupēšanas kartītes pārbaude], [MA04], - [Intervāla grupas atbildes sniegšana], [MA05], + rowspanx(5)[Mācīšanās modulis], + [Nākamās kartītes noteikšana], [#link()[MA01]], + [Izvēles kartītes pārbaude], [#link()[MA02]], + [Kārtošanas kartītes pārbaude], [#link()[MA03]], + [Grupēšanas kartītes pārbaude], [#link()[MA04]], + [Intervāla grupas atbildes sniegšana], [#link()[MA05]], // un meta datu saglabāšana rowspanx(3)[Konfigurācijas modulis], - [Konfigurācijas vērtības iegūšana], [KF01], - [Konfigurācijas vērtību iegūšana], [KF02], - [Konfigurācijas vērtības izmaiņa], [KF03], + [Konfigurācijas vērtības iegūšana], [#link()[KF01]], + [Konfigurācijas vērtību iegūšana], [#link()[KF02]], + [Konfigurācijas vērtības izmaiņa], [#link()[KF03]], ), ) === Kopīgas procedūras +Vairākas prasībās definētās funkcijas izmanto kopīgas procedūras, kas tiek +definētas tabulās: #link()[PR01], #link()[PR02]. + #procedure-table( "Teksta jautājumu transpilēšana", "PR01", @@ -389,10 +391,21 @@ Funkciju sadalījums moduļos ir apraksīts sadalījuma tabulā (skat. @tbl:func === Atmiņas bāzes modulis -Atmiņas bāze ir direktorijs ar atmiņas kartīšu failiem. -Modulis atbild par mijiedarbību ar atmiņas šiem failiem un atmiņas -kartīšu prezentēšanu. - +Atmiņas bāze ir direktorijs ar atmiņas kartīšu failiem. Modulis atbild par +mijiedarbību ar atmiņas šiem failiem un atmiņas kartīšu prezentēšanu. Šī moduļa +funkcijas ir izmantotas atmiņu kartīšu saraksta funkcionalitātei. Funkcijas +mijiedarbojas ar pagaidu glabātuvē esošām atmiņas kartītēm un failu glabātuves +failiem, kas satur atmiņu kartīšu informāju. Ar funkcijām saistītas datuplūsmas +ir attēlotas moduļa 2. līmeņa DPD (skat. @fig:abdpd2 attēlu). +Moduļa funkcijas tiek definētas tabulās: + #link()[AB01], + #link()[AB02], + #link()[AB03], + #link()[AB04], + #link()[AB05], + #link()[AB06], + #link()[AB07], + #link()[AB08]. #figure( caption: "Atmiņas bāzes moduļa 2.līmeņa datu plūsmas diagramma", @@ -472,11 +485,17 @@ kartīšu prezentēšanu. + Lappuses numurs; ], [ - + + No pagaides atmiņas kartīšu glabātuves tiek iegūtas atmiņas kartīšu lappuses; + + Tiek meklēts lappušu objekts ar norādīto numuru; + + Ja lappuse tiek atrasta, saistītie atmiņas kartīšu objekti tiek atgriezti; + + Ja tāda lappuse netiek atrasta, parāda 1. paziņojumu; + + ], [ + + Saraksts ar lappuses atmiņas kartīšu objektiem; ], [ + + Pieprasītā lappuse neeksistē; ], ) @@ -620,7 +639,16 @@ kartīšu prezentēšanu. === Mācīšanās modulis Mācīšanās risinājuma kontekstā ir kartīšu prezentēšana ar interaktīvu atbildes -funkcionalitāti, atbilsoši atmiņas kartītes tipam. +funkcionalitāti, atbilsoši atmiņas kartītes tipam. Šī moduļa funkcijas ir +izmantotas mācīšanās loga funkcionalitātei. Funkcijas ietver darbības ar pagaidu +glabātuvē esošām atmiņas kartītēm. Ar funkcijām saistītas datuplūsmas ir +attēlotas moduļa 2. līmeņa DPD (skat. @fig:madpd2 attēlu). +Moduļa funkcijas tiek definētas tabulās: + #link()[MA01], + #link()[MA02], + #link()[MA03], + #link()[MA04], + #link()[MA05]. #figure( caption: "Mācīšanās moduļa 2.līmeņa datu plūsmas diagramma", @@ -695,8 +723,8 @@ funkcionalitāti, atbilsoši atmiņas kartītes tipam. Veic jautājuma atbildes pārbaudi kārtošanas kartītes jautājuma veidam. ], [ - - Atbilžu simbolu virkņu saraksts; - - Jautājuma objekts; + + Atbilžu simbolu virkņu saraksts; + + Jautājuma objekts; ], [ + Izskata abus sarakstus paralēli; @@ -719,9 +747,9 @@ funkcionalitāti, atbilsoši atmiņas kartītes tipam. Veic jautājuma atbildes pārbaudi grupēšanas kartītes jautājuma veidam. ], [ - - Negrupēto elementu simbolu virkņu saraksts; - - Grupētu simbolu virkņu sarakstu saraksts; - - Jautājuma objekts; + + Negrupēto elementu simbolu virkņu saraksts; + + Grupētu simbolu virkņu sarakstu saraksts; + + Jautājuma objekts; ], [ + Katram nesagrupētam elementam uzstāda pareizuma pazīmi uz "nepareizs"; @@ -767,9 +795,17 @@ funkcionalitāti, atbilsoši atmiņas kartītes tipam. === Konfigurācijas modulis -Konfigurācijas modulis iekļauj parametrus, ko var personalizēt -saistībā ar mācīšanās procesu, prezentāciju uc. - +Konfigurācijas modulis iekļauj parametrus, ko var personalizēt saistībā ar +mācīšanās procesu, prezentāciju uc. Šī moduļa funkcijas ir izmantotas +konfigurējot vērtības, kas tiek glabātas konfigurācijas failā un tiek +izmantotas risinājuma funkcionalitātē, kur tās aspektiem piemīt konfigurējamas +vērtības. Ar funkcijām saistītas datuplūsmas ir attēlotas moduļa 2. līmeņa DPD +(skat. @fig:kfdpd2 attēlu). +Moduļa funkcijas tiek definētas tabulās: + #link()[KF01], + #link()[KF02], + #link()[KF03]. + #figure( caption: "Konfigurācijas moduļa 2.līmeņa datu plūsmas diagramma", placement: auto, @@ -784,12 +820,17 @@ saistībā ar mācīšanās procesu, prezentāciju uc. Funkcijas iegūst vienu definēo konfigurācijas vērtību. ], [ + + Vērtības atslēga -- simbolu virkne; ], [ + + Ja konfigurācija vēl nebija ielādēta, tiek ielādēts konfigurācijas fails; + + Ielādētā konfigurācijā tiek sameklēts konfigurācijas vērības ieraksts; ], [ + + Konfigurācijas vērtība -- viens no: skaitlis, simbolu virkne, karodziņs; ], [ + + Konfigurācijas fails nav korekts, nevar nolasīt konfigurāciju; ], ) @@ -800,12 +841,17 @@ saistībā ar mācīšanās procesu, prezentāciju uc. Funkcija iegūst visas definētās konfigurācijas vērtības. ], [ + + Vērtības atslēga -- simbolu virkne; ], [ + + Ja konfigurācija vēl nebija ielādēta, tiek ielādēts konfigurācijas fails; + + Ielādētā konfigurācijā tiek iegūtas vērtības; ], [ + + Konfigurācijas vērtību saraksts -- viens no: skaitlis, simbolu virkne, karodziņs; ], [ + + Konfigurācijas fails nav korekts, nevar nolasīt konfigurāciju; ], ) @@ -816,12 +862,18 @@ saistībā ar mācīšanās procesu, prezentāciju uc. Funkcija izmaina vērtību no definētām konfigurācijas vērtībām. ], [ + + Vērtības atslēga -- simbolu virkne; + + Konfigurācijas vērtība -- viens no: skaitlis, simbolu virkne, karodziņs; ], [ + + Ja konfigurācija vēl nebija ielādēta, tiek ielādēts konfigurācijas fails; + + Konfigurācijas vērtība ar ievadīto atslēgu tiek izmainītu uz ievadīto konfigurācijas vērtību; ], [ + + Izmainīta konfigurācijas faila saturs; ], [ + + Konfigurācijas fails nav korekts, nevar rediģēt konfigurāciju; ], )