Мне приходит в голову, что контроль состояния в таких языках, как C #, не очень хорошо поддерживается.
Под этим я имею в виду, что программисту остается управлять состоянием объектов в памяти. Распространенным вариантом использования является то, что переменные экземпляра в доменной модели являются копиями информации, хранящейся в постоянном хранилище (то есть в базе данных). Очевидно, что это нарушает принцип единой точки власти, и разработчик должен управлять «синхронизацией».
Я предполагаю систему, в которой вместо переменных экземпляра у нас есть простые методы открытого доступа / мутатора, помеченные атрибутами, которые связывают их с базой данных, и где операции чтения и записи опосредуются структурой, которая решает, попадать в базу данных. Существует ли такая система?
Я полностью упускаю суть или в этой идее есть доля правды?