Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Marcel Luiz

Projetos PHP

Recommended Posts

Boa tarde pessoal!

 

É meu primeiro post no fórum, desculpem qualquer coisa que eu esteja fazendo de errado.

 

Bom, tenho uma dúvida quanto a construção de aplicações. O meu cenário é o seguinte:

- Tenho um projeto que constrói a estrutura de um menu em árvore, ele foi construído com padrão MVC,

e faz suas requisições via AJAX;

- Tenho outro projeto que gera uma lista, onde listo todos os produtos cadastrados no banco, este também

é construído em padrão MVC, e faz requisições via AJAX;

- Agora tenho outro projeto, que chamaremos de "Principal", onde quero usar os outros dois projetos. Vou criar uma interface,

onde aparece o resultado dos outros dois projetos;

 

É como se eu quisesse trabalhar com "módulos", cada um responsável por uma determinada função. Como eu posso proceder neste caso,

pois quando eu "importo/copio", os outros projetos para dentro do "Principal", eles perdem referências de arquivos, as

requisições AJAX não funcionam mais, StyleSheets não funcionam mais, sendo que testados separadamente, eles funcionam.

 

Alguém pode me ajudar? A questão é que tenho vários "módulos" prontos, porém, chegou a hora de acopla-los, e não está

nada funcionando. Realmente preciso de ajuda, pois tenho até final do ano para termina-lo e ainda tem muita

coisa pra ajustar e testar.

 

Se alguém puder ajudar, eu ficaria muito grato!

At,

Marcel Luiz ^_^

Compartilhar este post


Link para o post
Compartilhar em outros sites
Você está cometendo um grande erro fazendo isso .. colocando ajax em tudo.

Cara, não é beeem assim também.

Qual o melhor cliente de e-mail que existe? GMail, feito 100% utilizando Ajax.

A questão é que fica mais difícil desenvolver, precisa-se aprender a lidar com cache, as funções que são nativas do navegador tem de ser emuladas com Javascript.

 

Quanto à dúvida do autor, provavelmente são os caminhos dos arquivos que estão errados, fica difícil de chutar o que é...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rick, se pensarmos por este lado, o twitter é legal, usa ajax em tudo ? o facebook é legal .. usa ajax em tudo ? eles claro, tem várias coisas que funcionam com ajax, mas o site todo em si, não é em ajax.

 

O que eu quis dizer, é o seguinte, ter uma página dinâmica é bacana, mas ao mesmo tempo ruim, pense bem, um cliente com conexão lenta, e você depende de uma requisição para várias coisas, como imaginaria que seu sistema fosse funcionar ? ia ser lento pra tudo ..

 

Ter um ajax em uma opção de excluir registro por exemplo, é bacana .. mas ficar usando em tudo quanto é lugar não é bom, imagine também 1000 requisições no seu site ? todo mundo utilizando o sistema .. e você tá fazendo requisições .. e tá fazendo requisições ... o fluxo de dados é muito muito maior ..

 

Um exemplo disso :seta: http://forum.imasters.com.br/blog/1/entry-5-server-push/

 

Não é o caso, pois não temos um intervalo de requisições , mas dependendo da situação, ele pode estar enviando várias, isso contando com vários clientes utilizando o sistema ao mesmo tempo.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Rick, se pensarmos por este lado, o twitter é legal, usa ajax em tudo ? o facebook é legal .. usa ajax em tudo ? eles claro, tem várias coisas que funcionam com ajax, mas o site todo em si, não é em ajax.

O Twitter é praticamente inteiro em Ajax. É fácil notar isso quando se tem uma navegação baseada em hashes ('#').

O Facebook também utiliza muito Ajax, mas não é totalmente, concordo.

Agora veja os aplicativos Google, como Gmail, GoogleDocs, GoogleCalendar, etc... eles são em PURO Ajax.

Mas como eu falei, pra fazer algo assim tem que ter 'cojones'. Não é tão simples fazer com que um site/aplicativo funcione de maneira eficiente usando apenas Ajax.

 

O que eu quis dizer, é o seguinte, ter uma página dinâmica é bacana, mas ao mesmo tempo ruim, pense bem, um cliente com conexão lenta, e você depende de uma requisição para várias coisas, como imaginaria que seu sistema fosse funcionar ? ia ser lento pra tudo ..

Não entendi exatamente o que você quis dizer aqui, mas pensa assim, com eu sem Ajax, o usuário vai ter que disparar uma requisição, a diferença é que a resposta em Ajax é menor, o que em tese seria mais vantajoso para conexões lentas.

Ter um ajax em uma opção de excluir registro por exemplo, é bacana .. mas ficar usando em tudo quanto é lugar não é bom, imagine também 1000 requisições no seu site ? todo mundo utilizando o sistema .. e você tá fazendo requisições .. e tá fazendo requisições ... o fluxo de dados é muito muito maior ..

Novamente, sem Ajax, você faz requisições também.

 

Entenda que eu concordo com você, desenvolver aplicações eu Ajax puro é bobeira para nós reles mortais. Eu já tentei e realmente a experiência do usuário é melhor, mas o custo de desenvolvimento é alto.

 

Imagine um sistema de gerenciamento de, sei lá, produtos de uma loja, notícias de um jornal online, etc. feito com 'edição sob demanda', sem formulários, o usuário clica no que ele deseja editar, aparece um campo de texto para ele editar aquele conteúdo, quando ele aperta ENTER, uma requisição Ajax é disparada e os dados são atualizados.

Soa bonito, não? Mas na hora de manter essa bagaça o autor (no caso, eu) sofre demais.

 

Em suma, Ajax realmente gera aplicações mais leves e responsivas, mas para usá-lo em um projeto inteiro você antes tem que saber que o buraco é sempre mais embaixo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não acho que seria vantajoso, pois veja bem, um cliente acessa um site, e para qualquer coisa que ele vá fazer, essa requisição está envolvida, você iria trafegar muito mais dados do que interpretando o código na própria página, veja este exemplo que você mesmo deu do input, se o cara fizesse igual no perfil do google+, 'clique na área desejada para alterar', e ele alterasse uma informação, seguida de outra e outra e .. você teria uma requisição, e outra e outra e .. quando no formulário de alteração, seria executado somente uma vez.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fora a discussão e respondendo a dúvida do Marcel Luiz. Não da para testar os módulos separadamente por ajax, pois se você utilizar eles juntos, podem assumir caminhos diferentes de separados, então é bom desenvolver sempre testando aonde ele vai ficar. Trabalho com um sistema que utiliza muito ajax, tem prós e contras, mas como o sistema é voltado para o usuário e não para performance, ajax foi a solução.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Andrey Knupp

(...) um cliente acessa um site, e para qualquer coisa que ele vá fazer, essa requisição está envolvida (...)

Cara, não estou entendendo... num site sem ajax o usuário fará praticamente o mesmo número de requisições, precisou de interação com o servidor, disparou uma requisição, pelo menos se o Ajax for usado com consciência, entende?

 

(...) veja este exemplo que você mesmo deu do input, se o cara fizesse igual no perfil do google+, 'clique na área desejada para alterar', e ele alterasse uma informação, seguida de outra e outra e .. você teria uma requisição, e outra e outra e .. quando no formulário de alteração, seria executado somente uma vez.

Correto! Mas aí dá pra fazer uma espécie de cache que armazena dos dados alterados e só os envia quando o usuário deixar a página, por exemplo, mas chegou no que eu queria dizer: DÁ MUITO TRABALHO.

 

@Gabriel Heming

Não da para testar os módulos separadamente por ajax, pois se você utilizar eles juntos, podem assumir caminhos diferentes de separados, então é bom desenvolver sempre testando aonde ele vai ficar.

Cara, essa é exatamente a idéia de modulação: desenvolver separado e depois juntar tudo no projeto final. Se for feito direito, não tem como não funcionar. A questão é que é difícil conseguir um desenvolvimento modular com um nível quase zero de acoplamento.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Correto! Mas aí dá pra fazer uma espécie de cache que armazena dos dados alterados e só os envia quando o usuário deixar a página, por exemplo, mas chegou no que eu queria dizer: DÁ MUITO TRABALHO.

Sim, mas essa de 'deixar' a página aí não rola não .. até mesmo porque, dependendo da conexão, a requisição para salvar não é nem enviada, é um dos assuntos que já foi discutido em N tópicos aqui no fórum ..

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia pessoal!

 

Agradeço a todos pelas respostas, quem sabe, vamos chegar em um conclusão.

 

Também não estou entendendo o que o usuário Andrey Knupp está querendo dizer, imaginemos

a seguinte situação.

 

Com AJAX:

- Tenho um formulário em minha página pra que o usuário altere o nome de cadastro, ao

clicar no "Alterar", uma requisição AJAX é enviada ao servidor, que por sua vez, devolve uma frase

dizendo "Alterado com sucesso!". Somente isto e nada mais que isto.

 

Sem AJAX:

- Tenho um formulário em minha página pra que o usuário altere o nome de cadastro, ao

clicar no "Alterar", á pagina é redirecionada, conforme a action, para uma outra que cuida da alteração do nome do usuário,

está por sua vez, realiza a alteração e, volta para a página do formulário, e carrega todo seu layout

novamente, agora sim com uma resposta.

 

Percebemos aqui, que o consumo de banda é muito maior, devido a necessidade de recarregar toda a página,

enquanto que com o AJAX, não recarregamos nada, e simplesmente com a resposta da requisição, podemos dar um alert(),

com a mensagem retornada do servidor(falha ou sucesso).

 

Bem, é isso que meu conhecimento me diz :D

 

Mas, e agora? Bem, voltando ao escopo, também acredito que possa ser mesmo, a questão dos caminhos, que

o Gabriel Heming comentou, mas talvez eu tenha me expressado de forma errada, não estou testando os módulos

via AJAX, mencionei apenas que desenvolvi os módulos e que separadamente eles funcionam, somente na hora

de usar o módulo dentro do projeto "Principal", é que ele não está funcionando. Mas como eu disse, pode mesmo

ser a questão de apontamento do caminhos.

 

Se for isso, alguém sabe a melhor forma de contornar este problema, como trabalho com caminhos absolutos? Eu sempre

fico me perguntando, como as pessoas que disponibilizam bibliotecas, classes prontas, fazem pra que estas funcionem

em qualquer projeto assumindo que, quando um usuário usa-las, pode nomear a pasta onde fica seu conteúdo, de qualquer

forma, com qualquer nome.

 

Bom pessoal, seria isso, estou no aguardo de uma resposta.

Abraços,

Marcel Luiz ^_^

Compartilhar este post


Link para o post
Compartilhar em outros sites

impossível sugerirmos qq coisa, sem sabermos o real motivo de estar falhando.

 

você precisa debugar, descobrir o motivo de não funcionar, e só ai sim, terá como indicar soluçoes.

 

 

leia:

http://wbruno.com.br/blog/2011/03/31/como-debugar-javascript-firefox-erros-comuns/

http://wbruno.com.br/blog/2011/04/14/como-debugar-ajax-firebug/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu costumo utilizar ajax apenas em questões simples, como por exemplo o cadastro de uma notícia, ou exclusão de dados como disse um dos amigos... fora isso prefiro o bom e funcional carregamento de página, ele da uma segurança ao usuário de que a "página" está sendo processada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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