Kurs Tanıtımı ve İçerik
C programlama dilinin temellerinden ileri seviye konulara kadar kapsamlı bir kurs.
Kurs, heyecan verici mini projelerle öğrenmeyi pekiştirir.
Temel konular: sözdizimi, nesne yönelimli programlama, veri yapıları ve daha fazlası.
Gerekli Yazılımların Kurulumu
C geliştirmek için Visual Studio 2022'nin nasıl kurulacağına dair adım adım rehber.
Topluluk sürümü, bireyler ve eğitimciler için ücretsizdir.
Kurulum sırasında gerekli bileşenlerin seçilmesi.
İlk C Projesini Oluşturma
Visual Studio'da yeni bir C projesinin nasıl oluşturulacağı gösterilmektedir.
Proje adı, konumu ve konsol uygulaması hakkında bilgi verilmektedir.
C dilinde 'Hello World' programı yazımı ve hata ayıklamaların önemi vurgulanmaktadır.
Değişkenlerin Tanıtımı ve Kullanımı
Farklı veri türlerinin (int, long, double, float, decimal) nasıl tanımlanacağı ve kullanılacağı açıklanmaktadır.
Değişkenlerin başlatılması ve atama işlemlerinin örnekleri verilmektedir.
Boolean Veri Tipi
Boolean değişkenlerin tanımlanmasının nasıl yapılacağı ve nasıl kullanıldığı anlatılmaktadır.
Boolean değerler (true/false) ile karar verme süreçleri üzerine bilgiler sunulmaktadır.
Matematiksel İşlemler ve Operatörler
Değişkenler üzerinde artış ve azalma işlemleri (increment/decrement) nasıl yapılır.
Operatörlerin kısayol kullanımları ve string birleştirme işlemleri açıklanmaktadır.
Sabit Değişkenler
Sabitlerin (constants) tanımı ve kullanımı ile değişkenlerden farkı anlatılmaktadır.
Sabitlerin programdaki değişmez değerleri temsil ettiği vurgulanmaktadır.
Sabit Değişkenler
Sabit değişken tanımlamak için 'const' anahtar kelimesi kullanılmalıdır.
Sabit bir değişken, yeniden atanamaz ve yanlış bir atama yapıldığında derleme hatası verir.
'const' ile tanımlanan değişkenler kod derlendiğinde referansları ile değiştirilir.
Artış ve Değer Hesaplama
Değerlerin hesaplanmasında, tam sayılar ve ondalıklı sayıların doğru türde tanımlanması önemlidir.
Yüzde hesaplamalarında ondalıklı sayı kullanımı için '100D' notasyonu gereklidir.
Sabit değişkenlerden değer okunarak kullanılabilir ve sabitler üzerinde işlem yapılabilir.
Kullanıcı Girdisi Alma
Kullanıcıdan değer almak için 'Console.ReadLine()' metodu kullanılır.
Kullanıcının girdiği değerler string olarak alınır ve ihtiyaca göre dönüştürülmelidir.
Dönüşüm işlemleri 'Convert.ToInt32()' fonksiyonu ile yapılır.
Koşullu İfadeler
Koşulları kontrol etmek için 'if' yapısı kullanılarak farklı yollar oluşturulabilir.
Bir değişkenin belirli bir değere eşit olması, büyük veya küçük olması gibi durumlar kontrol edilebilir.
Çoklu koşul kontrolü için 'else if' yapısı kullanılabilir.
Switch İfadeleri
Bir değişken üzerinde çoklu koşul kontrolü yapmak için 'switch' ifadesi kullanılabilir.
Her bir 'case' için ayrı işlemler tanımlanabilir ve işlem sonunda 'break' ifadesi kullanılmalıdır.
Geçersiz durumlar için 'default' durumu eklenerek hata mesajı gösterilebilir.
Döngüler
Bir işlemin belirli sayıda tekrarlanması için 'for' döngüsü kullanılır.
Döngü içinde değişken başlangıcı, koşulu ve artış şekli belirlenir.
Kullanıcıdan döngü sayısını alma işlemi yapılabilir.
Giriş ve Kullanıcı Girişi Kontrolü
Kullanıcıdan sıfır girildiğinde hiçbir şey göstermeyen bir kontrol yapımı önerildi.
Eğer kullanıcı negatif bir değer girerse, kullanıcıyı bilgilendiren bir mesaj gösterilmesi gerektiği söylendi.
Kullanıcıdan doğru bir girdi almak için bir kontrol yapılarak kullanıcıya 'Lütfen sıfırdan büyük bir değer girin' mesajı verildi.
Döngü Yapısı ve Kullanıcı Girdileri
Bir döngü oluşturularak, kullanıcıdan kaç kez bir işlemi tekrar etmek istediği soruldu.
Kullanıcının girdiği değere göre döngü işlemleri gerçekleştirildi.
Kullanıcıdan alınan mesajlar ile döngü içinde belirtilen değerler tekrar tekrar yazdırıldı.
While ve Do While Döngüleri
While döngüsünün, koşulun doğruluğunu kontrol etmeden önce bir veri girişi yapmaya imkan sunduğu açıklandı.
Do while'ın, en az bir kez işlevsellik sunduğu ve koşulu kontrol etmeden bir işlem yaptığını belirtildi.
Kullanıcıdan alınan verilerin doğruluğunu kontrol etmek için bir do while döngüsü kullanıldı.
TryParse ile Hata Kontrolü
Kullanıcının girdiği değerin bir sayı olup olmadığını kontrol etmek için TryParse yöntemi tanıtıldı.
Hatalı bir girdi alındığında programın kapanmadığı ve kullanıcıya yanlış girdi bilgisi verildiği gösterildi.
Girdiğin başarı durumuna göre uygun bir mesaj görüntülemek için koşullu ifadeler kullanıldı.
Birimin Formatlanması ve Kültürel Bilgiler
Değerlerin formatlanması için formatlama örnekleri sunuldu.
Kültürel bilgiler kullanarak çeşitli para birimlerinin doğru biçimde gösterilmesi gerektiği belirtildi.
Farklı kültürel bilgilerin kullanımıyla döviz formatlarının karşılaştırılması yapıldı.
Veri Girişi ve Kontrol Yapıları
Program, kullanıcıdan bir sayı alır ve bu değeri kontrol etmek için bir while döngüsü kullanır.
Kullanıcı geçersiz bir değer girerse, program hatayı önler ve yeni bir giriş isteyerek döngüye devam eder.
Bu süreçte 'try-catch' kullanarak programın beklenmedik bir şekilde kapanmasını önleriz.
Çarpan Tablosu Oluşturma
Kullanıcıdan bir sayı alarak bu sayının çarpan tablosunu oluşturmak için bir for döngüsü kullanılmaktadır.
Döngü 1'den 10'a kadar hesaplama yaparak istediği çarpan tablosunu oluşturur.
Çarpma işlemi her iterasyonda gösterilir ve sonuçlar ekrana yazdırılır.
FizzBuzz Problemi
Kullanıcının girdiği sayıya kadar olan FizzBuzz sayıları yazdırılır.
3'e ve 5'e tam bölünebilen sayılar için 'FizzBuzz' yazdırılır.
Bölünebildiği durumlara göre 'Fizz' veya 'Buzz' değerleri de döngü içerisinde kontrol edilir ve yazdırılır.
String İfadeleri ve Formatlama
String içindeki özel karakterler ve yeni satır gibi durumlar için kaçış dizileri kullanılır.
Veri girişini yazdırırken düzenli biçimlendirme amacıyla string interpolation (dize interpolasyonu) ve bileşke formatlama kullanılır.
Kullanıcının yazdığı isim ve yaş gibi değerlerin düzgün bir şekilde tutulup saklanabilmesi için bu yapılar önem taşır.
String Karşılaştırma Yöntemleri
String nesnesi, bellekteki konumları ile karşılaştırılmaktadır.
Eşitlik operatörü (==) hem değerleri hem de bellek adreslerini kontrol eder.
Equals fonksiyonu, yalnızca değerleri karşılaştırır ve bellek konumunu dikkate almaz.
Substring ve İndeks Kullanımı
Substring fonksiyonu ile bir stringin belirli bir bölümünü alabilirsiniz.
Stringler, karakter dizisi gibi davranırlar ve indeksleme ile erişilebilirler.
Örneğin, 'message[0]' ile ilk karaktere ulaşılır.
For Döngüsü ile String İşleme
Bir stringin her karakterini döngü ile yazdırmak mümkündür.
String uzunlukları, döngü koşulunda kullanılmalıdır.
Döngü, sıfırdan stringin uzunluğuna kadar çalıştırılır.
Tekrar Eden Karakterleri Yazdırma
String, tersten yazdırılmak üzere de işlenebilir.
Döngü, kullanıcıdan alınan stringin her karakterini ters sırayla yazdırmak için kullanılabilir.
Basit ve hızlı bir şekilde stringin tersini almak için indeksleme yöntemi uygulanır.
Şifre Doğrulama Uygulaması
Kullanıcıdan iki kez şifre girmesi istenir.
Şifrelerin eşleşip eşleşmediğini kontrol eden basit bir yapı uygulanır.
Gerekli durum kontrolleri geliştirilebilir; şifrelerin boş olup olmadığı veya belirli bir uzunlukta olup olmadıkları kontrol edilir.
Dizilerin Tanıtımı
Diziler, birden çok sayıyı tek bir değişkende saklamaya yarar.
Örnek olarak, bir `numbers` dizisi oluşturularak 3 değerin saklanması gösterilmektedir.
Kullanıcıdan Değer Alma
Kullanıcıdan 3 sayı girmesi isteniyor ve döngü ile bu değerler `numbers` dizisine aktarılıyor.
Giriş edilen sayılar konsol üzerinden okunuyor ve dizinin belirli indekslerine kaydediliyor.
Döngüler ile Değerleri Yazdırma
Dizi elemanlarını yazdırmak için `for` döngüsü kullanılıyor.
Dizi elemanları her döngüde konsol çıktısına yazdırılıyor ve boşluk ekleniyor.
Daha Dinamik Çözümler
Kullanıcıdan kaç değer gireceği sorularak dizi boyutu dinamik hale getiriliyor.
Kullanıcıdan alınan sayılar ile bir `for` döngüsü aracılığıyla işlem yapılmakta.
Dizilerle Matematiksel İşlemler
Dizideki değerlerin toplamını bulmak için `for each` döngüsü kullanarak her sayı üzerinde işlem yapılıyor.
Toplam değerin 180 olup olmadığı kontrol edilerek geçerlilik durumu belirtiliyor.
Dizi Sıralama ve Ters Çevirme
C#'da dizileri sıralamak için `Array.Sort()` metodu kullanılıyor.
Ayrıca `Array.Reverse()` ile dizinin elemanlarının tersine çevrilmesi gösterilmektedir.
Dizi Temizleme
Dizi elemanları sıfırlanmak için `Array.Clear()` metodu kullanılıyor.
Her bir elemanın varsayılan değeri ile resetlenmesi sağlanıyor.
Dinamik Aralık Kullanımı
Belli bir aralıktaki isimlerin aranması için spesifik aralıklar kullanmak önemlidir.
Verilerinizi daraltarak arama yapmak, arama performansını artırır.
Bir değer arandığında, bulunması için sıfırdan başlayarak başlayan diziler kullanılır.
Döngü Kullanarak Arama
Döngü ile elemanları tarar ve eşleşmeyi bulursa pozisyonu geri döndürür.
Belli bir elemanın dizide olup olmadığını kontrol etmek için -1 değeri kullanılır.
Dizileri oluştururken boyutlarının sabit olmadığı ve değerlerin değiştirilmediği durumlar ele alınmalıdır.
Listelerin ve Dizilerin Kullanımı
Listeler dinamik olup, boyutları ihtiyaçlara göre değiştirilebilir.
Diziler ise başlangıçta belirlenen boyuta sahiptir ve daha sonra değiştirilemez.
Oyunlar veya diğer uygulamalar için sabit boyutlu diziler daha uygun olabilir.
Kullanıcıdan Giriş Alma ve İşleme
Kullanıcıdan sayı alarak bunları listeye eklemek mümkündür.
Kullanıcıdan alınan değerler, döngü kullanılarak işlenir ve saklanır.
Alınan verilerin yazdırılması için döngülerden yararlanılır.
Sözlük (Dictionary) Kullanımı
Sözlükler anahtar-değer çiftlerini saklamak için kullanılır ve anahtarlar benzersiz olmalıdır.
Sözlük kullanırken elemanları erişmek, eklemek ve çıkarmak mümkündür.
Anahtar varlığını kontrol ederek hata alınmadan işlemler yapılabilir.
Fonksiyonların Tanımı
Fonksiyonlar, kodun okunabilirliğini ve yeniden kullanılabilirliğini artırmak için kullanılır.
Aynı kod parçasını tekrar tekrar yazmak yerine, bunu fonksiyonlar aracılığıyla tek bir yerde tanımlamak daha etkilidir.
C# Ana Fonksiyonu
C# dilinde her programın bir ana (main) fonksiyona sahip olması gerekir.
Ana fonksiyonun ismi 'Main' olmalı ve 'static' olarak tanımlanmalıdır.
Fonksiyonları Kullanma
Bir fonksiyon tanımlandıktan sonra, ana fonksiyon içerisinde çağrılmalıdır.
Fonksiyonlar ile hata yapma riskini azaltarak temiz bir kod yapısı sağlar.
Dönüş Değerleri
Bir fonksiyon, 'void' dönüş türüne sahip olabilir, bu durumda hiçbir değer döndürmez.
Araştırıldığında, bir fonksiyon dönüş değeri ile sonuç döndürebilir, bu durumda dönüş türü belirtilmelidir.
Parametre Kullanımı
Parametreler, fonksiyonlara dışarıdan veri göndermeyi sağlar.
Fonksiyonlar, aldığı parametrelerle daha dinamik hale getirilebilir.
Statik Fonksiyonlar
Statik fonksiyonlar, sınıfın bir örneği oluşturulmadan erişilebilir.
Statik anahtar kelime kullanıldığında, fonksiyonlar her yerden erişilebilir hale gelir.
Fonksiyonların Tek Sorumluluğu
İyi programlama pratiği, fonksiyonların tek bir iş yapmak üzere tasarlanmasıdır.
Birden fazla iş yapan fonksiyonlar, bakımını zorlaştırır ve hata yapma olasılığını artırır.
İşlem Fonksiyonları
Fonksiyonlar sadece bir işlemi yapmalı veya bir dönüş değeri döndürmelidir.
İhtiyaç duyulmadığı sürece, çok fazla veri biriktirerek kod üzerinde karmaşıklık oluşturmak alınmalıdır.
Giriş ve Temel Kavramlar
Fonksiyonların kullanımı ve parametrelerin önemi açıklanmaktadır.
String interpolasyonunun kullanımı göstermektedir.
Basit Hesap Makinesi Örneği
İki tam sayı alarak toplama işlemi yapan bir fonksiyon oluşturulmaktadır.
Sonucun konsola yazdırılması için örnek bir yapı oluşturulmuştur.
Okunabilirliği Artırmak
Kod tekrarının azaltılması ve okunabilirliğin artırılması üzerine örnekler verilmektedir.
String interpolasyonu ve konsol çıktısı arasındaki ilişki ele alınmaktadır.
İsteğe Bağlı Parametreler
Fonksiyonlarda isteğe bağlı parametrelerin nasıl tanımlanacağı açıklanmaktadır.
Varsayılan değerler kullanarak esnek fonksiyonlar oluşturma örnekleri sunulmaktadır.
Adlandırılmış Parametreler
Adlandırılmış parametrelerin kullanımı ile fonksiyon çağrılarının daha anlaşılır hale getirilmesi açıklanmaktadır.
Parametrelerin sırasının önemsiz olduğu belirtilmektedir.
Çıktı Parametreleri
Fonksiyonların birden fazla çıktısı olması durumu ve çıkış parametrelerinin kullanımı örneklenmektedir.
Değerlerin doğrudan değiştirilebilmesi için ref ve out parametreleri arasındaki farklar anlatılmaktadır.
Referans ile Passing ve Değer ile Passing
Referans ile passing, bellekteki değişkenin adresini aktarırken, değer ile passing değişkenin kendisini aktarır.
Değer ile passing, yerel bir değişken oluşturduğu için performans açısından daha yavaş olabilir.
Referans ile passing, bir değişkenin doğrudan bellek adresini kullanarak daha hızlıdır.
Ref ve Out Parametreleri Arasındaki Farklar
Ref parametrelerinde, değişkenin önce tanımlanması gerekirken, Out parametreleri için değişkenin tanımlanması gerekmez.
Out parametreleri, her durumda bir değer döndürmek zorundadır; aksi takdirde derleyici hata verir.
Ref parametreleri, gerekli olmayabilir ve belirli koşullar altında atanmayabilir.
Bir Üçgenin Alanını Hesaplama
Kullanıcıdan genişlik ve yükseklik alındıktan sonra, alan hesaplama fonksiyonu oluşturulacak.
Alan hesaplama formülü olarak (genişlik * yükseklik) / 2 kullanılır.
Hesaplanan alan daha sonra ekrana yazdırılır.
Toplama Fonksiyonu Oluşturma
Bir tamsayı dizisinin toplamını döndüren bir fonksiyon tanımlanacak.
Fonksiyon, dizinin uzunluğu kontrol edilerek tanımlanması gerektiği durumlarda hata mesajı döndürecektir.
Daha sonra bu fonksiyonun çıktısı ekrana yazdırılacaktır.
Try-Catch ile Hata Yönetimi
Try-catch yapısı, hataların yönetilmesini ve programın çökmesini önlemek için kullanılır.
Örnek olarak, geçersiz bir sayı girildiğinde programın çökmesi yerine kullanıcıya hata mesajı gösterilir.
Özel hatalar için farklı catch blokları tanımlanarak kullanıcıya daha açıklayıcı mesajlar sunulabilir.
Hata Yakalama ve Yönetimi
C# dilinde hataların yönetimi için try-catch blokları kullanılır.
Hangi tür hataları yakalayabileceğinizi belirleyin ve mümkün olduğunca spesifik catch blokları oluşturun.
Hatalar hakkında bilgi vermek kullanıcı deneyimini artırır; kullanıcıyı genel bir hata mesajı yerine spesifik bir hata mesajı ile bilgilendirin.
Format Hatası ve Overflow Hatası
Kullanıcıdan alınan büyük sayılar için console yazdırma işlemi long veri tipi ile yapılabilir.
Format hatası alırken, kullanıcıya hatanın nedenini belirten mesajlar vermek faydalıdır.
Overflow hatası, belirtilen sınırların dışına çıkıldığında ortaya çıkar.
Bir String'i INT'e Dönüştürmek
Kullanıcıdan aldığınız bir string değerini INT tipine dönüştürüyor ve hata olmadığında işlemi başarıyla gerçekleştiriyorsanız, kullanıcıya bir başarı mesajı göstermelisiniz.
Hatalı bir dönüşüm olması durumunda, kullanıcının tekrar giriş yapabilmesi için bir while döngüsü kullanılmalıdır.
Debugging Yöntemleri
Visual Studio'da debug yaparken, kırmızı nokta ile breakpoin oluşturun ve program çalışırken kodu adım adım takip edin.
F10 ve F11 tuşları ile kod içinde adım atabilir, fonksiyonları inceleyebilirsiniz.
Değişkenlere göz atarken, değişkenlerin değerlerini görebilir ve gerektiğinde değerlerini değiştirebilirsiniz.
Watch Penceresi ile Değişken Takibi
Watch penceresini kullanarak belirli değişkenlerin değerlerini izleyebilir ve kod çalışırken değişiklikleri görebilirsiniz.
Bir değişkenin değerini izlemek, program akışını anlamak açısından önemlidir.
Watch penceresine değişken ekleyerek, değerlerin durumunu gerçek zamanlı olarak takip edebilirsiniz.
Giriş ve Temel Kavramlar
Veri yapılarını tanımlamak için struct anahtar kelimesinin kullanımı.
Adı ve yaşı içeren bir kişi yapısının oluşturulması.
Farklı veri türlerinin (string ve int) bir array içinde saklanamadığı açıklaması.
Yapının Tanımlanması
Yapının bir örneğini yaratmak için yeni bir veri türü olarak kullanılabilmesi.
Yapının içindeki alanların public yapılması gerektiği vurgusu.
Erişim sınırlayıcıları ve bunların etkileri.
Kullanıcıdan Veri Alma
Kullanıcıdan bilgi almak için fonksiyonlar kullanarak veri çekme.
Çoklu veri türlerini içeren bir yapı kullanmanın avantajları.
Programın çalışma sırasında veri türlerinin nasıl yönetileceği.
Sınıfların Tanımlanması
Sınıfların oluşturulması ve yapılarla olan benzerlikleri.
Sınıflara parametreli yapıcı fonksiyonlar eklenmesi.
Sınıf içinde alanları saklamak için erişim denetimlerinin gerçekleştirilmesi.
Getters ve Setters
Public ve private erişim belirleyicileri ile alanların kontrol edilmesi.
Alan değerlerini değiştirmek için getter ve setter fonksiyonlarının oluşturulması.
Alanların boş değere atanması durumunda yapılması gereken kontrol mekanizması.
Fonksiyonların Yapı İçinde Kullanımı
Sınıf fonksiyonlarının nasıl tanımlanacağı ve kullanılacağı.
Sadece nesne üzerinden erişim sağlama ve bunun avantajları.
Fonksiyonların nesneye ait verileri geri döndürmesi.
Sınıf Tanıtımı ve Değer Atama
Sınıf tanımlanırken, alanların değerlerinin atanabilirliğinden bahsedilmektedir.
Alanın değerlerini değiştirmeden önce, sınıf özelliğinin kullanılması gerektiği açıklanıyor.
İlk olarak 'name' özelliği üzerinde çalışılıyor ve 'getName' fonksiyonunun kullanımına örnek veriliyor.
Yaş Özelliği ve Sınırlandırmalar
Yaş alanının atanması için bir 'setAge' fonksiyonu tanımlanıyor.
Yaşın 0 ile 150 arasında olup olmadığını kontrol eden bir 'if' yapısı kullanılmaktadır.
Geçersiz bir değer durumunda, yaş değeri -1 olarak atanır.
Fonksiyon Kısaltma ve Ternary Operatörü Kullanımı
Kodun karmaşıklığını azaltmak için ternary operatör kullanımı öneriliyor.
Yaş ve isim ataması için bu kısaltmanın nasıl yapılabileceği açıklanıyor.
Kodun daha okunabilir hale gelmesi için arrow fonksiyonlara geçiş yapılıyor.
Setter ve Getter Fonksiyonları Kullanımı
Setter ve getter kullanımı ile alanların güvenli bir şekilde atamasının nasıl yapılacağı anlatılıyor.
'Person' sınıfının örneği üzerinden 'setName' ve 'getName' fonksiyonları gösterilmektedir.
Proje içerisinde alanların özel tutulmasının önemli olduğu vurgulanıyor.
Özellikler ve Auto Property Kullanımı
C# dilinde özelliklerin tanımı ve kullanım şekli anlatılıyor.
Otomatik özelliklerle birlikte getter ve setter'ların nasıl kullanılacağı gösteriliyor.
Özelliklerde mantık bulunmadığı sürece auto property'nin faydaları vurgulanıyor.
ToString Override ve Kullanımı
Sınıfların string olarak nasıl gösterileceğinin 'override' edilmesi gerektiği açıklanıyor.
'ToString' fonksiyonunun kullanımıyla ilgili örnekler verilmektedir.
Kullanıcıların sınıf bilgilerini yazdırması için 'ToString' fonksiyonu nasıl uygulanır gösterilmektedir.
Fonksiyonlar ve İki Nesne Karşılaştırması
Belirli bir fonksiyonun açıkça çağrılması gerektiği, diğerinin ise doğal olarak çağrıldığı belirtiliyor.
İki nesne arasında karşılaştırma yapılırken default equals fonksiyonunun yetersiz olduğu açıklanıyor.
Nesne Oluşturma ve Detayları Yazdırma
Nesne oluşturma sırasında sadece değişken adının kullanılması gerektiği vurgulanmaktadır.
Kod çalıştırıldığında nesnelerin detaylarının doğru bir şekilde yazdırılabileceği gösterilmektedir.
Equals Fonksiyonunun Geçerliliği
Nesnelerin karşılaştırılmasında if ifadesinin kullanılarak karşılaştırma yapılabileceği açıklanmaktadır.
Nesnelerin eşitlik kontrollerinin yapılamadığı durumlarla ilgili örnekler verilmiştir.
Equals Fonksiyonunun Özelleştirilmesi
Kendi equals fonksiyonumuzu yazmanın gerekliliği ve bu fonksiyonda nesnelerin özelliklerinin karşılaştırılması gerektiği ele alınmaktadır.
Casting (tip dönüşümü) kullanarak nesnenin kendi türüne dönüştürülmesi gerektiği açıklanmaktadır.
Hata Kontrolü ve Runtime Hataları
Yanlış türde nesne geçildiğinde runtime hatalarının neler olabileceği ve hata kontrolü için kullanılan mekanizmalar açıklanmaktadır.
Nesne türü kontrol edilmeden dönüşüm yapılmaması gerektiği vurgulanmaktadır.
Summary ve Sonuç
Nesneleri yazdırmanın ve karşılaştırmanın basit yolları özetlenmiştir.
Kendi equals ve toString fonksiyonlarının nasıl özelleştirileceği ile ilgili bilgiler verilmiştir.
Learn C# Programming – Full Course with Mini-Projects
Learn C# Programming – Full Course with Mini-Projects