Я не уверен, что понял, как вы перенесли концепцию представления в командную строку, но я постараюсь ответить.
Мой персональный контроллер может передать объект person в представление EditPeronDetails
, однако как мой вид редактирует этого человека, если он не может получить доступ к его установщикам, как я могу редактировать этого человека?
Это не так, контроллер делает. Представление только «захватывает» новые значения и действия и отправляет их контроллеру, который обрабатывает их и обновляет модель.
Также класс представления делает только одну вещь? т.е. я могу иметь вид человека, который имеет методы для создания, просмотра, удаления, редактирования человека
Вид может делать несколько вещей. Например, одну и ту же форму можно использовать для создания, чтения и обновления объекта домена (под созданием и редактированием я подразумеваю захват значений и отправку их в контроллер). Это на самом деле очень распространенная модель. Но, как я уже сказал, логика выполняет не точка зрения, а контроллер.
Итак, чтобы ответить на ваш вопрос, я думаю, мы можем представить, что в Person View есть специальные методы для захвата пользовательского ввода и обработки связи с контроллером, но не для логики CRUD (мне действительно интересно, как вы справляетесь взаимодействие с пользователем в командной строке, это не очень удобно для приложения CRUD).