Özet: Nesne Yapılarını Tanımlama
Coddy'nin JavaScript Journey'sinin TypeScript'e Giriş bölümünün bir parçası — ders 44 / 73.
Görev
KolayAşağıdaki özelliklere ve metotlara sahip Computer adında bir arayüz (interface) oluşturun:
numbertipindeid(salt okunur - readonly)stringtipindebrandnumbertipinderamInGB(isteğe bağlı - optional)booleantipindeisLaptop- Parametre almayan ve
voiddöndürenbootmetodu
Aşağıdaki özelliklere ve metotlara sahip Server adında bir arayüz (interface) oluşturun:
stringtipindehostname(salt okunur - readonly)stringtipindeoperatingSystemnumbertipindemaxConnections(isteğe bağlı - optional)booleantipindeisOnline- Parametre almayan ve
voiddöndürenrestartmetodu - Parametre almayan ve
stringdöndürengetStatusmetodu
Arayüzlerinizi kullanarak aşağıdaki değişkenleri oluşturun:
- id değeri
1001, brand değeri"Dell", ramInGB değeri16, isLaptop değerifalseolan ve"Dell workstation is booting up..."yazdıran birbootmetoduna sahip,Computertipindeworkstationadında bir değişken oluşturun. - id değeri
1002, brand değeri"MacBook", isLaptop değeritrueolan ve"MacBook laptop is starting..."yazdıran birbootmetoduna sahip,Computertipindelaptopadında bir değişken oluşturun. - hostname değeri
"web-01", operatingSystem değeri"Ubuntu", maxConnections değeri1000, isOnline değeritrueolan,"Restarting web-01 server..."yazdıran birrestartmetoduna ve"web-01 is online"döndüren birgetStatusmetoduna sahip,ServertipindewebServeradında bir değişken oluşturun.
Computer tipinde bir parametre kabul eden ve string döndüren checkComputerSpecs adında bir fonksiyon oluşturun. Fonksiyon, bilgisayarın markasını ve tipini "[brand] [laptop/desktop]" formatında döndürmelidir (eğer isLaptop true ise "laptop", aksi takdirde "desktop" kullanın).
Server tipinde bir parametre kabul eden ve "[hostname] runs [operatingSystem]" formatında bir string döndüren getServerInfo adında bir fonksiyon oluşturun.
Aşağıdaki çıktıları ayrı satırlarda yazdırın:
workstationüzerindekibootmetodunu çağırınlaptopüzerindekibootmetodunu çağırınworkstationilecheckComputerSpecsfonksiyonunu çağırın ve sonucu yazdırınlaptopilecheckComputerSpecsfonksiyonunu çağırın ve sonucu yazdırınwebServerüzerindekigetStatusmetodunu çağırın ve sonucu yazdırınwebServerilegetServerInfofonksiyonunu çağırın ve sonucu yazdırınworkstationdeğişkeninin id değerini yazdırınwebServerüzerindekirestartmetodunu çağırın
Kendin dene
// YAPILACAK: Kodunuzu buraya yazın
// Gerekli özelliklere ve yöntemlere sahip Computer arayüzünü oluşturun
// Gerekli özelliklere ve yöntemlere sahip Server arayüzünü oluşturun
// workstation, laptop ve webServer değişkenlerini oluşturun
// checkComputerSpecs ve getServerInfo fonksiyonlarını oluşturun
// Gerekli tüm çıktıları yazdırınTypeScript'e Giriş bölümündeki tüm dersler
1TS ile Başlarken
TypeScript Nedir?Neden TypeScript Kullanılır?İlk TypeScript KodunuzDerleme Süreci ve HatalarÖzet: TS'ye Giriş4Fonksiyonlarla Çalışmak
Parametre ve Dönüş Değerlerini TiplendirmeArrow Fonksiyonlarını Tiplendirme'void' Dönüş Tipi'?' ile Opsiyonel ParametrelerVarsayılan Parametre DeğerleriRest Parametrelerini TiplendirmeFonksiyon Tiplerini TanımlamaÖzet: Tiplendirilmiş Fonksiyonlar Oluşturma2Temel Tipler
Temel Tipler: str, num, boolean'any' Tipi: Kaçış Yolu'unknown' Tipi'null' ve 'undef' ile ÇalışmakTip Çıkarımı İş BaşındaAçık Tip BelirlemeleriÖzet: Temel Tipler Pratiği5Tipler: Takma Adlar, Unionlar ve Kesişimler
İlkel Tipler için Tip Takma AdlarıUnion Tipler ('|')Union Tipler ile ÇalışmakLiteral TiplerKesişim Tipleri ('&')Tip Takma Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları3Veri Yapısı: Diziler ve Tuple
Tipli DizilerDiziler için 'readonly' BelirleyicisiTuple Nedir?Tuple Tanımlama ve ErişmeTuple DestructuringReadonly Tuple'larÇok Boyutlu Tipli DizilerDizilerle Spread OperatörüÖzet: Diziler ve Tuple'lar6Nesneleri ve Interface'leri Tiplendirme
Satır İçi Nesne Tipi BelirtimleriNesneler için Type Alias KullanımıInterface'lere GirişInterface'ler ve Type Alias'ların KarşılaştırılmasıOpsiyonel ve Readonly ÖzelliklerInterface ve Tipleri GenişletmeInterface'lere Metot EklemeÖzet: Nesne Yapılarını Tanımlama