Soru havuzu
- TypeScript kursu
- Orta seviye
- Ders 77/89
- 5 dk
Soru havuzunu module olarak yazarsın.
Soru havuzu modülü
Soru havuzu, quiz'in tüm sorularını içeren bir veri kaynağıdır. Bir modül olarak yazılır ve export ile dışa aktarılır. Böylece diğer dosyalar bu havuzu import ederek kullanabilir. Soruları ayrı tutmak, veriyi mantıktan ayırır ve bakımı kolaylaştırır.
// sorular.ts
export const sorular: Soru[] = [
{ metin: "a?", siklar: ["x", "y"], dogruIndex: 0 }
];Tip güvenli soru dizisi
Soru havuzu bir Soru[] dizisidir. Tür annotation'ı sayesinde yanlış şekilli bir soru eklersen derleyici hata verir. Bu, veri tutarlılığını korumanın en güvenli yoludur. Örneğin dogruIndex eksik bir soru derleme sırasında yakalanır.
const sorular: Soru[] = [
{ metin: "2+2?", siklar: ["3", "4"], dogruIndex: 1 }
];Uygulama Soru havuzu oluştur
Soru interface'i tanımla: metin: string, dogruIndex: number. havuz adında Soru[] türünde bir dizi oluştur ve iki soru ekle: birincinin metni "soru1" ve dogruIndex: 0, ikincinin metni "soru2" ve dogruIndex: 1. havuz.length değerini console.log ile yazdır.
Başlangıç kodu
// Soru interface tanımla
// havuz adında Soru[] dizisi oluştur
// iki soru ekle
// havuz.length yazdırÖrnek çözüm
interface Soru {
metin: string;
dogruIndex: number;
}
const havuz: Soru[] = [
{ metin: "soru1", dogruIndex: 0 },
{ metin: "soru2", dogruIndex: 1 }
];
console.log(havuz.length);Beklenen çıktı
2
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Soru havuzunu diğer dosyalardan kullanılabilir yapmak için ne yapılır?
- const ile bildirilir
- console.log ile yazdırılır
- interface içine konur
- export ile dışa aktarılır Doğru cevap
Açıklama: Bir modülden değer dışa aktarmak için export anahtar kelimesi kullanılır; başka dosyalar import ile erişir.
2 Dizi türü annotation
const sorular: ____[] = [
{ metin: "a?", siklar: ["x"], dogruIndex: 0 }
];
const sorular: Soru[] = [
{ metin: "a?", siklar: ["x"], dogruIndex: 0 }
];
Açıklama: Bir Soru nesneleri dizisi Soru[] olarak tür annotation'ı ile belirtilir; bu, derleme zamanı denetimi sağlar.
3 Soru havuzu kavramları
| Kavram | Anlamı |
|---|---|
export |
Dışa aktarım |
Soru[] |
Soru dizisi türü |
modül |
Veri ve mantık ayrımı |
import |
İçe aktarım |