Ir para conteúdo
Anderson Modolon

Arquitetura correta para sistema que utiliza PHP e AngularJS

Recommended Posts

Para o desenvolvimento de um sistema grande onde será utilizado o angularJS, sendo que até aonde pesquisei as regras de negócio ficariam no javascript tenho uma dúvida:


Como seria uma arquitetura correta aonde é possível a utilização dos recursos de uma linguagem de servidor junto com o AngularJS? A principio pensei na separação das regras de negocio do sistema no PHP e as regras de negocio de interface no Angular, mas apenas um pensamento.


Gostaria de sugestões ou referências sobre o assunto.



Resumindo:

A minha dúvida seriam apenas como fazer uma arquitetura onde o sistema (regras de negocio, etc...) ficariam no php mas utilizando o AngularJS.



Agradeço pela atenção!!


Att.

Anderson

Compartilhar este post


Link para o post
Compartilhar em outros sites

A única maneira de compartilhar as regras de negócio entre cliente e servidor é utilizando a mesma linguagem em ambos.

 

Nesse caso Javascript. Qualquer outra alternativa forçaria você a criar uma camada de abstração no servidor (basicamente uma API) que o cliente teria acesso, para isso você teria que fazer uso de AJAX ou algo parecido.

 

Se você quer realmente compartilhar o código entre servidor-cliente, você pode tentar escrever o servidor em node js, por exemplo, e compartilhar os módulos que precisar com o cliente.

 

Minha sugestão é ir com o que você sabe. Geralmente existe pouca coisa que você terá que recriar do lado do cliente como lógica de negócio. Se você nos contar um pouco mais do que se trata, talvez possamos ter uma ideia melhor da sua meta.

  • +1 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela sua resposta.

 

O motivo da necessidade de deixar as regras de negócio no lado do servidor (no caso, a principio escritas no PHP) seria devido a sincronização automática de dados com outro sistema (XML). Também é de interesse (coisas básicas de um bom projeto) a utilização de recursos como orientação à objetos, padrões de projetos, etc... a fim de prever a manutenção/alterações pela equipe.

Editado por Mário Monteiro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde Anderson, o angularJS é uma abstração do javascript, assim como JQuery e outros frameworks javascript, lógico cada um com sua finalidade. suas principais regras de negócio continuaram sendo realizadas no PHP ou qualquer outra linguagem web de sua preferência. a comunicação entre os dois será via AJAX, onde seu código no AngularJS irá fazer uma requisição e o PHP irá lhe retornar os dados. existe sim algumas regras de negócio que você poderá fazer no próprio angular, mas o núcleo mesmo da aplicação será a comunicação com a sua API de dados, que podem ser em PHP ou qualquer outra linguagem web de sua preferência.

Editado por LeozinCuiabá
  • +1 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite a todos. Anderson ótima discussão. Nos próximos dias irei começar a desenvolver um projeto relativamente grande e queria utilizar o angularJs com PHP. Gostaria de saber se você resolveu esse impasse?

Editado por Ronald Araújo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde

 

Ronald, em relação ao meu impasse, à principio resolvi utilizando arquitetura rest, onde o sistema seria um projeto e a interface outra, desde que o padrão restful para a comunicação entre ambos seja seguido.

 

No caso a interface seria utilizando angularjs, aonde ficariam apenas as regras de negócio relativas à interface, e no sistema em php ficam todas as regras de negócio relativas ao sistema em sí.

Editado por Anderson Modolon

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.