Jump to content
IRX773

PHP ou Js?

Recommended Posts

IRX773

Boas, o titulo do tópico é mesmo daquele de se ignorar ao ver nos tópicos não lidos, mas dá uma idéia directa do tópico pois a minha questão é a seguinte:

Pouco sei de programação web e então penso em aventurar-me nesta área. A minha pergunta centra-se no facto de estar indeciso entre o PHP e o Javascript (AJAX ou não) e pedia a opinião a quem me possa fazer uma comparação.

- Qual das duas é mais poderosa?

- Qual das duas tem mais suporte (sei que o PHP tem muito suporte por parte da Zend)?

- Qual das duas tem mais funcionalidades?

- Ao nível de API's e de interação directa com o SO (tipo ter acesso à web cam, por exemplo, sem necessitar do flash)?

- Ao nível da utilização fora da web (por exemplo utilização em mobile, os widgets são feitos em HTML5 em certos terminais)

- Qual das duas é mais "standarizada"?

- Qual das duas tem mais "futuro"?

- Qual das duas pode mais incorporar-se noutras linguagens (tipo utilizar scripts de PHP ou de Js em Perl por exemplo) e em programas (Tipo fazer scripts para programas)?

- Qual das duas é mais "substituta" do Flash?

- Ao nível da segurança, qual das duas oferece mais segurança?

Share this post


Link to post
Share on other sites
scorch

Não te posso responder a nenhuma das perguntas pois têm propósitos diferentes. PHP é do lado do servidor (e para construíres uma aplicação Web Dinâmica vais sempre necessitar de uma) e JavaScript é do lado do cliente (dá para fazer a GUI, interactividade, AJAX, etc...). :)

O melhor será mesmo aprenderes primeiro PHP (e por consequente HTML + CSS) e aprendas a trabalhar com PHP + Bases de Dados (recomendo MySQL). Depois, podes "apostar" no JavaScript. :thumbsup:


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
IRX773

Não te posso responder a nenhuma das perguntas pois têm propósitos diferentes. PHP é do lado do servidor (e para construíres uma aplicação Web Dinâmica vais sempre necessitar de uma) e JavaScript é do lado do cliente (dá para fazer a GUI, interactividade, AJAX, etc...). :)

O ideal será mesmo as duas.

Esperava que fosse algo assim, embora estivesse um pouco confuso. Porém resta-me uma dúvida: Ao utilizar Js o CSS torna-se obsoleto pois o Js trata da parte gráfica toda ou complementam-se?

O melhor será mesmo aprenderes primeiro PHP (e por consequente HTML + CSS) e aprendas a trabalhar com PHP + Bases de Dados (recomendo MySQL). Depois, podes "apostar" no JavaScript. :thumbsup:

Também tinha pensado começar no PHP, por estar mais familiarizado e por perceber um pouco, porém surgiu-me a dúvida se eram concorrentes ou "complementares" uma à outra. Seguirei o teu conselho por certo.

Share this post


Link to post
Share on other sites
scorch

Porém resta-me uma dúvida: Ao utilizar Js o CSS torna-se obsoleto pois o Js trata da parte gráfica toda ou complementam-se?

Com JavaScript não consegues tratar da parte gráfica (embora acho que com o Canvas do HTML5 vais conseguir). Com JavaScript podes é manipular o HTML e o CSS "dinamicamente".


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
softklin

A utilização de Javascript não implica deixares de usar CSS. O CSS permite-te controlar a apresentação do teu documento para a web. No máximo, o Javascript pode ajudar-te a controlar essa apresentação, mas não o substitui (no sentido de que não é o propósito). A intenção do Javascript é poderes controlar o teu documento como quiseres, adicionando texto, efeitos, containers, etc.

Recomendo-te a seguinte ordem de aprendizagem:

XHTML

CSS

Javascript

PHP

Se suportares multithreading :) recomendo-te esta ordem (cima para baixo):

XHTML            CSS

Javascript      PHP

É fácil de aprender. Depois há coisas que te podem facilitar a vida, por exemplo, no javascript exigem projectos chamados frameworks, que te vão auxiliar no desenvolvimento com javascript (algumas funcionalidades típicas já implementadas, à semelhança da .Net Framework, por exemplo). Mas para já, recomendava mesmo a aprenderes cada componente de forma "pura", e depois de entenderes o seu funcionamento, começar a utilizar as tais frameworks.

Para o post ficar completo, recomendo-te a utilizares o Notepad++ (se estiveres em Windows) para o desenvolvimento de todos os componentes, numa fase inicial. Mais tarde podes utilizar outros IDE's que te irão acelerar o desenvolvimento.


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
IRX773

Para o post ficar completo, recomendo-te a utilizares o Notepad++ (se estiveres em Windows) para o desenvolvimento de todos os componentes, numa fase inicial. Mais tarde podes utilizar outros IDE's que te irão acelerar o desenvolvimento.

Nem eu tencionava outra coisa, é Np++ em Windows e Kate em Linux. São as minhas escolhas.

Share this post


Link to post
Share on other sites
taviroquai

Acho que o softclean e o scorch já disseram tudo...

Eu já não faço quase nada de raiz em PHP... uso frameworks.

Para PHP uso Code Igniter. Para CMS em PHP uso Joomla.

Para javascript uso Prototype + Script.aculo.us

A pouco tempo descobri uma extensão para o prototype para fazer janelas que é um espetaculo: http://prototype-window.xilinus.com/

Bem, afinal ainda faço muita coisa de raiz em XHTML, CSS e SQL  :cheesygrin:

Share this post


Link to post
Share on other sites
falco

Parece que estás um bocado confundido!

O PHP e Javascript, não são tecnologias que estejam a competir uma com a outra. Servem essencialmente para coisas diferentes e complementares.

A maior parte das tuas questões, não faz sequer sentido.

Ambas as linguagens são poderosas, mas servem para coisas diferentes, uma é para ser executada no servidor, outra no cliente (embora também haja javascript server side isso é praticamente irrelevante).

A questão do suporte não faz sentido no caso do Javascript. O Javascript é interpretado pelos browsers, existem vários motores de javascript, e por exemplo cada um dos principais tem o seu...

O Javascript que é interpretado em browsers, normalmente não tema cesso directo ao sistema operativo, (nem faz sentido ter, por motivos de segurança). Telemóveis e dispositivos móveis semelhantes são a excepção, mas só o fazem com APIs de cada fabricante. O Javascript só tem acesso  às API do lado do cliente, pois é aí que ele é executado.

O PHP só tem acesso ao sistema operativo do lado do servidor, porque é aí que ele é executado...

Quanto a standards O Javascript é baseado na norma do ECMA Script e tem API que implementam diversas outros standards como o DOM... Já o PHP, é um animal diferente existe a implementação de referência do The PHP Group, que é Software Livre e está bastante documentada. Existem outras implementações de PHP, mas basicamente são irrelevantes.

Ambas têm Futuro... Mas mais uma vez não são alternativa uma à outra... São complementares.

Quanto a utilizar PHP e Javascript em outras linguagens, isso é algo que quase nunca faz sentido. Contudo é possível. Por exemplo em Perl é possível utilizar scripts de PHP e de Javascript, mas só meia-duzia de pessoas no mundo é que o devem fazer e devem ter razões muito especiais. Isto não é algo minimamente relevante para escolher qualquer linguagem de programação.

O flash é essencialmente uma tecnologia do lado do cliente, por isso o javascript é a que poderia estar mais próxima disso, alias o flash utiliza action script que é uma linguagem irmã do javascript (também é feita a partir do ECMA script e por exemplo a Adobe doou, o motor de action script do flash à Mozilla Foundation para esta utilizar como motor de javascript). Contudo o Javascript não é sozinho alternativa ao flash, nem é suposto ser.

Quanto a segurança também é uma questão que não faz sentido...

Esperava que fosse algo assim, embora estivesse um pouco confuso. Porém resta-me uma dúvida: Ao utilizar Js o CSS torna-se obsoleto pois o Js trata da parte gráfica toda ou complementam-se?

CSS não é uma linguagem de programação é uma forma de aplicar estilos a documentos web. É algo também completamente diferente. O Javascript graças ao DOM, manipula o CSS dos documentos web para modificar aspectos gráficos. Para web o HTML, CSS, JavaScript e PHP, são todos tecnologias complementares, todos eles fazem coisas diferentes e necessárias para ter um site web moderno e funcional. O PHP pode ser substituído por outra coisa (Perl, Python, Ruby, ASP.net+coisas.net, TCL, etc...) mas para fazer web de forma minimamente decente tens que usar (X)HTML, CSS e JavaScript, não há volta a dar. Por isso podes e deves aprender tudo isso.

Share this post


Link to post
Share on other sites
IRX773

Obrigado pelas vossas respostas. Eu realmente não percebo muito de web developing e daí as dúvidas, na maioria noobs, mas, novamente, obrigado pelas respostas que esclareceram até outras dúvidas que tinha, de menor importância.

Já agora, tenho utilizado um conjunto de 3 sites para fazer uma pesquisa inicial, uma vez que têm a sua aprendizagem feita por fases:

- http://www.tizag.com/

- http://www.w3schools.com/

- http://www.php.net/ (sendo que tenho lido que para aprender php este (por ser o oficial) é a melhor opção)

Que outros recomendam?

Share this post


Link to post
Share on other sites
taviroquai

Nada melhor que dar um exemplo para perceber as potencialidades de cada linguagem.

Por exemplo, numa aplicação web, é típico teres contas de utilizador.

As contas, são registos na base de dados. A base de dados está no servidor.

  • Com SQL interages com a base de dados. Lês e escreves na base de dados.
  • Com PHP interages com SQL, usando, por exemplo, as funções mysql_connect(), mysql_query(), mysql_*
  • Com (X)HTML apresentas a interface (página) ao utilizador (cliente) para que este possa introduzir os dados de registo e dados de login. Tipicamente através de um formulário na interface.
  • Com PHP podes fazer (X)HTML, Javascript, CSS, SQL, JSON, XML... (para além de poder aceder ao sistema operativo do servidor).

Até aqui tudo pode funcionar sem Javascript...

Com Javascript podes fazer uma interface mais "inteligente" e mais "viva":

  • podes controlar (X)HTML, a interface para o utilizador.
  • podes controlar, não totalmente, o CSS, que também define a interface do utilizador.
  • podes fazer uma chamada a PHP através de XmlHttpRequest. A está dinamica de fazeres pedidos assincronos ao PHP chama-se AJAX.
  • podes validar os dados inseridos pelo utilizador.
  • podes fazer chamadas AJAX e no servidor, através de cgi podes correr a linguagem "que te apetecer" e devolver resultados à interface.

Penso que desta forma é mais facil entender as diferenças e a forma como se complemtam as duas.

Juntando aos teu sites que referiste: http://www.dynamicdrive.com/ têm bastante javascript. Cuidado que alguns exemplos apenas funcionam no IE.

Share this post


Link to post
Share on other sites
IRX773

@taviroquai:

Obrigado. Deu para perceber realmente o que as duas linguagens fazem (ou podem fazer).

Quanto ao site, adicionado aos marcadores .. tem ferramentas uteis e scipts que a utilidade nem se mete em causa.

Share this post


Link to post
Share on other sites
Coyote2

Como já disseram se seguires o caminho normal o PHP vai estar sempre no servidor e o Javascript no cliente, a não ser de que vás pelo Javascript no servidor (sim, também existe), só que esta é uma opção mais estranha, do que PHP no servidor e js no cliente, por isso de certeza de que não estás a falar do segundo caso, mas sim do primeiro.

Share this post


Link to post
Share on other sites
mAiN_iNfEcTiOn

Ora bem...

Isto de dizerem que o PHP é para um propósito diferente do Javascript é mentira... Desculpem, não vos queria chamar de mentirosos mas teve que ser.

Ora passo a explicar... Isso até há uns tempos atrás era assim como vocês dizem (logo não são mentirosos do todo :) ) porque, como já foi dito, o PHP é uma linguagem de scripting server-side e o Javascript ERA uma linguagem client-side..... Só que agora já não é graças a sistemas/tecnologias/ferramentas (chamem-lhe o que quiserem) como o Node.js.

É possível ter Javascript tanto em client-side como em server-side... Ter inclusivé bases de dados NoSQL, como por exemplo mongoDB que tem um motor com um comportamento semelhante a,ou baseado em, javascript!

Agora, para começar.... acho que usar PHP e MySQL para server-side e javascript para client-side... era o melhor. Isso sem dúvida!

Share this post


Link to post
Share on other sites
mAiN_iNfEcTiOn

Não... cheguei à conclusão que ambas são duas linguagens de programação e ambas podem correr em server-side.

De qualquer modo, contrariamente ao que dizes, Javascript também é uma linguagem de programação. Aliás, em tudo se arranja similaridade. Vejamos por exemplo o PHP... Necessita de um webserver para executar o script, ou do php-cli. O Javascript server-side é igual... A partir daqui, ambas são linguagens de scripting que não subsistem sozinhas.

Ambas as linguagens baseiam-se em C (e um pouco de conceitos de outras linguagens de prog).

Gostava de saber o que entendes por API de funções... Que eu saiba PHP depende tanto de funções como qualquer outra linguagem :)

Eu sou programador PHP, e também prefiro PHP a qualquer outra linguagem web.

;) Mas lá está gostos não se discutem.

Share this post


Link to post
Share on other sites
pedrotuga
Não... cheguei à conclusão que ambas são duas linguagens de programação e ambas podem correr em server-side.

Qualquer linguagem pode.

Uma linguagem é definida pela suas sintaxe e semântica, isto não são só as de programação, são todas, as de programação não são excepção.

Uma API de funções é o que o nome diz: uma interface de programação de uma aplicação. É uma aplicação, ou uma parte de uma aplicação que permite a outras aplicações interagirem com a primeira, ou mesmo com outras.

Que eu saiba PHP depende tanto de funções como qualquer outra linguagem

Sim, sem dúvida. Historicamente, as APIs de funções distribuidas com as implementações das linguagens têm determinado o nicho da linguagem.

O caso do javascript é interessante, durante mais de uma década, devido às implementaçãoes que tinha levou com o carimbo de "linguagem client-side", em boa verdade nem sequer uma biblioteca de IO mais decente por aí andava. Mas nos últimos anos já se chegou à conclusão que é uma linguagem interessante com suporte para vários paradigmas (funcional, POO e outros) e uma sintaxe aliciante. Então já se tem apostado mais nesta linguagem. Já deste alguns exemplos do actual quebrar de barreiras desta linguagem.

Just for the record, tambem sou um amante do PHP e ainda não encontrei uma linguagem que me permita ser tão produtivo como PHP.

Share this post


Link to post
Share on other sites
mAiN_iNfEcTiOn

Just for the record, tambem sou um amante do PHP e ainda não encontrei uma linguagem que me permita ser tão produtivo como PHP.

=) Eu idem aspas. Concordo com todo o teu ultimo post =)

Share this post


Link to post
Share on other sites
falco

Ora passo a explicar... Isso até há uns tempos atrás era assim como vocês dizem (logo não são mentirosos do todo ;)) porque, como já foi dito, o PHP é uma linguagem de scripting server-side e o Javascript ERA uma linguagem client-side..... Só que agora já não é graças a sistemas/tecnologias/ferramentas (chamem-lhe o que quiserem) como o Node.js.

Ora bem... O JavaScript server side é algo que existe há muito tempo. Não é uma novidade... Alias há muitas soluções tecnológicas para o utilizar, como podes ver na Wikipedia ( http://en.wikipedia.org/wiki/Comparison_of_Server-side_JavaScript_solutions ). Contudo, isso não quer dizer que seja realista utilizar, ou que haja de facto um número significativo de gente a utilizar (estou a falar de mais gente do que os pais, o cão e o gato de quem criou essas soluções).

O node.js adicionou algumas capacidades ao Server Side JavaScript, mas continua a ser irrealista, comparar o isso com uma linguagem como o PHP, Python, ou Perl. As suas limitações são mais que muitas. É possível que a diferença continue a reduzir-se, mas as capacidades e recursos de umas e de outras no que toca a Server Side ainda não são comparáveis.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.