MVC: Os objetos Modelos e Entidade são conceitos separados?

eu pergunteiaqui há um tempo atrás, para obter alguma ajuda para entender o MVC, pois sou muito novo no tópico. Eu pensei que tinha uma compreensão decente disso, e isso está documentado em umpublicação no blog Escrevi recentemente sobre o assunto. Meu entendimento basicamente se resume a isso:

Controlador: determina o que precisa ser feito para atender a uma solicitação e utiliza os modelos necessários para coletar / modificar, conforme necessário. É basicamente um gerente para um determinado processo.

Visualizações: Apenas apresentação. Depois que um controlador coleta o que precisa, ele cria um tipo específico de visão, entrega as informações e diz "mostre isso ao usuário da maneira que você faz".

Modelos: Comportamento do aplicativo. Quando o controlador pede para extrair ou modificar algo, ele sabe como fazê-lo. Ele também sabe acionar outros modelos para executar tarefas relacionadas (no meu entendimento, quando um modelo tenta "votar em algo" no StackOverflow, esse modelo sabe perguntar se um crachá também deve ser concedido por causa disso. O controlador não precisa se preocupar com isso).

Minha pergunta, assumindo que tudo isso é mais ou menos preciso, é onde os objetos de entidade entram? Modelos e entidades são a mesma coisa, com cada objeto sabendo como manter seus próprios dados ou entidades são um conceito separado que existe por si só e é usado em todo o aplicativo?

Meu dinheiro está no último, pois isso permitiria que os modelos agissem independentemente, enquanto as três camadas (modelo, visualização e controlador) poderiam utilizar as entidades para transmitir dados conforme necessário. Além disso, objetos e persistência do banco de dados parecem preocupações que devem ser separadas.

Para ser sincero, quanto mais eu leio sobre o MVC, mais confuso eu fico. Estou pronto para pegar o conceito principal (separar a apresentação da lógica) e executá-lo da maneira que achar melhor, e não me preocupar muito com o rótulo "MVC".

questionAnswers(2)

yourAnswerToTheQuestion