Aqui entraremos na questão da linguagem escolhida. Está certo que isso é gosto pessoal, mas hoje essas são as principais para web.
HTML/DHTML/XHTML
Isso é web propriamente dito. É esse o código que os browsers entendem. Não é uma linguagem de programação propriamente dita, mas é com ela que é apresentada o conteúdo.
Um ponto importantíssimo no desenvolvimento é a utilização dos padrões da W3C (
http://www.w3.org/). Utilizando esses padrões é muito mais fácil que sua página se comporte da mesma forma nos diferentes browsers.
PHP
Sem dúvida a linguagem mais utilizada para desenvolvimento web no mundo. É interpretada assim como a HTML, mas é executada no servidor e enviada para o cliente apenas o código HTML gerado. Essa característica é fundamental para questão de segurança dessa linguagem.
A documentação para esta linguagem é vasta. São milhares de tutoriais e apostilas sobre ela, mas no geral apenas a documentação oficial é necessária. No site oficial você encontrará a descrição, uso e exemplos de todas as funções dessa linguagem. Muita coisa dessa documentação já foi traduzida para o português
Site oficial:
http://www.php.net/
JavaScript
JavaScript é uma linguagem de programação criada pela Netscape em 1995, que a princípio se chamava LiveScript, para atender, principalmente, as seguintes necessidades:
- Validação de formulários no lado cliente (programa navegador);
- Interação com a página. Assim, foi feita como uma linguagem de script. JavaScript tem sintaxe semelhante a do Java, mas é totalmente diferente no conceito e no uso.
- Oferece tipagem dinâmica - tipos de variáveis não são definidos;
- É interpretada, ao invés de compilada;
- Possui ótimas ferramentas padrão para listagens (como as linguagens de script, de modo geral);
- Oferece bom suporte a expressões regulares (característica também comum a linguagens de script).
Sua união com o CSS é conhecida como DHTML. Usando o JavaScript, é possível modificar dinamicamente os estilos dos elementos da página em HTML.
A documentação dessa linguagem é bem vasta, mas seu uso deve ser controlado pois costuma-se haver diferença na interpretação pelos diversos browsers.
CSS
Cascading Style Sheets, ou simplesmente CSS, é uma linguagem de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XML. Seu principal benefício é prover a separação entre o formato e o conteúdo de um documento.
Ao invés de colocar a formatação dentro do documento, o desenvolvedor cria um link (ligação) para uma página que contém os estilos, procedendo de forma idêntica para todas as páginas de um portal. Quando quiser alterar a aparência do portal basta portanto modificar apenas um arquivo.
Com a variação de atualizações dos navegadores (browsers) como Internet Explorer que ficou sem nova versão de 2001 a 2006, o suporte ao CSS pode variar. O Internet Explorer 6, por exemplo, tem suporte total a CSS1 e praticamente nulo a CSS2. Navegadores mais modernos como Opera, Internet Explorer 7 e Mozilla Firefox tem suporte maior, inclusive até a CSS 3, ainda em desenvolvimento.
A documentação dessa linguagem é bem vasta mas no geral eu uso apenas o site Maujour (
http://www.maujor.com/), que é bem completo.
Java
Java é mais do que uma linguagem de programação, é uma plataforma de desenvolvimento que conta com inúmeras tecnologias, como os Servlets e as páginas JSP.
Páginas jsp não geram HTML. Elas são executadas nos browsers através da máquina virtual java. Todo o sistema é executado no servidor e o cliente recebe apenas as respostas.
Ela permite que páginas web incrustem pequenos programas (chamados applets) diretamente dentro da informação enviada que será rodada no computador do usuário. Esses applets são executados na própria máquina cliente, fornecendo uma experiência de usuário mais rica para o usuário.
É uma linguagem considerada bastante segura, tanto que é a mais utilizada em sites de bancos e grandes corporações.
Site oficial:
Java.Sun.com
XML
XML é uma recomendação da W3C para gerar linguagens de marcação para necessidades especiais. É um subtipo de SGML capaz de descrever diversos tipos de dados. Seu propósito principal é a facilidade de compartilhamento de informações através da Internet.
O principio do projeto era criar uma linguagem que pudesse ser lida por software, e integrar-se com as demais linguagens. Sua filosofia seria incorporada por vários princípios importantes:
- Separação do conteúdo da formatação
- Simplicidade e Legibilidade, tanto para humanos quanto para computadores
- Possibilidade de criação de tags sem limitação
- Criação de arquivos para validação de estrutura (Chamados DTDs)
- Interligação de bancos de dados distintos
- Concentração na estrutura da informação, e não na sua aparência
O XML é considerado um bom formato para a criação de documentos com dados organizados de forma hierárquica, como se vê frequentemente em documentos de texto formatados, imagens vetoriais ou bancos de dados.
Ajax
AJAX é o uso sistemático de tecnologias providas por navegadores, como JavaScript e XML, para tornar páginas mais interativas com o usuário, utilizando-se de solicitações assíncronas de informações. AJAX não é somente um novo modelo, é também uma iniciativa na construção de aplicações web mais dinâmicas e criativas. AJAX não é uma tecnologia, são realmente várias tecnologias trabalhando juntas, cada uma fazendo sua parte, oferecendo novas funcionalidades. AJAX incorpora em seu modelo.:
- Apresentação baseada em padrões, usando XHTML e CSS;
- Exposição e interação dinâmica usando o DOM;
- Intercâmbio e manipulação de dados usando XML e XSLT;
- Recuperação assíncrona de dados usando o objeto XMLHttpRequest;
- e JavaScript unindo todas elas em conjunto.
A maior vantagem das aplicações AJAX é que elas rodam no próprio navegador web. Então, para estar hábil a executar aplicações AJAX, bastar possuir algum dos navegadores modernos.
CGI
CGI consiste numa importante tecnologia que permite gerar páginas dinâmicas, permitindo a um navegador passar parâmetros para um programa alojado num servidor web. Assim, designam-se por scripts CGI os pequenos programas que interpretam esses parâmetros e geram a página depois de os processar.
Embora a linguagem tipicamente associada aos CGI seja o PERL, o CGI foi concebido por forma a ser independente da linguagem utilizada. Atualmente tecnologias como ASP.NET ou PHP continuam a utilizar a especificação.
ASP
Primeiro de tudo não me condenem. Sei que não é uma linguagem para
Linux mas ainda é muito utilizada na web. Não explanarei a frente sobre ferramentas para ela mas aqui darei uma pequena abordagem do que é a linguagem e para que se destina.
O ASP é uma estrutura de programação em Script que se utiliza de VBScript, JScript, PerlScript ou Python processadas pelo lado servidor para geração de conteúdo dinâmico na Web.
Ele roda nativamente em servidores Windows, através do serviço chamado de IIS ou do PWS em ambientes com Windows 98. Além disso ele pode rodar em outras plataformas, como Linux no servidor Apache quando usando um módulo de um programa como o Tomcat.
O script é interpretado no lado do servidor e o que é enviado ao lado do usuário é apenas a saída. que normalmente é uma linguagem de marcação como HTML, XHTML ou XML.
Linguagens como o JavaScript e o VBScript podem ser processadas pelo navegador do visitante e, neste caso, este precisa ser compatível com a linguagem. Contudo, como o ASP é processado pelo servidor, há independência de navegadores, uma vez que eles só processarão HTML.
Através dessa tecnologia também é possível executar consultas a Banco de Dados, através da biblioteca de componentes ActiveX.
O uso desta tecnologia vem diminuindo sensivelmente pela maturação da tecnologia .NET, sendo gradativamente substituído pelo ASP.NET que proporciona uma gama maior de recursos e um melhor desempenho.