Soru modeli
- TypeScript kursu
- Orta seviye
- Ders 76/89
- 5 dk
Soru, sık ve cevap tiplerini tasarlarsın.
Soru modeli nedir?
Bir quiz uygulamasında önce soru modeli tasarlanır. Soru; metin, şıklar ve doğru cevabın indeksinden oluşur. TypeScript'te bu yapıyı bir interface ile tanımlarsın. Böylece tüm sorular aynı şekle uyar ve derleme sırasında eksik alanlar yakalanır.
interface Soru {
metin: string;
siklar: string[];
dogruIndex: number;
}Cevap ve şık türleri
Soru modelinin yanında cevap ve şık türleri de tanımlanır. Şıklar bir string[] dizisidir; kullanıcı cevabı ise seçtiği şık indeksidir, yani number. Bu ayrım, modelin her parçasının tek bir sorumluluğa sahip olmasını sağlar.
type Cevap = number; // secilen sik indeksi
type Sik = string; // bir sik metniUygulama Soru nesnesi oluştur
Soru interface'i tanımla: metin: string, siklar: string[], dogruIndex: number. s1 adında bir Soru nesnesi oluştur; metni "TS nedir?", şıklar ["dil", "renk", "araç"], doğru indeks 0 olsun. s1.metin değerini console.log ile yazdır.
Başlangıç kodu
// Soru interface tanımla
// s1 adında bir Soru nesnesi oluştur
// s1.metin yazdırÖrnek çözüm
interface Soru {
metin: string;
siklar: string[];
dogruIndex: number;
}
const s1: Soru = {
metin: "TS nedir?",
siklar: ["dil", "renk", "araç"],
dogruIndex: 0
};
console.log(s1.metin);Beklenen çıktı
TS nedir?
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir Soru interface'inde dogruIndex alanı hangi türde olmalıdır?
- number Doğru cevap
- string
- boolean
- string[]
Açıklama: Doğru cevabın indeksi bir sayı olduğu için dogruIndex alanı number türünde tanımlanır.
2 Soru arayüzü anahtar kelimesi
____ Soru {
metin: string;
siklar: string[];
dogruIndex: number;
}
interface Soru {
metin: string;
siklar: string[];
dogruIndex: number;
}
Açıklama: Bir nesne yapısını tanımlamak için interface anahtar kelimesi kullanılır; type alias da alternatiftir ama interface nesneler için daha uygundur.
3 Soru modeli parçaları
| Kavram | Anlamı |
|---|---|
metin |
Soru metni |
siklar |
Şık dizisi |
dogruIndex |
Doğru cevap indeksi |
Cevap |
Seçilen şık numarası |