Visão Geral sobre PHP, Java, Ruby e Python
A princípio qualquer linguagem de programação pode ser utilizada no desenvolvimento de aplicações para web. No entanto, na prática, algumas linguagens são mais usadas. Forma-se, com isso, uma grande comunidade de pessoas que acaba produzindo muitas bibliotecas e frameworks. Consequentemente, o desenvolvimento fica mais simples, rápido e seguro.
Algunas das linguagens mais usadas são PHP, Java, Ruby e Python.
PHP
PHP (acrônimo para PHP: Hypertext Preprocessor) é uma das linguagens pioneiras (iniciada em 1995) para o desenvolvimento web. Todo programa escrito em PHP é executado no lado servidor.
Ao longo dos anos a linguagem foi evoluindo materializando-se nas versões PHP 3 (de 1998), PHP 4 (de 2000), PHP 5 (de 2004) e PHP 7 (de 2015). A descrição completa de todas as versões, incluindo a explicação de porque não existe PHP 6 pode ser lida em https://en.wikipedia.org/wiki/PHP.
Por ser uma linguagem interpretada, a execução de um programa PHP deve ser realizada por um interpretador. O mais conhecido é o Zend Engine. Outro interpretador é o HHVM desenvolvido pelo Facebook.
Em realidade, hoje em dia, os interpretadores analisam o código escrito em PHP e o compilam para outras linguagens de modo que sua execução seja muito mais eficiente.
Como ocorre em qualquer linguagem de programação, a utilização de frameworks torna o desenvolvimento de aplicações para web bastante ágil.
Frameworks
Alguns frameworks PHP:
- CakePHP - https://cakephp.org/
- CodeIgniter - https://www.codeigniter.com/
- Laravel - https://laravel.com/
- Zend Framework - https://framework.zend.com/
Java
Fonte:
http://www.oracle.com/technetwork/java/javaee/overview
A linguagem Java também possui uma longa tradição na área de desenvolvimento web, iniciando com o conceito de servlet em 1997. Assim, como PHP, Java é uma linguagem usada no lado servidor das aplicações para web.
Um servlet é um objeto Java que quando acionado produz uma página HTML (ou qualquer outro tipo de informação). Tipicamente, uma aplicação para web é formada por um conjunto de servlets que são hospedados em um servlet container. O Tomcat é o exemplo mais conhecido de servlet container.
Ao longo dos anos novas tecnologias Java foram sendo criadas e culminaram no que se chama Java EE (acrônimo para Java Enterprise Edition). Além de servlets, fazem parte, tecnologias como JavaServer Faces (JSF), JavaServer Pages (JSP), Enterprise Java Beans (EJB), etc.
Aplicações para web do tipo Java RR possuem uma organização bem definida confome mostra a figura a seguir.
Fonte:
https://javaee.github.io/tutorial/
Ambientes integrados de desenvolvimento, popularmente chamados de IDEs, como o Netbeans, o Eclipse e o IntelliJ IDEA facilitam bastante a construção e testes de aplicações JEE.
Ruby
Ruby é uma linguagem de programação interpretada de propósito geral orientada a objetos, open source, criada nos anos 1990 pelo japonês Yukihiro Matsumoto. Mais informações sobre a linguagem estão disponíveis em https://www.ruby-lang.org/en/.
O uso de Ruby no contexto de desenvolvimento web está relacionado ao framework Ruby on Rails, também chamado apenas de Rails.
Ruby On Rails
Rails é um framework para desenvolvimento web com muito apelo popular pois permite a construção de aplicações completas com poucos comandos.
Mais informações sobre Rails estão disponíveis em http://rubyonrails.org/.
Python
Python é uma linguagem de programação interpretada de propósito geral que combina vários paradigmas de programação, como orientação a objetos e funcional). Foi criada em 1991 pelo holandês Guido van Rossum.
A linguagem é bastante popular sendo inclusive adotada como primeira linguagem em cursos de graduação.
Frameworks
Os seguintes frameworks são bastante populares no desenvolvimento de aplicações para web:
- Django - https://www.djangoproject.com/
- TurboGears - http://www.turbogears.org/