Sobes.tech
Junior — Middle

MVVM deseni hangi yapı ve bileşenler dahildir?

sobes.tech yapay zeka

AI'dan gelen yanıt

MVVM (Model-View-ViewModel) deseni, uygulamayı üç ana bileşene ayırır:

  • Model — verileri ve iş mantığını temsil eder. Verilerle çalışan katmandır, örneğin veritabanı modelleri veya servisler.
  • View — verilerin kullanıcıya gösterilmesinden sorumludur. Bilgi gösteren ve kullanıcı girişini alan UI bileşenleridir.
  • ViewModel — Model ve View arasında aracı görevi görür. Sunum mantığını içerir, Model'den gelen verileri View için uygun formata dönüştürür ve kullanıcı komutlarını işler.

Bu ayrım, kodun test edilebilirliğini, bakımını ve yeniden kullanılabilirliğini artırır. View ve ViewModel genellikle binding mekanizmalarıyla bağlanır, bu da UI güncellemeleri için gereken kod miktarını azaltır.

C# ve WPF kullanımıyla örnek:

public class PersonViewModel : INotifyPropertyChanged
{
    private string name;
    public string Name
    {
        get => name;
        set
        {
            name = value;
            OnPropertyChanged();
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;
    protected void OnPropertyChanged([CallerMemberName] string propName = null)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propName));
    }
}

Burada, ViewModel Name özelliğini içerir, bu da View tarafından bağlanabilir ve gösterilip düzenlenebilir.