Lingara Lingara ឯកសារ មគ្គុទ្ទេសក៍សិក្សា API បណ្ណាល័យ កម្មវិធី បង្កើត កម្មវិធីលើបណ្ដាញ
ភាសា: ខ្មែរ

កំណត់ចំណាំសម្រាប់គ្រូ

ទំព័រនេះត្រូវបានបកប្រែពីភាសាអង់គ្លេស។ ប្រសិនបើទាំងពីរខុសគ្នា ទំព័រភាសាអង់គ្លេសគឺត្រឹមត្រូវ។ អានទំព័រភាសាអង់គ្លេស

កម្មវិធីរបស់អ្នកអាចផ្ដល់បរិបទមួយបន្ទាត់ទៅគ្រូរបស់ Lingara ដូចជាពាក្យណាខ្លះដែលអ្នករៀនទើបតែបានហាត់ ដោយបន្ថែម tutor_note ទៅក្នុងការឆ្លើយតបរបស់វា។ កំណត់ចំណាំទៅដល់គ្រូបានតែនៅពេលម៉ានីហ្វេស្តរបស់អ្នកប្រកាសវា និង អ្នករៀនបានបើកវានៅពេលពួកគេដំឡើងកម្មវិធីរបស់អ្នក។ ដើម្បីផ្លាស់ប្ដូរជម្រើសនោះ អ្នករៀនដកការដំឡើងកម្មវិធីរបស់អ្នក ហើយដំឡើងវាម្ដងទៀត។

អ្វីដែល Lingara ធ្វើចំពោះវា

  • ការចុះបន្ទាត់ក្លាយជាដកឃ្លា។
  • តួអក្សរបញ្ជា និងតួអក្សរប្ដូរទិស ត្រូវបានលុបចេញ។
  • កំណត់ចំណាំដែលវែងជាង 280 តួអក្សរ ត្រូវបានកាត់មកត្រឹម 280 ហើយបញ្ចប់ដោយ …។ តួអក្សរត្រូវបានរាប់ជា Unicode scalar value មិនមែនជាបៃ ឬ glyph នៅលើអេក្រង់ទេ។
  • កំណត់ចំណាំដែលម៉ានីហ្វេស្តរបស់អ្នកមិនបានប្រកាស ឬដែលអ្នករៀនមិនបានអនុញ្ញាត ត្រូវបានទម្លាក់ចោល។

របៀបដែលគ្រូអានវា

គ្រូអានកំណត់ចំណាំរបស់អ្នកជាអត្ថបទដកស្រង់ពីភាគីទីបី មិនដែលជាការណែនាំឡើយ។ កំណត់ចំណាំដែលការត្រួតពិនិត្យសុវត្ថិភាពរបស់ Lingara បដិសេធ ត្រូវបានទម្លាក់ចោល ហើយវេនរបស់អ្នករៀនបន្តដោយគ្មានវា។ អ្នករៀនមិនដែលឃើញកំណត់ចំណាំនោះទេ។

កំណត់ចំណាំល្អ

កំណត់ចំណាំល្អគឺជាការពិតសាមញ្ញមួយដែលគ្រូអាចប្រើបាន ដូចជា «អ្នករៀនទើបតែបានរំលឹកពាក្យ 5 ពីផែនការភាសាជប៉ុនរបស់ពួកគេ។» វាប្រាប់ថាអ្នករៀនកំពុងធ្វើអ្វី មិនមែនថាគ្រូគួរធ្វើអ្វីទេ។ សូមកុំដាក់ការណែនាំ ការវាយតម្លៃអំពីអ្នករៀន និងអ្វីៗដែលអ្នករៀនមិនបានឃើញនៅលើកាតរបស់អ្នក។

ភាសានៃឧទាហរណ៍កូដ

TypeScript

function withNote(request: AppRenderRequest) {
  const note = planLine(request);
  // Plain text, at most 280 characters; the tutor reads it, the learner does not.
  return note === "" ? todayCard(0) : reply(todayCard(0)).tutorNote(note);
}

Rust

async fn render(seen: Seen, request: AppRenderRequest) -> Result<Reply, BoxError> {
    let (lang, progress) = shared_plan(&request);
    let count = seen.lock().map_err(|_| "poisoned")?.get(&request.subject).copied().unwrap_or(0);
    let card = today_card("Today's five", &lang)?;
    // Plain text the learner's tutor can read: at most 280 characters.
    let note = match progress {
        Some((done, total)) => format!("The learner has reviewed {count} words with this app today; {done} of {total} sets done."),
        None => format!("The learner has reviewed {count} words with this app today."),
    };
    Ok(reply(card).tutor_note(note)?)
}

Go

card, err := lingaraapps.NewCard().Heading("Daily five", 1).Text("雨 · 雪 · 风 · 云 · 雷").Build()
if err != nil {
	return nil, err
}
// Plain text, at most 280 characters, for Lingara's tutor to use.
return lingaraapps.Reply(card).
	TutorNote("The learner is reviewing weather words today."), nil

Java

import com.getlingara.apps.Card;
import com.getlingara.apps.Reply;

Card card = Card.card().heading("Today's five", 1).term("雨", "yǔ", "rain", "zh").build();
// Plain text, at most 280 characters; the tutor reads it beside the card.
return Reply.reply(card).tutorNote("The learner is reviewing weather words today.");

Kotlin

import com.getlingara.apps.kotlin.Reply
import com.getlingara.apps.kotlin.card
import com.getlingara.apps.kotlin.reply

val c =
    card {
        heading("Today's five", 1)
        term("雨", reading = "yǔ", gloss = "rain", lang = "zh")
    }
// Plain text, at most 280 characters; the tutor reads it beside the card.
return reply(c).tutorNote("The learner is reviewing weather words today.")

Ruby

note = plan_line(request)
# Plain text, at most 280 characters; the tutor reads it, the learner does not.
note.empty? ? today_card(0) : Lingara::Apps.reply(today_card(0)).tutor_note(note)

PHP

use Lingara\Apps\Reply;

function withNote(AppRenderRequest $request): CardModel|Reply
{
    $note = planLine($request);
    // Plain text, at most 280 characters; the tutor reads it, the learner does not.
    return $note === '' ? todayCard(0) : Reply::of(todayCard(0))->tutorNote($note);
}