Tá estudando Angular 2? Não? Fica ligado que a gente já está no Angular 4 beta 3!
Angular 2 foi oficialmente lançado em setembro de 2016.
Mas também não precisa ficar tão preocupado. De qualquer forma vamos colocar os pingos nos is pra você entender de uma vez por toda o que está acontecendo com AngularJS, e o que você deve fazer.
Pra começar, se você quiser saber um pouco mais da história do AngularJS, dá uma olhada nesse outro post.
- Angular 2 é uma continuação do AngularJS (1)?
- Porque Angular 2 não é uma continuação do Angular (1)?
- Angular 2 tem uma CLI
- Angular 2 tem boa performance
- Então a próxima versão do Angular é a 3?
- Conclusão
Angular 2 é uma continuação do AngularJS (1)?
Não. Angular 2 não é uma melhoria no Angular 1, Angular 2 é outro framework mesmo. Então porquê o nome dessa bagaça?
Vários são os motivos. O objetivo central do framework ainda é o mesmo: facilitar o desenvolvimento de aplicativos web, utilizando um menor número de linhas de código.
O Angular 2 foi desenvolvido pela mesma equipe do Angular 1, então é a continuação do projeto, mas os frameworks não se parecem muito.
O nome Angular é forte no mercado web, e valia a pena manter o nome, até para as pessoas já saberem do que se trata, que o Google mantém, entre outros.
Porque Angular 2 não é uma continuação do Angular (1)?
Como você pode dar uma olhada aqui, AngularJS foi criado em 2009, antes desse gigantesco boom de frameworks JavaScript. Portanto, ele foi o precursor em muita coisa, mas também foi a partir dos seus problemas (principalmente de performance) que foram nascendo outros frameworks como React.js, Vue.js e outros.
Esses novos frameworks resolviam vários problemas que o Angular não, e aí a comunidade começou a falar que o Angular tinha morrido entre várias outras coisas.
Angular 2 usa TypeScript
TypeScript possivelmente vai ser o próximo assunto que eu vou abordar, porque eu mesmo fiquei… preocupado quando vi que a nova versão do Ionic estava usando Angular 2 e consequentemente TypeScript. Porque não deixaram o velho e bom JavaScript?
Como JavaScript aos poucos começou a ser utilizado para qualquer coisa, e quase está se tornando uma linguagem de mais baixo nível devido a infinidade de frameworks que a utilizam como base, algumas pessoas começaram a querer um JavaScript mais tipado.
Sabe Java ou C#, que quando você vai definir uma variável, você diz se ela é string, int ou qualquer outra coisa? Isso é uma linguagem fortemente tipada, coisa que o JavaScript não é. Então, para criar códigos de larga escala fortemente tipados foi criado o TypeScript, que pro navegador continua sendo JavaScript, visto que o código é compilado para JavaScript puro.
Outra feature interessante do TypeScript é que você pode utilizar recursos de ES6(JavaScript 2015), ES7, ESQualquer coisa com TypeScript, pois quando ele compila ele converte em JavaScript puro que qualquer navegador consegue ler. Ou seja, você pode utilizar recursos que o navegador teoricamente não teria como executar, mas o compilador transforma em código que o navegador consegue executar. Boa ideia, não?
Só tem um problema, TypeScript não é JavaScript. E algumas pessoas odeiam isso.
Angular 2 tem uma CLI
Não sei se você já desenvolveu algo em Ionic, mas várias rotinas como criar um projeto, gerar a Splash Screen, rodar o projeto e outros podem ser feitos através de comandos executados no terminal/prompt.
Angular 2 também tem uma CLI (Command-line Interface) onde é possível executar vários comandos que facilitam a utilização dessas rotinas. E isso é um ganho tremendo no desenvolvimento.
Aqui você pode encontrar a lista de comandos possíveis.
Angular 2 tem boa performance
Cara, dá uma olhada nesse gráfico que a auth0 fez, e tire suas próprias conclusões. Angular 2 é tão mais rápido que o 1, que parece inacreditável.
Então a próxima versão do Angular é a 3?
Não. A próxima versão do Angular é a 4, e tudo bem.
A partir da versão 2, o Angular vai usar um versionamento um pouco mais correto, que é o Semantic Versioning.
Sendo assim, qualquer breaking change deve ter uma mudança de versão. Mudou a versão do TypeScript? Nova versão.
Mas cadê a versão 3? Alguns pacotes do Angular estavam na versão 2.alguma coisa. Outros pacotes estavam na 3.alguma coisa.
Pra nivelar, seguindo o Semantic Versioning, tinha que subir mais uma versão Major, por isso a próxima é a 4. Mas sinceramente? Não muda muita coisa.
Só muda quando você tiver algum bug e estiver procurando a solução no Google. Aí é bom saber a versão certinha que você está utilizando né?
Eu fico tranquilo com esse lance de versionamento, quando me lembro que o meu Google Chrome neste exato momento está na versão 55.0.2883.87 m 🙂
Conclusão
Se você não sabe nada de Angular é quer começar a estudar, comece pelo 2, e tá tudo bem.
Já estudou Angular 1 e tá com preguiça de aprender o 2? Você não perde todo o conhecimento que você teve no 1. Ainda temos o two-way data binding, e continuamos a escrever HTML reutilizável em repeats, ifs e outros.
Nem tudo está perdido meu amigo!
Por falar nisso, tem um curso da Loiane Groner no YouTube de Angular 2, que tá irado!
Dúvidas? Deixa nos comentários.