Sete Excelentes IDEs de PHP Comparados

Aprender mais e localizar o certo para você

Descubra o que você deveria esperar de um ambiente de desenvolvimento integrado (IDE) e compare o custo e os benefícios de sete opções populares de IDE.

Jack Herrington, Editor-in-Chief, Code Generation Network

An engineer with with more than 20 years of experience, Jack Herrington is currently Editor-in-Chief of the Code Generation Network. He is the author of Code Generation in Action. You can contact him at jack_d_herrington@codegeneration.net.



10/Out/2006

Escrever uma série contínua de artigos sobre PHP fornece muito insight sobre o mundo de desenvolvedores de PHP. Conversei com muitos programadores de PHP e uma coisa que me mais me surpreende é como poucos usam IDEs. A maioria usa editores de texto, como o Bloco de Notas no Microsoft® Windows® , Emacs ou Vim.

Os editores de texto que mencionei (e outros não) são excelentes -- não quero iniciar uma guerra sem fim sobre qual editor é melhor. No entanto, nenhum editor de texto realmente fornece muito insight sobre seu código PHP. Especificamente, nenhum visualiza um projeto PHP como mais do que um diretório de arquivos. Vamos levá-lo para o mundo de IDEs, mostrar o que você pode -- ou deve -- esperar deles e fornecer sete exemplos das opções mais populares de IDE.

O que É um IDE?

Resumidamente, um IDE fornece um local único para seu trabalho de codificação. Um IDE contém um editor no qual é possível editar o código, depurar o código, visualizar seu código em um navegador (frequentemente integrado) e registre entrada e saída do controle de código de origem. Para suportar essa funcionalidade, um IDE tem um conjunto de recursos que você não localiza em um editor básico, como o Bloco de Notas ou o Vim. Novamente, é possível estender editores para fazerem muitas dessas coisas, mas IDEs têm toda essa funcionalidade em um pacote organizado -- geralmente pré-configurados:

Projetos
Um recurso chave distinto de um IDE é que vê um aplicativo PHP como um projeto, não apenas um conjunto de arquivos. Esse conceito de contenção -- o projeto -- mantém informações extras, como a configuração do controle de código de origem, as configurações do banco de dados para propósitos de depuração e o local de determinados diretórios chave.
Depuração
Outro recurso útil é a depuração integrada. Com essa funcionalidade, é possível configurar os pontos de interrupção no editor no qual o interpretador PHP para durante a execução do script. A partir de então, é possível inspecionar os valores de variáveis locais para diagnosticar problemas no código. É uma alternativa saudável colocar instruções echo ao longo de seu código para verificar valores ou usar o log de erros para obter os valores das variáveis.
Inteligência de Código
PHP é uma linguagem de programação muito regular, o que significa que segue padrões simples. Esses padrões não apenas facilitam a escrita, mas facilitam a inspeção do código em seu projeto por um IDE. Além disso, eles ajudam a escrever exibindo os resultados de sua inspeção. Por exemplo, se você definir uma classe com o nome MyClass em seu projeto, o IDE fornece, em seguida, uma janela pop-up que inclua MyClass como uma opção assim que você digitar a palavra-chave new. À medida que você usa o objeto desse tipo, o IDE mostra seus métodos disponíveis e variáveis da instância. Ao iniciar digitando uma chamada e função, o IDE ajuda exibindo os argumentos disponíveis. Honestamente, essa á a principal razão para usar um IDE e não um editor de texto. Esse tipo de inteligência de código pode economizar horas de nomes de classes, nomes de métodos e argumentos errados digitados incorretamente.
Visualização de Classe
Um efeito colateral de ter um mecanismo de inteligência de código no IDE é que o IDE pode produzir uma visualização de classe do projeto. Em vez de mostrar os arquivos, o sistema pode mostrá-lo as diferentes classes definidas, independentemente do arquivo em que se encontram. À medida que você clica nas classes, seu editor é levado a esse arquivo e a seleção colocada na variável de instância, classe ou método. É uma maneira muito melhor para navegar por projetos grandes.
Suporte para diversas linguagens
Cada IDE coberto aqui suporta não apenas PHP, mas uma coleta das linguagens relacionadas: JavaScript, Linguagem de Consulta Estruturada (SQL), Linguagem de Marcação de Hipertexto (HTML) e Cascading Style Sheets (CSS). O suporte para HTML e CSS geralmente é o melhor, pois é mais simples. O suporte para JavaScript frequentemente resume-se a realce da sintaxe, mas algo é melhor do que nada.
Controle do código de origem
Todos os IDEs avaliados aqui suportam alguma conexão com um sistema de controle de código de origem, que permite manter versões dos arquivos em seu projeto ao longo do tempo. Você pode marcar versões específicas dos arquivos como um release, em seguida, reverter para elas quando quiser distribuir as mudanças feitas. É crítico em ambiente de equipe usar um sistema de controle de código de origem, mas é importante para indivíduos usar um também. Um bom sistema de controle de código de origem pode salvá-lo quando um disco explode ou quando o cliente repentinamente quer a penúltima versão, em vez de o que você tem hoje. A maioria dos IDEs suportam Concurrent Version System (CVS) e Subversion, que são sistemas de controle de origem livres. Um IDE suporta Perforce, um sistema de controle de código de origem comercial.
Integração de FTP/SFTP
Relacionada ao controle de código de origem está a capacidade de usar FTP para o código mais recente para o servidor. Isso é muito mais fácil do que usar um cliente FTP ou empacotar os arquivos você mesmo, enviando-os ao servidor e desempacotando-os.
Navegação do banco de dados
Um recurso útil, mas não essencial é a navegação do banco de dados. Com esse recurso, é possível navegar pelo banco de dados com o qual seu aplicativo conversa, descobrir os nomes de tabelas e campos e executar consultas. Alguns sistemas até automatizam parte do código de acesso ao banco de dados.
Navegador da Web integrado
Alguns IDEs suportam um navegador da Web integrado que possa navegar diretamente até a página que você está editando com argumentos adicionais especificados, o navegador que está sendo hospedado no IDE ou chamado externamente. Para ser honesto, não sou um grande fã do navegador integrado, pois não me importo em alternar entre a edição do código e a visualização do resultado em dois aplicativos separados. Mas posso ver a atração e não é necessário que você o use.
Trechos
O último recurso que encontrei em todos esses IDEs foi suporte para trechos de código enlatados e customizados. Trechos são pequenos fragmentos de código que executam pequenas tarefas, como executar uma expressão regular em alguma entrada, conectar ao banco de dados e consultar o banco de dados.

Isso soma os recursos principais que você pode esperar de um IDE comprado ou de software livre hoje. A partir daqui, damos uma olhada em alguns IDEs populares. Vamos mostrar algumas figuras de sua aparência e explicar o que suportam e quanto custam, no mínimo.


Eclipse

Dois plug-ins suportam PHP na plataforma de desenvolvimento Eclipse. O primeiro, o Projeto IDE de PHP, é um projeto da Eclipse Foundation, o que significa que seu release é efetuado sob a licença do Eclipse e é desenvolvido usando as ferramentas e processos da Eclipse Foundation.

O outro é o PHPEclipse e é desenvolvido de forma independente. Como com o Eclipse, ambos são executados nos Três Grandes sistemas operacionais: Windows, Linux® e Mac OS X. Você pode fazer download apenas dos plug-ins (se já usar o Eclipse) ou fazer download de uma versão pré-fab com tudo o que precisa.

Ambos os plug-ins suportam recursos principais do IDE que você esperaria encontrar. A inteligência de código é sólida como uma pedra, aparece quando você deseja e exibe todas as informações necessárias para classes, métodos e argumentos.

A Figura 1 mostra o PHPEclipse em execução no Mac OS X. Do lado esquerdo está a visualização do projeto com os arquivos do projeto. Abaixo disso está a visualização de classe, que mostra quaisquer classes definidas. No centro está meu código. Posso ter diversos arquivos abertos em diversas guias simultaneamente. Do lado direito estão painéis para depurar e navegar. Essa é a interface com o usuário do PHPEclipse de estoque.

Figura 1. PHPEclipse no OS X
PHPEclipse no OS X

A Figura 2 mostra o plug-in Projeto do IDE de PHP da Eclipse Foundation em ação.

Figura 2. Projeto do IDE de PHP no OS X
Projeto do IDE de PHP no OS X

Se não conseguir ver a diferença, não o culpo. Os dois são muito semelhantes, pois ambos dependem da plataforma Eclipse para apresentarem seus recursos de navegação e inteligência de código. A consistência entre as GUIs dos plug-ins do Eclipse é uma boa coisa.

Não percebi que qualquer um dos dois plug-ins o bloqueia em um projeto específico do Eclipse. Você sempre pode alterar de um plug-in para o outro. Em meus testes limitados, preferi o plug-in do Projeto do IDE de PHP, pois pareceu melhor integrado para mim e o desempenho dos recursos de inteligência de código pareceram mais vigorosos. Experimente ambos para ver qual você prefere.

O lado negativo de ambos os plug-ins é que como o Eclipse pode ser usado para praticamente qualquer linguagem de programação, a UI não é padronizada para PHP. Como resultado, a terminologia do Eclipse é um pouco estranha no começo. Se você for novo para o Eclipse, isso resulta em uma curva de aprendizado mais íngreme para esses plug-ins do que nos outros IDEs. Por outro lado, se você conhece o Eclipse, você está na frente do jogo usando o PHPEclipse ou o Projeto do IDE de PHP.

O grande ponto positivo do Eclipse e esses plug-ins? São gratuitos. Como em de graça. E estáveis. E confiáveis. Oh, já mencionei que são gratuitos?


Komodo

O próximo é o IDE Komodo da ActiveState. Esse IDE é executado no Windows, no Mac OS X e no Linux e suporta as linguagens de software livre comuns -- Perl, PHP e Ruby. O mecanismo de inteligência de código é sólido. Varre todas as suas instalações da linguagem para localizar extensões customizadas, como módulos PEAR. Do lado do projeto, suporta integração com CVS, Subversion e Perforce, assim como permite transferência direta por FTP do código para o servidor.

A Figura 3 mostra o Komodo em execução no Windows. Uma visualização de classe está à esquerda e a visualização do projeto está à direita. Dominando o centro está a visualização do código tabulado. Na parte inferior estão os pontos de interrupção para o depurador, a saída do comando, etc. Como com todos esses sistemas, você pode customizar de forma significativa a UI para corresponder suas preferências.

Figura 3. Komodo em Execução no Windows
Komodo em Execução no Windows

O Komodo é um produto comercial. Na época em que este artigo foi escrito, o IDE estava disponível em versões pessoal (US$ 29,95) ou profissional (US$ 299,95). Um dos recursos exclusivos dele é seu depurador de expressão regular. Isso, por si só, quase vale o preço da entrada se você for novo para expressões regulares ou se você usar recursos de expressões regulares avançados.

No lado negativo, não há integração do banco de dados que eu tenha encontrado e encontrei alguns pequenos problemas com a inteligência de código nem sempre aparecendo. Em geral, no entanto, o Komodo é um IDE robusto, rico em recursos e confiável para PHP.


PHP Designer

PHP Designer toma um rumo diferente dos outros IDEs. É claro que suporta inteligência de código limitada. No entanto, seu foco está em ativar ainda mais o aspecto do design do aplicativo da Web em PHP. Isso fica evidente por seu navegador integrado ser adornado por réguas de pixels para ajudar no posicionamento de elementos na página.

A Figura 4 mostra o lado de codificação do PHP Designer em ação.

Figura 4. PHP Designer no Windows
PHP Designer no Windows

Enquanto os recursos de inteligência e depuração de código PHP são leves no PHP Designer, a inteligência de HTML, CSS e JavaScript é muito mais forte do que o restante do campo. O PHP Designer se encaixa no espaço entre o IDE de um programador, que se concentra principalmente no código, e o Adobe Dreamweaver, que tem uma forte queda por design. Se estiver procurando algo nessa área, vale a pena dar uma olhada no PHP Designer, pois o IDE é gratuito para uso pessoal e US$ 55 para a edição profissional.


PhpED

O PhpED da NuSphere somente para Windows é facilmente o mais carregado de recursos de todos os IDEs apresentados aqui. Possui um depurador interno excelente e obtém pontuação extra por colocar uma barra de ferramentas de depuração no Microsoft Internet Explorer® para acesso fácil para depuração de página.

A Figura 5 mostra o PHPEd desenvolvendo um aplicativo PHP no Windows. Na extrema esquerda está a visualização do arquivo do projeto. À direita disso está a visualização de classe e à direita disso está a visualização de código. Abaixo estão leituras de status. Caso ainda não tenha percebido, todos esses IDEs seguem a mesma estética básica de design.

Figura 5. PhpED no Windows
PhpED no Windows

Recursos de destaque do PhpED incluem um grande depurador, excelente acesso ao banco de dados, bons recursos de inteligência de código e ajuda integrada para PHP. Os preços do PhpED variam de US$ 119 para a versão básica até US$ 495 para a versão profissional. Uma versão de teste também está disponível.


PHPEdit

O PHPEdit, da WaterProof Software, parece o ambiente msdev da Microsoft aplicado para PHP -- e isso não é uma coisa ruim. O PHPEdit é um IDE somente para Windows e é fácil de configurar. Ele até é fornecido com uma versão de PHP pronta. Se sai muito bem em inteligência de código para PHP, CSS e HTML, mas não muito bem para JavaScript. A Figura 6 mostra o PHPEdit em ação.

Figura 6. PHPEdit no Windows
PHPEdit no Windows

Para ajudar com a implementação, o PHPEdit conecta ao CVS e ao Subversion, assim como a FTP e seu próprio sistema proprietário ezDeployment. Para ajudar a acelerar o desenvolvimento, além dos recursos de inteligência de código, o IDE possui uma excelente biblioteca de modelos enlatados de amostras de código às quais você pode somar. A versão de avaliação do PHPEdit está disponível gratuitamente, mas para obter o produto em si, custará US$ 89.


Zend Studio

Por fim, chegamos ao Zend Studio, listado por último aqui somente porque começa com um Z. Deveria ser o primeiro em mente. Por quê? Porque é da Zend -- os caras por trás de PHP. Oh, e é bom. É executado nos Três Grandes: Windows, Mac OS X e Linux. E é fornecido com absolutamente tudo que você precisa: PHP V4, PHP V5 -- tudo mesmo. Sim, leva muito tempo para fazer download, mas vale a pena.

Como um IDE, o Zend Studio é top de linha. Possui todos os recursos de inteligência de código que você possa querer nas bibliotecas integradas e no código customizado. Também possui excelente depuração que é rápida de configurar. Para colocar seu código no repositório, o Zend Studio conecta ao CVS e ao Subversion. Para colocar seu código no servidor, há FTP integrado. O Zend Studio, ajustado de forma muito bela no Macintosh, é mostrado na Figura 7.

Figura 7. Zend Studio no Mac
Zend Studio no Mac

Como com alguns outros IDEs, o suporte a trecho de código é integrado para facilitar a produção rápida do código. O IDE também é integrado diretamente a seu banco de dados para fornecer um insight sobre as tabelas e campos disponíveis.

A edição padrão do Zend Studio é US$ 99 e a edição profissional é US$ 299. Alguns dos recursos que mencionei aqui não se encontram na edição padrão. Uma versão de teste do Zend Studio está disponível gratuitamente.


Conclusão

Com tantas opções excelentes de IDEs no mercado -- algumas das quais são até gratuitas -- não vejo qualquer razão para não testar uma, principalmente se você for um profissional. Você pode solicitar que sua empresa ou sua consultoria pessoal pague parte ou todo o custo de qualquer um dos produtos comerciais. Quando você considera o tempo gasto apenas usando instruções echo para depurar seu código versus usando um depurador integrado, o preço de compra desses IDEs é insignificante.

Recursos

Aprender

  • PHP.net é um recurso excelente para desenvolvedores de PHP.
  • Para obter uma série de tutoriais da developerWorks sobre como aprender a programar com PHP, consulte a série " Aprendendo PHP".
  • Visite Recursos de Projeto PHP no IBM developerWorks para aprender mais sobre PHP.
  • Fique atualizado com Eventos Técnicos e Webcasts do developerWorks.
  • Verifique conferências, feiras comerciais, webcasts e outros Eventos futuros no mundo que sejam de interesse de desenvolvedores de software livre da IBM.
  • Visite Zona de Software Livre do developerWorks para obter informações extensivas sobre como executar ações, sobre ferramentas e atualizações de projetos para ajudá-lo a se desenvolver com tecnologias de software livre e usá-las com produtos IBM.
  • Para ouvir entrevistas e discussões interessantes para desenvolvedores de software, não se esqueça de verificar os developerWorks podcasts.

Obter produtos e tecnologias

Discutir

Comentários

developerWorks: Conecte-se

Los campos obligatorios están marcados con un asterisco (*).


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


A primeira vez que você entrar no developerWorks, um perfil é criado para você. Informações no seu perfil (seu nome, país / região, e nome da empresa) é apresentado ao público e vai acompanhar qualquer conteúdo que você postar, a menos que você opte por esconder o nome da empresa. Você pode atualizar sua conta IBM a qualquer momento.

Todas as informações enviadas são seguras.

Elija su nombre para mostrar



Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Los campos obligatorios están marcados con un asterisco (*).

(Escolha um nome de exibição de 3 - 31 caracteres.)

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


Todas as informações enviadas são seguras.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Software livre
ArticleID=382642
ArticleTitle=Sete Excelentes IDEs de PHP Comparados
publish-date=10102006