Desenvolvimento web no Linux

Há pessoas que dizem que não há boas ferramentas para desenvolvimento web no Linux. Resolvi escrever esse artigo para esclarecer que as coisas não são bem assim. Sei também que tem diversos artigos idênticos, mas a maioria incompletos. Estarei aqui esclarecendo as ferramentas que uso ou usei. Apresentarei os prós e contras, mas não entrarei em detalhes como instalação e configuração.

[ Hits: 100.513 ]

Por: Willian Itiho amano em 30/07/2007 | Blog: http://underlinux.com.br


Linguagens de programação



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.
    1. Oferece tipagem dinâmica - tipos de variáveis não são definidos;
    2. É interpretada, ao invés de compilada;
    3. Possui ótimas ferramentas padrão para listagens (como as linguagens de script, de modo geral);
    4. 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.

    Próxima página

Páginas do artigo
   1. Linguagens de programação
   2. Servidor web
   3. Browsers
   4. Edição gráfica (layout)
   5. Editores de texto puro (com syntax highlight)
   6. Ferramentas gráficas (editores WYSIWYG)
   7. Geradores de código
   8. IDE de desenvolvimento
Outros artigos deste autor

Gravando com cdrecord

Balanceamento e alta disponibilidade com Bonding

Dicionário pt-BR no Firefox 2.0

Montando um servidor Linux com sshfs no SuSE

Software livre, interoperabilidade, padronização e usuários leigos

Leitura recomendada

LiberdUCA - Versão customizada

A importância do modo texto

OpenVPN no Linux CentOS 5

Software livre na educação de crianças

Kernel 3.0-0 já disponível no aptosid e operando de forma estável

  
Comentários
[1] Comentário enviado por balani em 30/07/2007 - 08:47h

Show de bola, só faltou falar do Ruby, entretanto tá excelente o conteudo.

[2] Comentário enviado por removido em 30/07/2007 - 14:08h

Nossa, que artigo massa.
Mais um artigo da saga "Coisas que todo mundo quer saber e gosta de ler mas ninguém quer escrever". Parabéns mesmo. Vai pro meu del.icio.us com certeza.
Estou começando com web development ainda, vai ajudar bastante!

[3] Comentário enviado por removido em 30/07/2007 - 14:54h

Artigo muito bom, você parece entender tudo de desenvolvimento web. Só faltou falar do Mono-Develop, que nos permite criar páginas ASP.NET, e com alguns complementos a mais, usa o Apache pra hospedar e executar as mesmas

[4] Comentário enviado por White_tiger em 30/07/2007 - 15:00h

Entendo pouco de desenvolvimento web. Juntei muita coisa na web para escrever esse artigo.

Não escrevi quase nada do asp pois nunca escreve uma linha sequer nesta linguagem.

[5] Comentário enviado por removido em 30/07/2007 - 15:09h

Só estou dizendo que na parte da IDE de desenvolvimento você esqueceu de mencionar o mono-develop pra quem estiver interessado em desenvolver asp.net em linux. Não largo ele desde que passei a desenvolver asp.net em linux.

[6] Comentário enviado por davis.peixoto em 30/07/2007 - 15:32h

O artigo está muito bom. Conseguiu reunir bastante informação num lugar só e serve como um bom norte para quem está começando.

No entanto, discordo sobre o Bluefish ser melhor do que o Quanta (você escreveu que ele era até uma evolução)... Na minha opinião o Quanta é muito superior para edição, principalmente de PHP.

Não gosto muito do Eclipse... acho ele muito pesado - mas a qualidade e recursos dele são indiscutíveis.

Ah, a propósito, acho o Firebug (plugin do FF) muito melhor para desenvolvimento e depuração. Uso ele e o webdeveloper, mas o Firebug tem muitos recursos a mais... explore e verá.

Té+

[7] Comentário enviado por hydrastudio em 30/07/2007 - 18:59h

Parabéns pelo artigo, bem completo!
Uma opinião pessoal: ainda não dá pra largar o Dreamweaver! É a ferramenta mais completa pra desenvolvimento Web. Já usei o Nvu e não me adaptei a ele, além de ter muito menos recursos.
Ainda sou refém do Windows! Mas um dia me liberto dessa praga!
:)

[]'s

[8] Comentário enviado por iandecy em 30/07/2007 - 22:13h

amigo por onde eu posso criar web no linux ? trabalho com webdesign mais ainda não achei por onde fazer no linux ai uso o Rwindows para trabalhar, junto com o Dreamweaver, Flash, Photoshop... e outros...

[9] Comentário enviado por walterti em 30/07/2007 - 23:16h

Esqueceu de falar do Zend studio nas IDE, é sem duvida o senhor do PHP não o abandono de forma alguma, e quanto ao dreamweaver não deixo o codigo puro por editor grafico nunkinha em minha vida rsrsrs

[10] Comentário enviado por removido em 30/07/2007 - 23:31h

Works with:

* Firefox Firefox: 1.0 – 2.0.0.*

Install Now (Windows)
Html Validator is not available for Linux.

[11] Comentário enviado por accesslinux em 31/07/2007 - 00:12h

Valew Willian, eram estas informações que eu precisava para migrar de vez para o Linux...
Parabéns.

[12] Comentário enviado por elgio em 31/07/2007 - 11:22h

Muito bom este teu artigo. Extremamente completo e não tendencioso.
Como seria bom se todos os desenvolvedores para Web testassem suas "crias" em vários sabores de navegadores, como tu sugere!
Nota DEZ!

[13] Comentário enviado por endel.dreyer em 31/07/2007 - 14:09h

Muito bom o artigo
para quem falou sobre Ruby: http://www.aptana.com/download_rails_rdt.php

[14] Comentário enviado por diogok em 01/08/2007 - 15:39h

Ótimo artigo, só vou acrescentar o Scite com uma ótima opção de editor, com suporte a varias linguagens!

[15] Comentário enviado por removido em 01/08/2007 - 15:50h

Muita massa esse artigo, bem comentado mesmo, sem falar nos links que vieram para dar apoio, porém, tenho que concordar q só faltou falar do Ruby, mas nosso colega Endel complementou o assunto colocando um ótimo link sobre o Ruby.

[16] Comentário enviado por luisvasquez em 02/08/2007 - 21:52h

Bem, para quem não vive sem o trio Dreamweaver, Flash e Photoshop, mas não suporta mais o Windows, existe a opção de emulação através do wine. Para quem não conhece é um software que "tradução" uma aplicação windows de forma a rodá-la diretamente em uma dist Linux. Bom, o resultado, é muito agradável. Eu particulamente utilizo os 3 softwares citados no Kurmin 7. E olha, eu trabalho perfeitamente, como se estivesse rodando no próprio windows. Claro que sem tomar sustos com um "PAN!" de vez em quando ;). O único detalhe, é que, como emulação sempre é complicado, nem todas as versões desses softwares são instaladas pelo wine. Para quem não quer ficar testanto: Eu uso Photoshop 7, Dreamweaver 8 e Flash 8. Os 3 instalaram e rodam quase que 100%. Minha versão do wine é a 0.9.25-2.1 (pacote *.deb). Oks!!!

[17] Comentário enviado por cheopsmalta em 08/08/2007 - 23:38h

Essa ainda eh uma questão que me prende ao ruwindows, eh complicado ficar sem um dreamweaver, espero que um dia possamos ter programas equiparados no linux...

[18] Comentário enviado por White_tiger em 09/08/2007 - 09:45h

cheopsmalta, se vc tem uma máquina mediana, emula o dreamweave com wine. Tem muita gente que faz isso e se dá bem.

Eu que já trabalho bem com as ferramentas livres.

[19] Comentário enviado por flavioc em 17/04/2008 - 10:55h

Caro Willian conhece algum tutorial para iniciantes, tenho vontade de fazer um site simples pra mim, mas precisaria de um tutorial com MODELO, passo a passo, só pra ver como é. Se pessoas que entendem do assunto fizessem um artigo sobre isso, ajudaria aos não programadores e leigos como eu a criar suas próprias páginas. Valeu. Flávio

[20] Comentário enviado por KelvinVicente em 04/06/2008 - 05:23h

Flavio, não sei se entendi exatamente o que tu deseja, mas pelo que eu entendi tu deseja criar paginas para serem exibidas no browser certo?

Pesquise sobre HTML e Javascript, aqui no VOL tem artigos à respeito disso, agora se quiser umas apostilas, www.apostilando.com, lá tu vai encontrar diversas apostilas que tratam sobre esse assunto, quanto à exemplos de páginas, em qualquer browser vá no menu Exibir > Codigo-Fonte (em navegadores do Linux ou se tu usa o Firefox no Windows, basta pressionar [CTRL] + [U]) ;-)

Espero ter ajudado,

Quanto ao artigo, excelente :-)

[21] Comentário enviado por cirojunior em 08/12/2008 - 18:44h

O hydrastudio e a galera que ta se prendendo no WINDOWS por causa do Dreamweaver e flash, ta na hora de acabar com esse problema eu instalei o wine e to usando o dreamweaver e flash nele sem problemas.

Podem abandonar o windows agora.




aqui dentro do forum tem como fazer isso.

Não precisa mais se prender ao windows por causa dos software que não funcionava no linux.

abração

e muito bom esse artigo parabens para o criador ai.

[22] Comentário enviado por rogerio_gentil em 15/04/2009 - 10:45h

Ótimo artigo como mudança de paradigma. Eu que estou iniciando nesta área de desenvolvimento web estava procurando opções livres para contornar o uso de softwares piratas. Como á citaram faltou somente comentar algo sobre Ruby. Porém, me veio em mente: "Existe algum software livre para criação de flash?"

Abs.

[23] Comentário enviado por luizvieira em 02/09/2009 - 10:43h

Ótimo artigo!
Uma de minhas dificuldades de migrar completamente para o Linux era justamente essa questão do desenvolvimento web e um vício que tinha no Dreamweaver. Depois que descobri o Quanta Plus larguei o dreamweaver e migrei definitivamente.
Parabéns!
[ ]'s

[24] Comentário enviado por filsoldier em 14/06/2010 - 16:22h

Estou migrando agora... e estou gostando muito... espero que consiga migrar tb para o desenvolvimento em linux, faço tudo no ruwindowns...

[25] Comentário enviado por bilufe em 17/06/2010 - 10:03h

O melhor editor Web da atualidade é certamente o Quanta Plus!
Dreamweaver? Não, muito obrigado. Gera um código cheio de erros.

Edição visual de páginas? Vai de Kompozer http://www.kompozer.net que é o sucessor do NVU.

[26] Comentário enviado por bilufe em 17/06/2010 - 10:05h

O Quanta Plus é bem melhor que o Bluefish, não tem nem comparações.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts