Angular IV: Uma nova esperança
A pouco tempo atrás em uma galáxia nada distante...
É um período de guerra. A cada dia surge um novo framework JavaScript para ajudar na batalha do desenvolvimento front-end. A necessidade de aplicações cross platform, velozes e performáticas, que sejam desenvolvidas com bastante agilidade é cada vez maior. Eis que então surge um novo aliado que pode ajudar equipes inteiras a fazer entregas com mais robustez e qualidade, tornando possível que a user story tenha um final feliz...
Angular 4 ?
Já que tivemos o nosso momento de descontração, vamos ao que interessa: Sobre o quê é este livro. O propósito deste livro é te apresentar as pricipais características do framework Angular, bem como te dar uma base sólida o suficiente para que você possa desenvolver a sua primeira SPA utilizando essa ferramenta de forma consciente.
No momento em que este livro foi escrito a versão mais recente do framework é a 4.0.1
, a equipe de desenvolvimento do Angular recomenda que quando termo Angular
for utilizado sem especificação de versão, deve ser assumido que se está falando a respeito da versão estável mais recente do framework, portanto a partir de agora nos referiremos a ferramenta simplesmente como Angular
.
Para quem ainda não é fã de Star Wars: A utilização da expressão Angular 4, foi utilizada para fazer referência a íconica abertura de Star Wars: Episode IV – A New Hope, já que este livro tem um título relacionado à franquia não se surpreenda se vir coisas desse tipo no decorrer da sua leitura. 😅
AngularJS, Angular 2, Angular 4, Angular
Se você está no mundo de desenvolvimento front-end há algum tempo, ou se já participou do processo de desenvolvimento de uma aplicação web, é bem provável que já tenha ouvido falar do AngularJS, que se refere as versões 1.x do trabalho e objetivos do time de desenvolvimento do Angular. Após o lançamento da versão 2, rapidamente a comunidade passou a adotar o termo Angular 2, visto que esta nova versão foi uma reescrita total do framework que se deu após cinco anos de uso extensivo e feedback da comunidade na utilização da versão 1.
Com o lançamento da versão 2 o time de desenvolvimento resolveu adotar uma abordagem diferente de versionamento, o Semantic Versioning (SEMVER), que como o próprio nome diz, tem o objetivo de dar significado aos números de versão, desta forma tornando mais fácil para os utilizadores de tal software saberem os impactos que cada nova versão pode causar na sua aplicação caso resolvam fazer o upgrade. E como uma mudança sempre é a porta de entrada para outra, a frequência de lançamento de novas versões também mudou, atualmente o planejamento de novas versões está da seguinte forma:
- patch releases toda semana (o número mais a direita do SEMVER)
- 1 minor release a cada 3 meses (o número do meio do SEMVER)
- 1 major release a cada 6 meses (o número mais a esquerda do SEMVER)
A bibliotecas que compõem o angular estão todas no mesmo repositório e todas são versionadas da mesma maneira, mas distribuidas em diferentes pacotes NPM, por conta de um desalinhamento na liberação da versão 3.3.0
da biblioteca @angular/router
(que ficou uma versão acima das outras bibliotecas do core do Angular) o time decidiu "pular" direto para a versão 4 para que assim pudessem alinhar todas as bibliotecas novamente e evitar confusões nas próximas iterações. Por isso não tivemos uma versão 3.0
.
Com uma maior frequência de novas versões, rapidamente teremos o Angular 5, Angular 6 e assim por diante e isto com certeza pode causar bastante confusão, pois a velocidade de depreciação dos termos se daria de acordo com a versão, o que na teoria não condiziria com a realidade visto que a equipe não planeja fazer uma mudança tão brusca quanto foi a da versao v1 para a v2. Portanto a decisão de nomear o framework apenas de Angular
foi mais que certa.