C# POCO Nedir?

POCO, “Plain Old CLR Object” veya “Plain Old C# Object” kelimelerinin baş harflerinin kısaltmasıdır. POCO, .NET platformundaki bir nesne veya sınıf türünü tanımlamak için kullanılan bir terimdir. Bu terim, türün temel bir veri taşıyıcı veya veri transfer nesnesi (DTO) olduğunu ve fazladan karmaşıklık içermediğini ifade eder. POCO sınıfları, yalnızca veri depolamak ve taşımak için kullanılır, iş mantığı veya işlevselliği içermez.

POCO sınıflarının bazı özellikleri şunlar olabilir:

  1. Sadece Özellikler (Properties): POCO sınıfları, verileri saklamak ve taşımak için yalnızca özellikler (properties) içerir. Bu özellikler, alanların (fields) yerine genellikle otomatik özellikler (auto-implemented properties) şeklinde tanımlanır.
  2. İşlevsellik İçermez: POCO sınıfları, iş mantığı veya işlevselliği uygulamazlar. Diğer sınıflar veya bileşenler, POCO nesnelerini kullanarak bu tür işlevselliği sağlayabilir.
  3. Veri Taşıma Amaçlı: POCO sınıfları, verileri veritabanlarından, web hizmetlerinden veya farklı uygulama katmanları arasında taşımak için sıklıkla kullanılır. Özellikle ORM (Object-Relational Mapping) araçlarıyla birlikte kullanılarak veritabanı tablolarını temsil edebilirler.
  4. Kolaylıkla Serileştirilebilir: POCO sınıfları, JSON, XML veya diğer veri formatlarına kolayca serileştirilebilir ve serileştirilebilir. Bu, veri iletişimi ve depolama işlemlerini kolaylaştırır.

Örnek bir POCO sınıfı:

public class Customer
{
    public int CustomerId { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string Email { get; set; }
}

Yukarıdaki örnekte, Customer sınıfı basit bir POCO sınıfıdır. Yalnızca özellikler içerir ve verileri taşımak için kullanılır. Bu tür sınıflar genellikle veri tabanı tablolarını veya web hizmetlerinden gelen verileri temsil etmek için kullanılır.