domingo, 17 de julho de 2016

Angular 2: Vale a pena migrar agora?

ue 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.

0 comentários:

Postagem mais recente Postagem mais antiga Página inicial