# Porque o Intellij?

Desde que eu comecei a programar na faculdade, eu sempre usei o eclipse como IDE. Ele tem uma interface intuitiva e é uma plataforma extremamente extensa de plug-ins. So que esse post é sobre o quando eu comecei a trabalhar com o intellij e como isso foi sensacional.

Primeira IDE
------------

Eu ja citei anteriormente que meu background de programação é particularmente com Java. E segundo  pesquisas que eu mesmo fiz a grande maioria comeca a programar em duas IDEs, Eclipse ou NetBeans.

Eu comecei  com o eclipse porque achei o NetBeans bem complicado e os benefícios não me atraíram a ponto de superar a curva de aprendizagem. Eu conheço uma galera que prefere trabalhar nele por conta das facilidades que ele oferece no inicio e nas configurações do projeto. O problema nesse caso é que quando você está começando, não sabe  de  nada disso então fica difícil aproveitar isso. O eclipse oferece isso de una forma mais interessante,  quando você obtém ele no site ele tem as configurações mínimas pra você criar seu projeto. E quando você aprende mais,  existe um  plugin X(insira aqui seu plugin preferido) que permite você fazer algo mais avançado.

_"Angeliski,  até agora você não falou nada do Intellij"_

Calma jovem,  acontece que o eclipse é uma ferramenta muito boa e eu quero que você entenda os motivos. Porque eu não vou te dizer que o Intellij é melhor, só que ele é diferente.

Se você trabalha ou trabalhou com o eclipse sabe que ele é cheio de manias. O build de um jeito,  precisa dar clean assim,  refresh no outro e qualquer outra mania específica do seu projeto. Isso não é o fim do mundo, mas enche as vezes. Mas eu não vou falar mal do eclipse não,  vou falar da minha história com o Intellij.

O Início
--------

Você já deve ter ouvido falar do Intellij e ter ido ver como é.  Eis que surge o primeiro susto: é pago.

_"Como assim? O eclipse é de graça, porque eu vou pagar pra usar?"_

Você sabe porque. O eclipse é uma ótima ferramenta, mas você é um profissional. Quando você precisa de uma ferramenta profissional, seja um alicate, um equipamento, ou qualquer outra coisa do tipo, você não paga por isso? A mesma coisa é com a sua IDE, quando você precisa de uma ferramenta profissional, paga por ela.

Outro detalhe do Intellij é que ele tem uma curva de aprendizado. Pra alguém que está começando é díficil e isso normalmente faz com que as pessoas deixem de usar.

Existe ainda um cenário pior, você trabalha com o Eclipse por muito tempo e resolve testar o Intellij no trabalho.

![Um cara fazendo tudo errado no trabalho](https://cdn.hashnode.com/res/hashnode/image/upload/v1660445841180/-lyZd31AC.gif)Um cara fazendo tudo errado no trabalho

Você fica lá tentando fazer as coisas como no eclipse, mas nada dá certo. E ai vem aquele bug e você precisa resolver logo... Lá se foi a sua tentiva de usar o Intellij.

Eu também passei por isso, diversas vezes eu tentei usar o Intellij, mas a curva de aprendizado de uma nova IDE em contraste com a minha produtividade no Eclipse sempre me empurrava para ficar onde eu estava.

O Ponto de virada
-----------------

Quando eu entrei na [Bluesoft](https://bluesoft.com.br/), 90% dos desenvolvedores trabalhavam com Intellij. O que não é estranho se você parar pra pensar. Quantas vezes você já foi em um evento e aquele palestrante X tinha um Intellij aberto? E você sem saber porque ele usava aquilo.

Conforme eu ia pareando com os desenvolvedores, eles iam me mostrando como o Intellij funcionava. Atalhos, vantagens, configurações e isso foi se mostrando vantajoso. Vou dar alguns exemplos:

*   **Decompiler** - O Intellij tem um decompilador fantástico, que permite você inclusive debugar o código externo que não tem fonte.
*   **Database tools** - Ele tem uma visão que permite você conectar no banco, gerar consultas, editar registros inline e inclusive copiar uma linha gerando um insert, update ou até mesmo no formato CSV.
*   **Quick Search** - Outra coisa é a pesquisa que permite que você visualize um preview dos resultados, permitindo que você interaja com as classes, editando ou navegando nelas.
*   **Autocomplete** - Você consegue usar no JS, no Java, no Groovy, Clojure, Angular.... E milhões de outras coisas.
*   **Search Pattern** - Você consegue pesquisar por trechos e até mesmo por regex, tudo de modo simples e interativo

Claro que isso são só algumas coisas. Conforme você vai usando, vai descobrindo outras coisas vantajosas pra você.

Dúvidas? Gostou? Me acha um idiota?

Comenta ai!!

Angeliski
