Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler
Tür güvenliği için birleşim üyelerine ortak bir değişmez alan ekleyin
Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, TypeScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. TypeScript Academy kursu toplamda 4 dersten oluşur.
Hoş Geldiniz
Ayırt Edici Özellik
type Circle = { kind: 'circle'; radius: number };
type Square = { kind: 'square'; side: number };
type Shape = Circle | Square;if Denetimleriyle Daraltma
function area(shape: Shape): number {
if (shape.kind === 'circle') {
return Math.PI * shape.radius ** 2;
}
return shape.side ** 2; // narrowed to Square
}switch/case ile Daraltma
function describe(shape: Shape): string {
switch (shape.kind) {
case 'circle': return `Circle r=${shape.radius}`;
case 'square': return `Square s=${shape.side}`;
}
}never ile Eksiksizlik
function area(shape: Shape): number {
switch (shape.kind) {
case 'circle': return Math.PI * shape.radius ** 2;
case 'square': return shape.side ** 2;
default:
const _exhaustive: never = shape;
throw new Error('Unhandled shape');
}
}Sonuç Türü Kalıbı
type Ok<T> = { ok: true; value: T };
type Err = { ok: false; error: string };
type Result<T> = Ok<T> | Err;Eylem Türü Kalıbı (Redux Tarzı)
type Action =
| { type: 'INCREMENT'; amount: number }
| { type: 'DECREMENT'; amount: number }
| { type: 'RESET' };Birden Çok Ayırt Edici Özellik
type AdminUser = { role: 'admin'; permissions: string[] };
type RegularUser = { role: 'user'; credits: number };
type User = AdminUser | RegularUser;Ayırt Edici Olmayan Birleşimler de Daraltılır
type StringOrArr = string | string[];
function flatten(val: StringOrArr): string[] {
return Array.isArray(val) ? val : [val];
}Ayırt Edicili Birleşimler ve Sınıf Hiyerarşileri
Gerçek Dünya: HTTP Yanıt Birleşimi
type ApiState<T> =
| { status: 'loading' }
| { status: 'success'; data: T }
| { status: 'error'; message: string };Hızlı Kontrol
Özet
Sıkça Sorulan Sorular
“Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler” dersi ücretsiz mi?
Evet — “Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve TypeScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. TypeScript Academy kursu toplamda 4 dersten oluşur.
“Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler” dersinde ne öğreneceğim?
Tür güvenliği için birleşim üyelerine ortak bir değişmez alan ekleyin TypeScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
TypeScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te TypeScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu TypeScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her TypeScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Birleşim Türleri: A veya B
- Kesişim Türleri: A ve B
- Güvenli Örüntü Eşleştirme için Ayırt Edilebilir Birleşimler
- Birleşim ve Kesişimlerle Uygulamalı Örüntüler