Alanlar, otomatik özellikler ve nesne başlatıcıları
Alanları ve otomatik özellikleri tanımlayın, nesneleri özlü nesne başlatıcılarıyla oluşturun.
Alanlar, otomatik özellikler ve nesne başlatıcıları, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 3 dersinin 1. 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, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 3 dersten oluşur.
Sınıf temellerine genel bakış
Amaç: Basit sınıflar oluşturun.
- Alanlar ham verileri tutar
- Otomatik özellikler verileri düzenli biçimde sunar
- Nesne başlatıcıları oluşturma sırasında değerleri ayarlar
Bir sınıftaki alanlar
Alanlar, bir sınıfın içindeki değişkenlerdir. Herkese açık veriler için properties daha güvenlidir.
using System;
// Fields store raw data inside a class
public class Player
{
public string name; // field (usually prefer properties for public APIs)
public int level;
}
public class Program
{
public static void Main(string[] args)
{
Player p = new Player();
p.name = "Ada";
p.level = 1;
Console.WriteLine("Player " + p.name + " level " + p.level);
}
}
Otomatik özellikler
Otomatik özellikler, bir alan yazmadan get/set aracılığıyla verileri sunar. Basit varsayılan değerler ayarlayabilirsiniz.
using System;
// Auto-properties generate a hidden backing field
public class Book
{
public string Title { get; set; }
public string Author { get; set; }
public int Pages { get; set; } = 0; // auto-property initializer (C# 6)
}
public class Program
{
public static void Main(string[] args)
{
Book b = new Book();
b.Title = "Clean Code";
b.Author = "Robert C. Martin";
b.Pages = 464;
Console.WriteLine(b.Title + " by " + b.Author + " (" + b.Pages + " pages)");
}
}
Nesne başlatıcıları
Nesne başlatıcıları, özellikleri oluşturma sırasında ayarlayarak kodu kısa ve anlaşılır tutar.
using System;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Program
{
public static void Main(string[] args)
{
// Object initializer calls set-accessors after construction
Person p = new Person { Name = "Alan", Age = 30 };
Console.WriteLine(p.Name + " (" + p.Age + ")");
}
}
Alanlar ve özellikler
Yönerge:
- İç depolama için özel fields kullanın.
- Çağıran kodu bozmadan daha sonra doğrulama ekleyebilmek için herkese açık properties sunun.
- Adları açık ve basit tutun.
Alanlar ve özellikler birlikte
Yazma işlemlerini denetlemek için bir özel alanı bir özellikle birleştirin (basit değişmez koşullar).
using System;
// Private fields + public properties pattern
public class Product
{
private int _stock; // field (internal storage)
public string Name { get; set; } // property (public API)
public int Stock // property with simple guard
{
get { return _stock; }
set
{
if (value < 0) value = 0; // simple safety for beginners
_stock = value;
}
}
}
public class Program
{
public static void Main(string[] args)
{
Product p = new Product { Name = "Pen", Stock = 5 };
p.Stock = -3; // setter clamps to 0
Console.WriteLine(p.Name + " stock = " + p.Stock);
}
}
Otomatik özellik kavramı
Özet
Özet: Verileri fields ile tanımlayın ve bunları otomatik özellikler aracılığıyla sunun. Oluşturma sırasında değerleri ayarlamak için nesne başlatıcılarını kullanın.
Sıkça Sorulan Sorular
“Alanlar, otomatik özellikler ve nesne başlatıcıları” dersi ücretsiz mi?
Evet — “Alanlar, otomatik özellikler ve nesne başlatıcıları” 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 C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 3 dersten oluşur.
“Alanlar, otomatik özellikler ve nesne başlatıcıları” dersinde ne öğreneceğim?
Alanları ve otomatik özellikleri tanımlayın, nesneleri özlü nesne başlatıcılarıyla oluşturun. C# 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.
C# Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te C# 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, 3 dersinin 1. dersidir.
“Alanlar, otomatik özellikler ve nesne başlatıcıları” 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 C# Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her C# 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
- Alanlar, otomatik özellikler ve nesne başlatıcıları
- Yapıcılar ve statik üyeler
- Kapsülleme ve değişmez koşullar