sexta-feira, 20 de janeiro de 2012

Como eu escolhi o meu editor de programação


Por muitos anos eu usei um editor de código que é agora interrompido por seus desenvolvedores, ea introdução de HTML5 e CSS3 me levou a procurar um editor que suporta as novas tags e propriedades. Neste artigo eu vou compartilhar os critérios e processo que eu usei para encontrar um editor adequado para fazer reparos rápidos e um ambiente de desenvolvimento para projetos de grande escala.

Minha lista de candidatos inicial continha mais de 30 Linux popular, Java, Windows e pacotes de software XUL que tiveram pelo menos uma versão estável após 1 de janeiro de 2010: Arachnophilia, Bluefish, Bluegriffon, CoffeeCup HTML Editor, Dreamweaver, Eclipse PDT, Emacs, Expression Web, Geany, gedit, HTML-Kit, jEdit, Kate, KDevelop, Komodo Edit, KWrite, Netbeans, Notepad + +, Notepad2, OpenBEXI, PHPEdit, PHPEd Pro, PHPStorm, Notepad programador, PSPad, RadPHP, Scite, SeaMonkey, Vim, WebDev, WebMatrix e Zend Studio. Você pode google cada programa para os seus detalhes específicos.

Round One - Preenchimento Automático e Syntax Highlighting
Meu uso do HTML / CSS / PHP / JavaScript desenvolvimento exigem um editor que é capaz de fazer sugestões inteligentes e mantendo os componentes visualmente separados por tipo.
Sugestões podem ser feitas através de preenchimento automático, dicas de parâmetro, e auto-fechamento. Auto-realização é a tentativa do programa de adivinhar e oferecer para completar tags HTML, CSS propriedades, e PHP e JavaScript classe, função e nomes de variáveis. Insinuando parâmetro é a capacidade de informar o desenvolvedor de propriedades possível HTML e seus valores, valores de propriedade CSS, e os argumentos da função PHP e JavaScript. Auto-fechamento é a capacidade de adicionar fechamento tags HTML, entre parênteses, chaves, e assim por diante.
Separação dos componentes é a coloração dos diferentes tipos de elementos, como tags, funções e variáveis, na tela do editor, muitas vezes referida como destaque de sintaxe. Também útil é a capacidade de localizar um delimitador de correspondência - entre parênteses, colchetes e chaves -, selecionando a uma abertura ou vice-versa.

Meu primeiro teste foi para verificar qual dos editores na lista original oferecer esses recursos out-of-the-box ou, pelo menos, com um simples para instalar módulo.
Eu imediatamente caiu três pacotes de novas investigações: Emacs que exigia arquivos adicionais que eram difíceis de instalar; OpenBEXI que se parece com um conceito interessante para desenvolvimento de páginas web, mas não é realmente uma ferramenta de scripting, e WebDev que não parecem ter um versão de teste gratuita. Eu gostaria de ter testado um bom Mac IDE, Espresso. Sua equipe me mandou um monte de informações úteis e eu encorajar qualquer usuário de Mac para testá-lo.
Para cada pacote restantes eu chequei suas dicas e auto-realização habilidades para HTML4 / 5 tags, propriedades CSS, PHP e funções JavaScript e variáveis, e destaque de sintaxe. O código a seguir, salvo como um arquivo PHP, era típico dos testes:

<html>
 <head>
  <style>
dir {
    display: none;
}
  </ Style>
<Script type = "text / javascript" >
var aaa = 12;
. aaa = Math abs (12);
  </ Script>
 </ Head>
<body>
 <Div style = "display: none" > </ div>
<? Php
$ Aaa = strtotime ();
se (true) {
    $ Aaa = strftime ( "% a" );
}
?>
 </ Body>
</ Html>

Identificar as características distintas especificamente (função PHP auto-completar, auto-complete PHP variável, função auto-completar JavaScript, etc) eu tinha 13 características solicitadas. Eu computada a pontuação para ambos os pacotes e características, foi um SIM / check NO, e cada SIM era digno de um ponto acrescentado pontuação total do editor.
As características mais prevalentes foram destaque de sintaxe e localização delimitador, ea auto-fechamento de tags HTML. Os menos vistos eram auto-realização e argumento insinuando das funções JavaScript e auto-preenchimento das variáveis ​​JavaScript. A pontuação média foi de 4,8% em relação absoluta ou 38, o que significa que o pacote não tinha média bastante 5 dos 13 recursos solicitados. 13 dos 29 pacotes foram acima da média.
Para posterior avaliação, selecionei os 25% melhores. Ou seja, os 8 melhores classificados seguintes com os meus critérios (ordem alfabética): Dreamweaver, Geany, Komodo Edit, Netbeans, NuSphere PhpED, PHPStorm, Notepad programador, e WebMatrix. É interessante observar que quatro desses são gratuitos (como no scotch livre) e quatro são pagos software, e que quatro são somente para Windows, enquanto os outros quatro são multi-plataforma.
Esta seleção não implica que estes pacotes são melhores do que os outros. Significa apenas que tinham mais de recursos solicitados do que outros. Se, por exemplo, refatoração de código foram uma prioridade para mim, os resultados teriam sido bem diferentes.

Round Two - Everything Else, mas a pia da cozinha
A segunda bateria de testes olhou para a seguinte lista de características: trechos de código / templates, dobramento de código, bookmarks, código de formatação automática, suporte a depuração integrada, suporte macro, a disponibilidade de ferramentas de refatoração, suporte de gerenciamento de projetos, suporte de controle de versão, built- em apoio FTP, integrado console de linha de comando, plug-in de apoio, suporte para frameworks, personalizações editor, se o tempo de start-up foi a disponibilidade, aceitável e completude de documentação, e alguns outros. Mais uma vez o foco foi a out-of-the-box ou click-to-instalar plug-ins, e foi um SIM / NÃO teste com cada um marcando um ponto SIM. Aqui está como ele saiu:

Dreamweaver - Marcou 70%. Possivelmente a mais conhecida de desenvolvimento web IDE, é uma ferramenta muito poderosa para o sítio web designer apesar de eu achar a sua interface um pouco confusa. Ele tinha algum tipo de dobramento de código, mas não o que eu esperava.
Geany - Marcou 62%. É modular e altamente expansível. Ele tem uma interface muito leve, mas não tem suporte FTP adequada.
Komodo Edit - Marcou 54%. Uma espécie de open-source versão do Komodo IDE, ele era muito limpo e utilizável. Eu encontrei-o semelhante ao Geany.
Netbeans - Marcou 75%. Foi muito impressionante, com muitos recursos, mas uma interface limpa. Demora cerca de 13 segundos para iniciar na minha caixa (Dual Core de 2 GHz Intel, 2G RAM e Oneric Oncelot com Unity), que eu recolho é um pouco razoável para aplicação de um tal complexo.
NuSphere PhpED - Marcou 67%. Uma ótima ferramenta, mas com uma interface muito desordenado. Além disso, eles parecem não gostar de plug-ins muito. Eu li um post no fórum, onde alguém perguntou como criar um ea resposta foi simplesmente "envie-nos as suas ideias." Este foi mais um NÃO.
PhpStorm - Marcou 75%, como NetBeans. Na verdade, é sim o NetBeans, provavelmente parecido com se fosse dedicado ao desenvolvimento de PHP. Parece-fiscal do processador um pouco mais, porém.
Bloco de notas do programador - Marcou 46%. Mas, novamente, é suposto ser uma simples ferramenta, magra com bom desempenho. Ele vive a sua promessa. É uma pena que é somente para Windows, no entanto.
WebMatrix - Com certeza, como uma ferramenta gratuita de desenvolvimento de site, Web Matrix parece muito impressionante. Eu não classificá-lo embora, como parecia ser conceito diferente da minha idéia de IDE programador.

Minha escolha pessoal
Embora todos os programas acima são poderosos para trabalhar com código PHP, eu estava mais feliz com Geany e NetBeans. Geany é mais leve com menos recursos, mas é expansível com uma lista crescente de mantidos pela comunidade plug-ins. NetBeans é poderosa, mas tem uma curva de aprendizagem mais íngreme e, embora livre e de código aberto, é uma empresa privada mantida. Possivelmente eu vou estar usando um ou outro dependendo da tarefa em mãos e depois de um pouco de tempo resolver sobre o uso de apenas um.
De qualquer forma, em cerca de três anos de tempo tenho certeza IDEs novos surgiram e algumas delas aqui terá deixado de desenvolvimento. Vai ser hora para outra revisão.

O que eu aprendi aqui
Este artigo foi doloroso para escrever. A verificação a cada programa na lista foi uma experiência cansativa, às vezes irritante, mas não obstante refrescante. Levou um monte de investigação, o download (incluindo um de 800MB errado!), E tempo para verificar características. Revisitei alguns pacotes que eu trabalhei com anos atrás e descobriu outros que eu nunca tinha ouvido falar. E isso me proporcionou uma interessante comparação entre o sistema Linux de repositório e conceito de janela do instalador, bem como entre os tamanhos e complexidade de instalação que separa livre de software pago. Meu desktop está cheio de arquivos baixados e há um monte de eliminações para fazer agora que está tudo acabado. Mas eu tive a chance de fazer uma pesquisa planejada para um item que eu precisava, algo que eu nunca tinha feito antes desta maneira. Aproveito a partir desta experiência que a busca de um produto ou serviço deve começar com a verificação qualidades simples, mas essencial em um grande conjunto e, em seguida à procura de melhorias naqueles que passam no primeiro teste. Eu também aprendi a deixar meus preconceitos de lado. Eu nunca adivinhou que eu ia acabar colocando NetBeans na minha lista final.
Eu nunca planejava contar a ninguém qual é a melhor IDE ao redor. Realmente é uma questão de o que funciona melhor para você. Mas espero ter ajudado alguns de vocês para elaborar uma estratégia para encontrar o que atualmente é o mais adequado às suas necessidades.

Atualização 17 de janeiro de 2012
eu gostaria de agradecer a todo o tipo leitores o suficiente para deixar um comentário aqui. É realmente gratificante ver um escrito que é de interesse e uso para os outros.

Eu também gostaria de frisar que o objetivo do artigo foi muito mais para descrever uma pesquisa-e-decide método do que apontar um melhor IDE, na medida em que "melhor" neste caso é um conceito muito pessoal, que reflete o do usuário necessidades e gostos. Além disso, a ausência de qualquer IDE especial a partir do estudo não deve ser interpretado como a significar uma opinião negativa sobre ele. Significa simplesmente que eu não estava ciente de sua existência - mea culpa mea maxima culpa! - Ou que não parecem estar em desenvolvimento ativo.

De qualquer forma, os leitores interessados ​​em escolher o seu melhor IDE deve por todos os meios incluem os pacotes listados no artigo PLUS aqueles leitores mais entusiasmados mencionados. Com milhões de desenvolvedores em todo o mundo, estou feliz em ver que todos os IDEs e os editores têm um público próprio. Algumas religiões acreditam que as coisas têm alma. Eu acredito que software, de certa forma, tem um também e torna-se um grande conforto aos seus usuários quando mostrar que se preocupam com isso.

Fonte: phpmaster.com

Nenhum comentário :

Postar um comentário

Total de visualizações de página