Angular 2: Vale a pena migrar agora?

Postado por em   ●   23 comentários

Que o AngularJS é o queridinho do momento no mundo do desenvolvimento front-end, não tem como negar. Entretanto, vários desenvolvedores estão passando um por um dilema nos últimos dias: Migrar ou não migrar logo pro Angular 2?

Imagina que você está feliz em 2012 com o seu iPhone 4S que você acabou de comprar. Um belo de um smartphone. Você aproveita e compra também alguns mimos, como uma estação de som pra ouvir música em casa e um pro carro também.

Você passa alguns meses bem feliz até que chega o anúncio da Apple sobre o iPhone 5 com seu novo conector lightning dentre outras diversas melhorias.

O que fazer agora? Correr e entrar na fila de pré-venda do iPhone 5 e aproveitar tudo que ele tem de bom pra oferecer?

Mas e seus docks de casa e do carro que só servem com o conector antigo? Ainda nem tem tantos acessórios pro 5… e seu iPhone 4 vai demorar um bocado pra ficar defasado. O que fazer?

Quando se trata desse tipo de decisão, existem diversos motivos pelos dois lados. Neste artigo vou buscar apresentar os dois lados da migração pro Angular 2, e aí fica a seu critério decidir em qual dos motivos você mais se identifica.

Por que não migrar?

Os que preferem não migrar agora são aqueles que utilizam a tecnologia em ambientes empresariais onde agilidade e confiabilidade são fatores muito importantes. É preciso de um sistema sólido e fácil para desenvolver.

Sendo assim, seguem alguns motivos pelo qual não se deve migrar:

1. Ainda não está pronta

O Angular 2 ainda está em desenvolvimento. No momento da publicação deste artigo ele ainda estava em Release Candidate.

Isso quer dizer que o sistema precisa amadurecer um pouco mais. Ele precisa ser testado em casos reais e ainda tem bastante água pra correr. O próprio Angular 1.x só começou a ficar mais maduro a partir de sua versão 1.3.x.

2. Não é um update. É um novo sistema

No mundo “evergreen” em que estamos vivendo, queremos sempre ter a versão mais atualizada de tudo o que pudermos tocar as mãos.

Com o Angular não é diferente. Ao vermos o 2.0 sendo anunciado e percebermos que estamos usando uma versão 1.x, temos o instinto de correr atrás da “atualização”.

Acontece que essa não é uma atualização. Quase tudo mudou! Desde sua filosofia até como você inclui os componentes.

Algumas coisas até permaneceram, como a sintaxe do template HTML, que é bem parecida, e as diretivas/componentes para modificar a DOM.

Se você acredita que pode pegar seu app atual e passar pra Angular 2 com apenas algumas adaptações, se enganou. As adaptações necessárias são tantas que você, praticamente, estará reescrevendo sua aplicação.

3. A curva de aprendizado é ruim

Não é só aprender um sistema novo. Pra trabalhar com Angular 2 você precisa aprender uma nova “linguagem”: o TypeScript.

Sim, tem uma maneira de usar o Angular 2 só com JavaScript, mas não existe ainda nem uma documentação pra te ajudar nesse processo, nem mesmo no site oficial (ok, até tem, mas o máximo que elas te ensinam é como fazer um “Hello World”).

Cursos e palestras sobre Angular 2 sempre ensinam com TypeScript.

Isso faz com que o aprendizado seja mais lento, demandando mais investimento pra adotar a tecnologia.

4. A comunidade ainda está tímida

Como essa tecnologia ainda está chegando, você estará na vanguarda da tecnologia. Ou seja, se tiver algum problema, vai ter que torcer pra ele ter sido respondido em uma das apenas 9500 perguntas sobre o assunto no StackOverflow (contra 179k do Angular 1.x), ou você vai ter que perguntar e aguardar uma resposta.

Caso tenha alguma necessidade mais avançada, vai ter que torcer pra que um dos 15 módulos presentes no NgModules (ou um dos poucos espalhados aí pela internet) te atenda, ou terá que programar você mesmo.

5. O Mercado ainda não precisa dele

O mercado ainda não conhece o Angular 2. Na verdade, agora que as empresas estão começando a ver a grande vantagem que o AngularJS pode trazer pra elas, ou seja, estão só agora conhecendo a versão 1.x.

Numa pesquisa no Google por vagas que pedem conhecimento de Angular 2 como requisito, encontrei apenas um anúncio da própria AlgaWorks procurando por um professor de Front-end e que a pouco foi ocupada por este que lhe escreve.

Por que migrar?

Se você é um explorador de horizontes, se tem uma visão progressiva da programação e se busca estar sempre na vanguarda da sua área, então você se encaixa no perfil daqueles que acham que vale a pena migrar agora (até já tá passando da hora).

Segue o porquê:

1. Explorando terras desconhecidas

Um novo sistema, uma nova filosofia, uma nova linguagem. Isso realmente pode ser desencorajador. A curva de aprendizado pode ser comprometida com o TypeScript, mas você não estará perdendo o seu tempo.

O Angular 2 mudou sim, não tem como negar, mas não é só ele: o jQuery está mudando, o Bootstrap está mudando, o próprio JavaScript está mudando. Uma nova maneira de desenvolver aplicações front-end está chegando e você estará pronto.

2. Você pode ser a referência da comunidade

Sim, a comunidade está começando ainda, mas a cada dia ela aumenta e você pode fazer parte dessa história.

Quem não vai gostar do currículo de alguém com uma pontuação alta no StackOverflow, ou com um complemento no GitHub com mais de 2000 estrelas? Ou até o de alguém que escreveu diversos artigos sobre o assunto?

Dependendo do quanto você se dedicar em contribuir com a comunidade, talvez você nem vai mais precisar distribuir currículos outra vez na sua vida.

Uma videoaula vai ter muita visualização, um artigo vai ter bastante acesso, um complemento vai ter milhares de downloads e tudo isso pode se converter em dinheiro se você tomar o rumo correto.

3. O mercado em breve vai precisar dele

É verdade que o mercado está buscando o Angular 1.x agora. É verdade que uma plena aceitação da versão 2.0 vai precisar de mais alguns anos pra chegar.

A situação, entretanto, também não é desfavorável. Ter um domínio sobre Angular 2 é um ótimo “plus” no currículo e pode ser a diferença entre você e aquele acomodado que não quis dar um passo a mais.

Se preparando agora, você garante que sempre vai ter alguém precisando de você. Tanto hoje quanto amanhã.

4. O Angular 2 abre novos horizontes

O Angular 2 não está sendo feito só pra desenvolvimento web de SPA, ele está sendo projetado pra ser multiplataforma.

Isso quer dizer que ao se aperfeiçoar em Angular 2, você não só se insere no mercado de desenvolvimento front-end, mas também no crescente mercado mobile e desktop. É quase um “pague 1 leve 3”, o céu será o limite!

5. Ele vai vingar e não tem como negar

Realmente pode dar um frio na espinha adotar um sistema que ainda está em Release Candidate, mas vamos ser realistas: esse é um sistema garantido pelo Google!

É tão seguro usar um produto Release Candidate da Google quanto uma versão 1.5 de produtos de muitas empresas por aí.

Estamos falando de uma empresa conhecida por contratar os melhores analistas em suas sedes espalhadas pelo mundo. O time de desenvolvimento do Angular 2 é formado por nomes renomados e tem até gente da Microsoft lá dentro.

Além disso, quem dá a cara a tapa e começa a ver o Angular 2 fica facilmente impressionado com o sistema e se apaixona bem rápido por ele. É só procurar na internet pra comprovar o que eu estou dizendo.

Concluindo

Como toda boa decisão, o que pesa é o seu perfil e o ambiente em que você se encontra. As cartas estão na mesa, basta escolher qual o tipo de jogo você quer jogar.

Seja qual for a sua escolha, nós gostaríamos muito de saber. Deixe aí um comentário com a sua opinião e compartilhe este artigo com os seus amigos.

Ah! Faça a sua inscrição na nossa Lista VIP para receber no seu email as últimas novidades do mundo Front-end. Não se preocupe que nunca vamos divulgar seu email e nem mandamos spam. :)

Lista VIP de Front-end

Professor front-end da AlgaWorks. Trabalhando na área de desde 1998, acompanhou a evolução do desenvolvimento web desde o início do HTML 4, onde o CSS e o JavaScript eram lendas.

23 comentários sobre “Angular 2: Vale a pena migrar agora?

  1. André Luiz -

    Matéria muito interessante.

    Estamos começando um novo projeto Web na empresa, sendo o backend em java Spring, muito baseado no que aprendi no curso da algaworks, com angular.

    Pesquisei bastante sobre o angular 2, e não me senti seguro em oferecer e aprender ele agora para esse novo projeto.

    Possuo um certo conhecimento na versão 1.x, e como algumas pessoas da equipe nunca tiveram contato achei mais prático usar essa versão.

    Porém como no mundo da informática nada é completo, rsrsrs, podemos um dia migrar tudo para angular 2 ou até mesmo o thymeleaf.

    =]

  2. Rogério -

    Mesmo com o Angular 2 ainda não estando pronto para produção é o que a maioria quer aprender agora (minha opinião). Temos o curso de java da Algaworks e é excelente, se lançar o de Angular 2 com certeza temos interesse.

  3. Jose Claudio -

    Ele vai vingar. Isso sem dúvida. Mas… com esse novo rumo a implementação de aplicações via JavaScript, novos e antigos camaradas do AngularJS estão dando as caras.

    Como exemplo temos o EmberJS (o qual prefiro E MUITO) e para aqueles que adoram o Angular 1, existe uma alternativa chamada VueJS, por sinal mais rápida e sem tanta frescura.

    Uma dica pra vocês é que foquem no conhecimento do Angular 2, mesmo ainda estando em release candidate. Já tem muito de Angular 1 por aí. =D

    Parabéns!

  4. Rodrigo Waltenberg Autor do post-

    Obrigado por contribuir Jose Claudio!
    Concordo mesmo que o ng2 vai vingar por certo, entretanto eu não vejo o google descontinuando o ng1 tão cedo, e tenho observado uma movimentação grande das empresas atrás de pessoas com conhecimento de angular. Além do poder da comunidade dele que ainda é inegável.
    Isso faz com que ainda sim ele seja uma boa aposta.

  5. Rodrigo Waltenberg Autor do post-

    Obrigado Marcus :)

  6. Everton Martins -

    Muito boa a matéria. Como você disse, a curva de aprendizagem de quem programa AngularJS 1 para Angular 2 é muito grande, exige bastante esforço, no meu caso, decidi ver como era a sintaxe do Angular 2 e me assustei um pouco com o tamanho da mudança. Então decidi focar no AngularJS 1 para melhorar minhas habilidades e realizar sistemas com o tal. Deixando para um futuro próximo o aprendizado do Angular 2. Ouvi falar, para quem não programou em AngularJS 1, e que tenha uma boa noção de OO, a dificuldade parece menor em comparação ao programador que utiliza AngularJS 1, pois já está acostumado com essa sintaxe. Como você disse também, o AngularJS não foi produzido somente para sistemas WEB, e sim multiplataforma. Utilizo da ferramenta Ionic para desenvolvimento híbrido de Aplicativos e o mesmo utiliza dos recursos fornecidos pelo Angular. Sendo assim, o framework AngularJS é muito eficaz e utilizado no mercado, e eu indico para o pessoal que queira iniciar programação multiplataforma o aprendizado do mesmo.

  7. Eduardo -

    Ng2 pq seguir para frente. Depois se precisar lança alguns complementos mais eu compraria o 2

  8. André -

    Ótimo artigo Rodrigo
    Sem dúvida nenhuma o Angular 2 vai vingar, porém a curva de aprendizado é maior. Comecei a ver sobre Angular 2, porém notei que era melhor me preparar em algumas partes antes. Então comecei a estudar JS(ES6), transpiler, Typescript e Design Pattern c/ JS. Quando voltei a estudar Angular 2, já me senti bem mais a vontade e vejo que programadores back-end em linguagem como Java por exemplo, estão vendo algo muito interessante, que ja viamos antes. Como classes construtores, encapsulamento e por ai vai. E a grande sacada que vem crescendo é Spring + Angular, só olhar os projetos no github, as questões no stackoverflow. Com o Angular 2, vai dar p/ trazer do back-end, aquele processo de build refinado, mas todo esse poder tem um preço e inevitavelmente a curva de aprendizado do Angular 2 é maior.
    Mas como você disse, o AngularJS 1.X, ainda tem muito chão pela frente.
    Novamente parabéns pelo artigo Rodrigo.

  9. Renan Resende -

    Excelente artigo, parabéns! Mas me diga uma coisa Rodrigo, para quem não sabe nem a versão 1.x você recomenda ir direto para a 2 ou começar pelo 1.x mesmo?

  10. Rodrigo Waltenberg Autor do post-

    Obrigado Everton e André!

    Renan, eu pessoalmente indicaria o Angular 1.x neste momento, principalmente se você já tem domínio de JavaScript. Assim você não vai demorar muito pra aprender e já vai se inserir bem no mercado.
    O segredo é não relaxar. Depois de aprender, corre pro ng2 pra não ficar pra trás! :)

  11. Eder Fonseca -

    Ótimo artigo!!

    Compartilho da mesma dúvida postada pelo Renan Resende.

    Obrigado!!

  12. Rodrigo Waltenberg Autor do post-

    Obrigado Eder! Se é a mesma dúvida então já está respondida :)

  13. Gilberto Albino -

    Aqueles posts que você le e diz: Ham?!
    Quando a Google decidiu incorporar e definir o Typescript no Angular 2, e pra quem ja se atualizou e aprendeu o Angular 2, vai perceber que a maior vantagem é justamente a modernidade e padronização que os engenheiros conseguiram incorporar ao Angular deixando ele 100% compatível com ES6. Eu só precisei de 2 horas para criar um mindset e abandonar o arcaico ES3 (javascript) aprendendo ES6 com Typescript, pois é isso que ele é, a implementação do ES6 no javascript. Meu código melhorou e até a produtividade aumentou, pois é muito similar ao C#, C++ e Java. Então, Typescript não é um problema.
    E apesar das diferenças entre as versões migrar para a nova versão vai ser algo que se consegue facilmente com disciplina e conhecimento efetivo de Angular 1… a coisa mudou, mas nao ficou difícil de entender, é pratico e simples… exige disciplina somente.
    Mas, nesses 16 anos de desenvolvimento nunca vi ninguém migrar tecnologias… eles refazem os sistemas e sites… é isso que permite a inovação acontecer e gerar economia, ja imaginou fazer um sistema que dura 50 anos? Morreríamos de fome. Entao, instabilidade e novidade é o que gira economia em TI.
    Enfim, não é hora de migrar… é hora de fazer igual o time do Ionic fez… Pega essa porra, estuda, ve as novidades, aprende, incorpora e começa a usar logo!
    Sinto que aqui no Brasil passamos mais tempo analisando, reclamando, lamentando, murmurando, do que estudando e criando. Depois quando a comunidade adota algo, uma novidade ja sai do forno e o muro das lamentações se ergue pomposo de novo… justificando nossa cultura estupida de nao estudar e deixar tudo pra ultima hora… desafios? Jamais… a desculpa? É alpha, beta, rc… Eita Brasil!

  14. Rodrigo Waltenberg Autor do post-

    Obrigado pela sua opinião Gilberto. Tenho certeza que vai ajudar muita gente a decidir :)

  15. Jose Henrique -

    Nah.. Estamos em faze de migração do nosso sistema em JSF para Angular2, e posso dizer que em duas semanas já fizemos muitas coisas e a curva de apresendizado é muito boa. Quando eu vejo o JS Angular1 da um frio na barriga, mas com a adição do TypeScript no Angular2, motivou muito a nossa equipe a fazer a migração e sem dizer que é muito mais simples de entender, até mesmo para aqueles que não tinham o JS na rotina do dia a dia.

    Como o Gilberto Albino disse no comentario anterio, o povo brasileiro reclama demais. Só para complementar assista esse video e veja os comentarios : https://www.infoq.com/br/presentations/angular-2-uma-cilada

    1. Thiago Faria de Andrade -

      Oi José!

      Ninguém reclamou de nada não. :)

      Realmente, para quem vem do Java, é mais simples começar com TypeScript mesmo.
      Acredito que quem só programava com JavaScript, a evolução deve ser um pouco mais lenta.

      Veja a data de postagem. O artigo foi escrito pelo Rodrigo (ex-instrutor da AlgaWorks) na época que Angular 2 ainda estava em beta.
      Não houve nenhuma conclusão dizendo para usar ou não. Ele apenas citou os prós e contras de migrar naquela época.

      Discordo que essa análise é um “problema” do brasileiro. Isso é algo que o mundo inteiro faz.
      Em qualquer parte do mundo, você vai achar gente que gosta e que não gosta das coisas. Isso é do ser humano.

      Para ficar claro, nós não temos nada contra Angular 2. Inclusive, estamos usando em um projeto interno e temos planos de um novo curso em 2017 sobre isso.

  16. Rafaela Marraschi -

    joséhenrique, primeiro lugar ele nem reclamou de nada. Ele só disse os prós e contras e concordo absurdamente com ele. Acabei de sair de um projeto grande feito em Angular 1 e fico pensando quantas empresas fizeram o mesmo? Imagina ter que mudar tudo agora? Vai ter muita manutenção de sistemas em 1.x ainda, querido… Cuidado com essa migração. Acho válido estudar a nova tecnologia, mas não esquecendo da anterior. Muita coisa por aí foi feita nela. Abs.

  17. Allan -

    Angular 2 + typeScript + VScode = *ngSucesso =)

  18. Rafael Moura -

    Bem, na minha modesta opinião, a Tecnologia só tende a evoluir, avançar, portanto, temos que nos adaptar a ela e não o oposto. Precisamos acompanhar este rítimo sem reclamar, existem vários frameworks, é aquela história de amor à primeira vista, você usa aquela que melhor lhe atende, para quem já tem noção essa regra seria aplicável, pois já possui um certo conhecimento e pode julgar por seus próprios conhecimentos, mas realmente para quem está começando no mundo da TI, buscar e escolher é um desafio, pois existem diversas opiniões.
    Em minha busca, conheci o Angular 1, comecei a estudá-lo e já vi o Angular 2 e, estou gostando muito e indico o uso desse cara. Sim, existem várias outras, React, Aurélia, Vue e bla bla bla etc…. mas aquela coisa, fiquei com o primeiro que vi, estou gostando, o uso do TypeScipt torna muito simples nas minhas pequenas aplicações, para mim não vejo uma tempestade em um copo d’água, so vejo melhorias é minha opinião

  19. Deivid Matos -

    Ola Rodrigo Waltenberg, achei muito interessante o post, sei que ja tem um tempo que foi lançado, mas eu estava pensando nisso de migrar, mas queria conversar com alguem que conhece mais a tecnologia, se tiver disponivel, meu email deivid.dgm@gmail.com

  20. welligton -

    Boa noite, sei que não tem haver o assunto.
    Mas é um tema que esta tirando o sono de muitos.
    JSF esta entrando em desuso e o Angular 4 esta ganhando um maior mercado?

    1. Thiago Faria de Andrade -

      Olá Welligton,

      O mercado não se resume apenas a essas duas tecnologias, por isso não é tão simples responder essa pergunta.

      Existem várias outras tecnologias, como React, Vue.js, Ember, Spring MVC + Thymeleaf, etc.

      Quando uma tecnologia cresce em número de desenvolvedores e projetos, naturalmente outras diminuem.

      JSF é uma tecnologia mais antiga, mas muito madura, e continua sendo evoluída.

      Angular é uma tecnologia nova, mas por ser independente de linguagem de back-end e ter os desenvolvedores do Google por trás, deve continuar crescendo.

      Qual mercado Angular está tomando, é difícil dizer, precisaria encontrar alguma pesquisa.

      React e Vue.js também está crescendo muito!

      Não sabemos exatamente como vai ser o futuro, mas o que podemos ter certeza é que surgirão novas tecnologias para entrar na “briga” e nunca uma única tecnologia vai dominar o mercado completamente.

      O ideal é conhecer mais de uma tecnologia e continuar estudando. Assim não precisa se preocupar tanto e nem perder noites de sono. :)

      Um abraço.

Deixe um comentário