Концепция MVVM состоит в том, чтобы отделить бизнес-логику (модель) от представления. В вашем случае читатель писатель должен быть в коде модели. Pro заключается в том, что если вы в любой момент хотите внести изменения в сторону представления, вы можете сделать это, не меняя и не перемещаясь по коду, который выполняет фактический обмен данными (чтение и запись).
Это также означает, что вы можете писать тесты для своей модели, и если вы измените свой взгляд, модель и тестовый код останутся без изменений.
Недостаток MVVM в том, что он добавляет некоторый дополнительный уровень кода, он может добавить некоторое время разработки (по крайней мере, если вы новичок в MVVM), и в начале вы можете чувствовать себя немного заблокированным, следуя шаблону.
В конце я обычно нахожу профи больше. Можно получить хороший и хорошо продуманный дизайн, разделить заботы о базе кода, легко тестировать различные части, и в день, когда вы получите запрос на изменение или расширение элемента управления, это будет намного проще.