C# Gelişmiş: C# Kayıtlarına Ek Üyeler Ekleme
C# kayıtları, verileri bir arada tutmanın basit ve güvenli bir yoludur. Kayıtlar, değişmezdir, yani oluşturulduktan sonra değerleri değiştirilemez. Ancak bazen bir kayıta yeni üyeler ekleme ihtiyacı duyabiliriz. Bu makalede C# kayıtlarına ek üyeler eklemenin farklı yollarını inceleyeceğiz.
1. Yeni Bir Kayıt Türü Oluşturma
Ek üyeler içeren yeni bir kayıt türü oluşturmak, yeni bir kayıt türüne ek üyeler eklemenin en basit yoludur. Bu yöntem, orijinal kayıt türünü değiştirmeden yeni bir kayıt türü oluşturmanızı sağlar.
“`csharp
public record Person
{
public string FirstName { get; init; }
public string LastName { get; init; }
}
public record Employee : Person
{
public int EmployeeId { get; init; }
public string Department { get; init; }
}
“`
Yukarıdaki örnekte, **Employee** adlı yeni bir kayıt türü oluşturduk ve bu tür **Person** türünden türetilmiştir. **Employee** türü, **Person** türünün tüm üyelerini miras alır ve ek olarak **EmployeeId** ve **Department** üyelerini içerir.
2. Kalıtım Kullanma
Yeni bir kayıt türü oluşturmak yerine, mevcut bir kayıt türüne yeni üyeler eklemek için kalıtımı kullanabiliriz. Kalıtım kullanarak, mevcut bir kayıt türünden miras alan ve ek üyeler içeren yeni bir kayıt türü oluşturabiliriz.
“`csharp
public record Person
{
public string FirstName { get; init; }
public string LastName { get; init; }
}
public record Employee : Person
{
public int EmployeeId { get; init; }
public string Department { get; init; }
}
“`
Bu örnekte, **Employee** türü **Person** türünden türetilmiştir. **Employee** türü, **Person** türünün tüm üyelerini miras alır ve ek olarak **EmployeeId** ve **Department** üyelerini içerir. Bu yöntem, mevcut kayıt türünü değiştirmeden ek üyeler ekleme olanağı sağlar.
3. Kayıt Genişletme Kullanma
C# 9.0’dan itibaren, mevcut bir kayıt türünü genişletebilen kayıt genişletme özelliği sunulmaktadır. Kayıt genişletme, mevcut kayıt türünü değiştirmeden yeni üyeler eklemenizi sağlar.
“`csharp
public record Person
{
public string FirstName { get; init; }
public string LastName { get; init; }
}
public static class PersonExtensions
{
public static Employee ToEmployee(this Person person, int employeeId, string department)
{
return new Employee(person.FirstName, person.LastName, employeeId, department);
}
}
public record Employee(string FirstName, string LastName, int EmployeeId, string Department);
“`
Yukarıdaki örnekte, **PersonExtensions** sınıfı, **Person** türü için bir genişletme yöntemi tanımlar. **ToEmployee** yöntemi, bir **Person** nesnesini, **EmployeeId** ve **Department** değerlerini alarak bir **Employee** nesnesine dönüştürür. Bu yöntem, **Person** türünde ek üyeler oluşturmaz, ancak yeni bir **Employee** nesnesi oluşturarak mevcut nesneyi genişletir.
C# Kayıtlarına Ek Üyeler Eklemenin Avantajları
C# kayıtlarına ek üyeler eklemenin birkaç avantajı vardır:
- Okunabilirlik: Kayıt genişletmeleri, kodun daha okunabilir olmasını sağlar. Mevcut kayıt türünde yeni üyeler oluşturmak yerine, yeni bir kayıt türü oluşturmak veya kalıtım kullanmak daha temiz bir yaklaşım olabilir.
- Esneklik: Kayıt genişletmeleri, mevcut kayıt türünü değiştirmeden yeni üyeler ekleme olanağı sağlar. Bu, mevcut kod tabanına yeni işlevler eklemek için esneklik sağlar.
- Güvenlik: Kayıtlar, değişmez oldukları için, genişletme yöntemleri, kayıt türünü değiştirmeden yeni üyeler eklemenin güvenli bir yolunu sağlar.
Sonuç
C# kayıtları, verileri bir arada tutmanın basit ve güvenli bir yoludur. Kayıtlar, değişmezdir, yani oluşturulduktan sonra değerleri değiştirilemez. Ancak bazen bir kayıta yeni üyeler ekleme ihtiyacı duyabiliriz. Bu makalede, C# kayıtlarına ek üyeler eklemenin farklı yollarını inceledik.
Bu makalenin, C# kayıtlarına ek üyeler ekleme konusunda daha derin bir anlayış kazandırmanıza yardımcı olduğunu umuyorum. Daha fazla bilgi edinmek için fatihsoysal.com sitesini ziyaret edebilirsiniz.
#Etiketler
C#, Kayıtlar, C# Kayıtları, Ek Üyeler, C# Kayıtlarına Ek Üyeler Ekleme, Kayıt Genişletme, Kalıtım, Yeni Kayıt Türü