Dúvida sobre Arquitetura de Software
Conforme os estudos de ReactJS e API. Pode-se dizer que uma API feita com Node, Express é a parte do CONTROLLER. Mongoose ou Sequelize MODEL. E, o ReactJS o View?
Ou eles fazem parte de outra Arquitetura de Software?
Ou eles fazem parte de outra Arquitetura de Software?
Itamar Junior
Curtidas 0
Melhor post
Joel Rodrigues
17/09/2019
Fala, Itamar. Tudo em paz?
Pode ser que sim, ou que não. rsrs Precisamos analisar com a aplicação está estruturada para responder essa pergunta. Veja só:
Se você tem um projeto de aplicação web feito em Express e usa React em páginas específicas, que são servidas pela própria aplicação, então sim. Nesse caso o React está atuando na view, enquanto os controllers ficam por conta das estruturas propostas pelo Express e os models usam o Mongoose e/ou Sequelize.
Por outro lado, se você tem uma API desenvolvida com Express que serve dados para uma SPA (Single Page Application) desenvolvida com React, então aí temos duas aplicações distintas. Nesse ponto pode surgir a dúvida de "onde está a View" na API. Nesse caso não temos view enquanto interface de usuário, pois os controllers retornam as informações no formato JSON (normalmente).
Espero ter ajudado. E caso permaneça a dúvida, é só falar.
Abraço.
Pode ser que sim, ou que não. rsrs Precisamos analisar com a aplicação está estruturada para responder essa pergunta. Veja só:
Se você tem um projeto de aplicação web feito em Express e usa React em páginas específicas, que são servidas pela própria aplicação, então sim. Nesse caso o React está atuando na view, enquanto os controllers ficam por conta das estruturas propostas pelo Express e os models usam o Mongoose e/ou Sequelize.
Por outro lado, se você tem uma API desenvolvida com Express que serve dados para uma SPA (Single Page Application) desenvolvida com React, então aí temos duas aplicações distintas. Nesse ponto pode surgir a dúvida de "onde está a View" na API. Nesse caso não temos view enquanto interface de usuário, pois os controllers retornam as informações no formato JSON (normalmente).
Espero ter ajudado. E caso permaneça a dúvida, é só falar.
Abraço.
GOSTEI 2
Mais Respostas
Itamar Junior
17/09/2019
Sim sim, é uma aplicação com a estrutura que não é MVC, ele retorna um JSON.
Então nesse, caso qual a arquitetura utilizada?
Essa mesma API também será consumida por um app mobile.
Então nesse, caso qual a arquitetura utilizada?
Essa mesma API também será consumida por um app mobile.
GOSTEI 0
Joel Rodrigues
17/09/2019
Arquitetura é a forma como seu projeto é organizado, certo? Então não necessariamente ele segue um modelo de referência e não necessariamente precisa seguir.
Já vi pessoas gastando muito tempo e discutindo sobre "qual arquitetura eu uso", quando na verdade dar um nome a essa estrutura não vaia afetar em nada seu projeto.
Ou seja, você tem uma estrutura baseada no padrão MVC, mas não há views devido à natureza da aplicação (API). Você pode, ainda, usar estruturas sugeridas por outros modelos de referência, como a "Onion Arxhitecture".
No fim você pode concluir que não usa totalmente o modelo A ou o B, mas que sua arquitetura é baseada/inspirada neles. Se está tudo bem organizado, seguindo boas práticas e atende sua necessidade, ótimo.
Forte abraço.
Já vi pessoas gastando muito tempo e discutindo sobre "qual arquitetura eu uso", quando na verdade dar um nome a essa estrutura não vaia afetar em nada seu projeto.
Ou seja, você tem uma estrutura baseada no padrão MVC, mas não há views devido à natureza da aplicação (API). Você pode, ainda, usar estruturas sugeridas por outros modelos de referência, como a "Onion Arxhitecture".
No fim você pode concluir que não usa totalmente o modelo A ou o B, mas que sua arquitetura é baseada/inspirada neles. Se está tudo bem organizado, seguindo boas práticas e atende sua necessidade, ótimo.
Forte abraço.
GOSTEI 2
Itamar Junior
17/09/2019
Ótimo saber disso. Dessa forma, acho que vou apenas abordar/explicar como as partes do Projeto Lógico se integram, sem necessariamente nomear se é arquitetura MVC ou Arquitetura em Camadas.
Grande Abraço Joel!
Grande Abraço Joel!
GOSTEI 1
Itamar Junior
17/09/2019
O nome é Arquitetura Cliente/Servidor, vi aqui no livro de Programação Web.
GOSTEI 0