Angular 2 está a punto de ser liberado y muchos desarrolladores se están preguntando “¿Debo aprender Angular 2?” La respuesta breve es SÍ; pero vamos a ver algunas razones del por qué.
Primero, es una buena idea entender donde está ubicado actualmente el desarrollo web front-end: Hace unos cuantos años, había muy pocas opciones; pero ahora, tenemos una gran cantidad de buenos frameworks para escoger. Esta es una situación mejor que no tener opciones, pero también puede conducir a una parálisis, según la cual, no podemos tomar una decisión porque hay muchas buenas opciones.
Además, hemos visto un reciente “cansancio por las herramientas”: desarrolladores quejándose porque existen muchas piezas qué mover, por más sencilla que sea la aplicación y, especialmente para los nuevos desarrolladores, esto puede ser un ambiente particularmente desafiante en el cual tratar de hacer el trabajo.
Angular 1
A pesar de que Angular 1 es un excelente framework, está comenzado a mostrar su edad. Aunque todavía está ganando popularidad, hay algunos problemas fundamentales con éste. El primero –y más importante– es el rendimiento. Angular 1 está bien para muchos sitios, pero no toma mucho tiempo para que el desarrollador se tope con la situación de que Angular 1 tiene problemas de velocidad. Segundo, Angular 1 no fue construido con herramientas modernas o teniendo en mente los estándares. Si quieres usarlo con un sistema de módulos, te decepcionarás muy rápido y vas a tener muchos problemas con esto. Finalmente, sufre de un algo de ambigüedad en algunas de sus piezas. Con la versión más reciente de Angular, puedes lograr las mismas cosas, ya sea con un controlador, una directiva o un componente. Así que cuál de todos es el correcto que debes usar en una situación dada, puede ser problemático.
Otros frameworks.
A pesar de que actualmente hay grandes frameworks disponibles, cada uno de ellos tiene problemas que un desarrollador debe enfrentar. Primero, muchos de estos frameworks tienen una adopción muy reducida, así que, de ambas partes (para el desarrollador en su carrera y para el empleador, cuando trata de contratar talento experimentado) esto puede ser todo un reto. Angular 2, será la elección natural si vienes de Angular 1, lo cual significa una gran adopción y difusión. Segundo, muchos otros frameworks son soluciones parciales, a diferencia de Angular, lo cual significa que tal vez tienes que poner juntas muchas piezas diferentes, antes de que tengas todo lo necesario para escribir tu aplicación. Finalmente, algunos de los frameworks fueron desarrollados con un enfoque en resolver un problema en específico y, por lo tanto, tienen muchos problemas en un típico ambiente empresarial con las trampas usuales que se presentan, como pruebas unitarias, internacionalización y accesibilidad.
Angular 2
Ahora que hemos identificado algunos de los problemas con Angular 1 y otros frameworks, veamos cómo Angular 2 los afronta. El primer tema de la discusión sería el rendimiento: Angular 2 es rápido, tan rápido que arde, ningún framework es más rápido. Algunos le compiten, pero nada es más rápido que Angular 2. Siguiente, Angular 2 fue construido con herramientas modernas y tomando en consideración estándares. Soporta módulos ES6, herramientas como webpack y SystemJS, y ha ayudado incluso a impulsar estándares, ayudando a los pioneros decoradores en ECMAScript.
El modelo mental de Angular 2 es mucho más simplificado que Angular 1. No tendrás más que escoger entre tres conceptos similares. Los componentes manejan todo. Angular 2 es el sucesor natural de Angular 1, así que seguramente llegará a ser igual de popular, si no es que más popular que Angular 1. Esto significa que aprender Angular 2 es probablemente bueno para tu carrera y, en el camino, tendrás más oportunidades de encontrar desarrolladores Angular 2. Angular 2 es también una solución completa. Incluye rendering, compilación, binding (vinculación), comunicación a servidor y pruebas unitarias; todo junto. Sin preocupaciones de escoger entre 20 librerías diferentes cuando únicamente necesitas hacer una llamada HTTP.
Finalmente, Angular 2 fue construido desde cero para resolver el mismo problema que Angular 1 resuelve. Todo. Desde aplicaciones muy sencillas hasta aplicaciones empresariales muy grandes. Además, Angular 2 es muy bueno para hacer pruebas y admite principios accesibilidad e internacionalización.
Conclusión
Así que, si aún sigues preguntándote “¿Debo aprender Angular 2?” la respuesta es muy obvia. Angular 2 será un jugador importante en la escena JavaScript para el futuro próximo. No hay mejor oportunidad que ahora para aprender Angular 2. Si te interesa aprender por medio de un curso presencial, en KMMX tenemos disponible el curso de Angular 2, entre otros más de JavaScript y frameworks de desarrollo web.
De la conferencia ng-conf por Joe Eames, traducido por @alexmarket