Como desenvolvo em mais idiomas com menos IDEs

8

Gostaria de configurar meu computador para que eu possa desenvolver em .net, C #, Java, ActionScript, JS / CSS e linguagens funcionais como Scala ou Haskell. No entanto, quero fazer isso com a menor quantidade de IDEs completos para aprender / programas ocupando espaço no disco rígido do meu computador / executando vários IDEs simultaneamente.

Quais programas posso usar para minimizar a quantidade de IDEs completos que tenho que aprender / usar. (Por exemplo, se o Eclipse pudesse lidar com todas essas estruturas, isso seria uma resposta válida)

Edit: Parece que esta pergunta ainda está recebendo hits muitos anos depois. Hoje (2018) eu uso o Visual Studio Code como meu "único IDE para governar em".

Prumo
fonte
O que você usa atualmente?
Kevin D
8
Se a sua preocupação é economizar recursos, duvido que o Eclipse seja a resposta.
back2dos
5
os recursos que eu estou preocupado com o meu cérebro mais do que meu computador :)
Bob
5
tente fazer tudo que o desenvolvimento no bloco de notas e, em seguida, deixe-nos saber que seu cérebro está fazendo :-)
Thomas Stock
4
Veja, se você é um profissional experiente, você pode achar o Bloco de Notas bom o suficiente para todas as suas necessidades
Pankaj Upadhyay

Respostas:

2

A empresa Jetbrains possui um conjunto de IDEs com os mesmos princípios ergonômicos, os mesmos atalhos de teclado e assim por diante. Eles cobrem todos os idiomas que você está falando. Mas a maioria deles não é grátis.

Então, minha sugestão é:

Simon Jodet
fonte
1
Eles têm uma comunidade forte de apoio? Ouvi uma observação de que "você precisa ser um cientista de foguetes para montar um projeto" em relação ao software Jetbrains.
Bob
Eles são muito bons. Eu recebi uma resposta para um discurso retórico no Twitter. No entanto, você está certo, configurar um projeto é um pouco estranho no começo, mas não tanto quanto no Eclipse.
Simon Jodet
R # não é um IDE; é uma extensão para o Visual Studio.
Andy
22

Aprenda vim ou emacs. Você pode programar praticamente qualquer idioma com qualquer um deles. Você não terá as muletas fornecidas por alguns IDEs, mas realmente não precisa delas. Você pode se tornar um programador melhor quando confia mais no seu cérebro e menos no senso comum.

Ambos vime emacster um grande monte de recursos e extensões (ou plugins) para facilitar a codificação (incluindo coisas relacionadas com APIs, que você não vai precisar "memorizar cegamente"). Muitas linguagens de programação (mesmo as acadêmicas) têm seu emacsmodo e / ou vimplugins ou extensões. E muitas distribuições Linux estão empacotando essas.

Bryan Oakley
fonte
39
Meu cérebro tem usos melhores do que tentar memorizar APIs ... mas obrigado.
Bob
11
Amém mil vezes, @Bob. Sou programador melhor por causa do intellisense, pois há mais capacidade de usar para outras coisas além das assinaturas de métodos, tipos de retorno e hierarquias de classes das APIs com as quais tenho que lidar. Na minha opinião, é o maior ganho de produtividade dos últimos 15 anos.
Adam Crossland
5
O Emacs fornece CEDET a intellisense , embora o chame de "conclusão de código inteligente".
Jewernerny
3
Embora eu discorde um pouco das opiniões do pôster sobre o uso do IDE, este é o caminho a seguir para os idiomas mais novos e / ou menos populares que não têm bons IDEs. O OP está pensando em Scala e Haskell, e pode querer experimentar outras linguagens não populares, e nesse caso, vim ou emacs são as melhores escolhas.
precisa
5
Para Java (e C #), você quer um IDE; eles ajudam muito. Isso ocorre porque eles são bastante burocráticos à medida que as línguas avançam. Outros idiomas não precisam de IDEs quase na mesma extensão, tornando o vim e o emacs excelentes opções lá.
Donal Fellows
13

Eu não tentaria usar um IDE abaixo do ideal para todo o meu desenvolvimento. Prefiro gastar meu tempo aprendendo o melhor IDE para a linguagem, em vez de hackear / ajustar um único IDE para que você possa usá-lo para algo que não deveria ser usado.

Não há bala de prata aqui.

Você precisará do Visual Studio para desenvolvimento .NET. Você precisará das ferramentas da Adobe para o desenvolvimento do Flash.

Para Java e JS / CSS, recomendo o Jetbrains IntelliJ IDEA e o Webstorm. As ferramentas são fabricadas pelo mesmo fornecedor e, portanto, são semelhantes, muito ricas em recursos, mas a curva de aprendizado é bastante boa. Eles também não ocupam muito espaço em disco, se essa é realmente uma das suas preocupações.

Conforme indicado pelo FinnNk, você pode configurar a maioria (todos?) Dos IDEs IntelliJ para usar atalhos de teclado do Visual Studio ... ou configurar o Visual Studio para usar atalhos de teclado do IntelliJ.

Thomas Stock
fonte
Obrigado. O IntelliJ IDEA também faz o ActionScript dev. Então, precisarei do Visual Studio e IntelliJ ou Eclipse (já que até agora aprender IntelliJ foi um pouco trabalhoso) Onde scala / Haskell se encaixa nisso?
Bob
Existem plug-ins do Eclipse para Scala e Haskell , e não ficaria surpreso se houvesse algo semelhante para o Netbeans .
TMN
Não tenho experiência com Scala / Haskell. Mais uma vez, eu pesquisaria no Google coisas como "melhor scala ide" e veria qual delas atenderia melhor às suas necessidades. PS: Você pode pular o WebStorm e desenvolver JS / CSS com o visual studio. É um IDE decente para o desenvolvimento da Web e, com o suplemento Resharper, você é preenchido automaticamente em JS e Css. (há também livre de plug-ins disponíveis para isso.)
Thomas Stock
@TMN, o plug-in Netbeans Scala está em desenvolvimento
yannis
1
Eu acrescentaria que você pode configurar a maioria (todos?) Dos IDEs IntelliJ para usar atalhos de teclado do Visual Studio ... ou você pode configurar o Visual Studio para usar atalhos de teclado do IntelliJ.
FinnNk
6

O Eclipse pode lidar com a maioria dos idiomas mencionados:

Independentemente, o Eclipse não é uma opção válida, pois a maioria dos plug-ins mencionados acima está em vários estados alfa e a execução de uma instância do Eclipse com todos eles estressaria enormemente o seu hardware.

Mesmo com um ótimo hardware, os plugins raramente oferecem tudo o que um IDE especializado oferece. Também não vejo nenhum motivo válido para executar vários IDEs, quantas plataformas você pode codificar simultaneamente? Se o que você precisa é principalmente ler código escrito em diferentes idiomas ou escrever programas razoavelmente pequenos, você pode escolher o Notepad ++ , que suporta o destaque de sintaxe em um número impressionante de idiomas .

Mas para realmente programar nos idiomas mencionados, eu recomendo usar IDEs diferentes:

O Adobe Flash Builder e o Aptana Studio são baseados no Eclipse, portanto, se você optar por esses, obterá IDEs semelhantes .

yannis
fonte
Obrigado. Sou péssimo em fechar janelas .. Sou um packrat virtual. :( #
Bob
1
Melhorar C # parece estar morto há quase 8 anos!
Newtopian
@Newtopian Bem, sim ele é :) Enfim, o ponto da resposta foi a de não usar o Eclipse para tudo para uma variedade de razões, podemos acrescentar a falta de um C # plugin para eles ...
yannis
@Bob Linux + Gnome com dupla 30" telas dá-lhe (usando 4 desktops) mais do que suficiente tela imobiliário :)
jwenting
@ Bob, importa tentar usar WMs lado a lado (por exemplo, stumpwm, ratpoison, etc.)?
SK-logic
2

Pessoalmente, acho que o Eclipse é o melhor IDE multilíngue ... além do excelente suporte a Java, existe um suporte de desenvolvimento bastante maduro para a maioria das outras principais linguagens disponíveis como plug-ins.

Há uma longa lista de idiomas que, com certeza, foi estendida desde que o artigo foi escrito.

Além disso, não são apenas os idiomas importantes: você também precisa considerar:

  • Ferramentas de gerenciamento de compilação / dependência, como Ant e Maven
  • Controle de código fonte (git, CVS, SVN etc.)
  • Gerenciamento de arquivos de recursos (configuração XML, imagens etc.)
  • Ferramentas de gerenciamento de projetos (backup, documentação, gerenciamento de tarefas etc.)

Levando tudo isso em consideração, é definitivamente uma vitória manter um único IDE primário.

Mikera
fonte
1

Para idiomas que os possuem, é melhor usar os melhores IDEs da classe - eles não são tão diferentes assim. Veja outras respostas para sugestões.

Para aqueles que não usam, sugiro que você use um editor de texto mais pesado - como o emacs (que também funciona como navegador de sistema de arquivos, leitor de e-mail e notícias, plataforma de jogos, gerador de parabéns, etc, etc, etc) . Geralmente, eles têm plugins / configurações / modos decentes que permitem obter o que um IDE mais simples oferecerá.

FinnNk
fonte
1

Cuidado que o uso do IDE é um tópico da guerra santa.

Use a melhor ferramenta para o trabalho. Se um IDE é bom na linguagem X e não na linguagem Y, use-o apenas para X e obtenha outra coisa para Y. Comparado a praticamente qualquer jogo de computador que você possa escolher, o IDE não é nada do seu disco rígido e sistema RAM não aguenta. Acrescentarei que, ao provar um novo idioma, um IDE pode facilitar a brincadeira, não tenha medo de escolher aquele que se encaixa no trabalho. O Android Java é um bom exemplo disso - se você quer apenas um gostinho, não há nada mais fácil do que o Eclipse / Android para se molhar.

anon
fonte
Obrigado e eu concordo. No entanto, agora estou procurando o suficiente e para atender aos outros requisitos sobre os quais perguntei. Estou procurando aprender e desenvolver ao mesmo tempo, para poder ver o que gosto e o que não gosto.
Bob
1

Não tenho certeza se essa é uma ótima idéia. Mudar de um idioma para outro geralmente é uma mudança de contexto completa e o custo disso só pode ser compensado por um IDE simplificado para trabalhar com esse idioma.

É claro que há emacs, mas, a menos que você esteja disposto a investir meia década para realmente entendê-lo, terá problemas para encontrar um IDE em vários idiomas que seja medíocre na melhor das hipóteses em relação à maioria dos idiomas.

Minha sugestão:

  • SharpDevelop para C # e FlashDevelop para ActionScript (e haXe, se você quiser). O FlashDevelop é escrito principalmente usando o SharpDevelop, então você encontrará um comportamento relativamente consistente entre eles. Especialmente o FD tem uma pegada muito baixa, possui um preenchimento automático e uma interface do usuário rapidamente e inicializa em pouco mais de 5 segundos na minha máquina.
  • Java e Scala funcionam perfeitamente em um IDE. Seja IntelliJ, NetBeans ou Eclipse, é mais uma questão de preferência pessoal ou religião.
  • De fato, existe suporte para CSS na maioria dos IDEs. Você provavelmente desejaria usar um editor de HTML que permita a codificação zen (o FD permite), de preferência um dos editores que estiver usando de qualquer maneira e escreva seu CSS no mesmo editor. Ao mesmo tempo, convém procurar quais IDEs do seu conjunto de ferramentas suportam LESS css , porque é realmente uma economia de tempo. Se a escolha é entre escrever menos ou escrever mais, mas com o apoio de um IDE, o primeiro é IMHO favorável.
  • O JS também é suportado por todos os IDEs até um certo ponto. Você pode fazer isso no FlashDevelop. Ou você pode realmente usar o haXe, que é bem suportado pelo FD. Ou você pode dar uma olhada no CoffeeScript e encontrar um IDE que seja adequado para ele (o Eclipse possui um plugin decente, possivelmente outros IDEs também).
back2dos
fonte
0

Sou de opinião que é melhor ter uma ferramenta separada para cada idioma / pacote de idiomas. Mas para alguns (css + js, por exemplo) - não faz sentido nem ter um IDE - um editor de texto com destaque de sintaxe será suficiente.

Para Windows - tente o Notepad ++ . No Linux - emacs , vim (que possui uma curva de aprendizado própria) - ou mesmo apenas no gedit .

Dê uma olhada no NetBeans mais recente - ele é compatível com várias plataformas, mas pode ser um pouco lento; Atualmente, o Aptana Studio é o que eu uso para desenvolvimento web.

Val Redchenko
fonte
0

Dê uma olhada no projeto do servidor Microsoft Langauge. A idéia é que ele está tentando dissociar os detalhes específicos do idioma do editor / ide. Assim, você pode criar a implementação do servidor de idiomas para, por exemplo, C # ou Elixir e um cliente do VisualStudio e do Emacs, e ambos os editores podem usar todos os idiomas.

Nem todos os idiomas ainda são suportados, mas muitos são e facilitará muito no futuro a colaboração entre editores / IDES e idiomas.

Zachary K
fonte