Angular, Angular.JS, AngularJS son formas de llamar este framework de javascript de código abierto que está basado en Modelo Vista Controlador (MVC), el fuerte de este framework es crear páginas sin recargar , es decir… generalmente en una página web, cada vez que le damos click a un enlace, este manda una petición y recarga la página y descarga lo que se le pidió.
Con angular es distinto, ya que cuando entras a esta página, se descarga al inicio y no recarga cada vez que le damos click a un enlace, esto hace páginas mas fluidas y dinámicas.
ahora hablando de programación:
Angular crea un proyecto muy fácil de mantener, Teniendo el html de un lado, las acciones por otro, y lo que trae de la base de datos en otro gracias al patrón de arquitectura
Recordemos que :
- Modelo -> Información que usaremos
- Vistas -> todo el HTMLde nuestra página
- Controlador -> Intermediario entre la vista y el modelo, es aquel que hace el llamado al modelo y llena la vista
para mayor información dejare un enlace aquí.
Hay que recordar que Google mantiene este proyecto y es parte de que la comunidad confié en usarlo.
Ok y entonces ….. ya quedo claro que es angular pero en la actualidad (marzo 2017) Existen 2 versiones de este framework, que son MUY DIFERENTES.
Angular 1 tiene una comunidad muy grande , que de echo piden que sigan dando mantenimiento al proyecto, y prácticamente si sabes javascript solo aprendes los patrones mvc que usan y podrás programar en angular, mientras que Angular 2 debes aprender TypeScript para poder iniciar, personalmente te recomiendo que si eres novato y quieres iniciar con Angular , Angular 2 es tu mejor opción
Conclusión :
ventajas de Angular 2 :
- Implementa TypeScript, la ventaja es que se acerca mucho a un lenguaje convencional como c#.
- Los métodos de injección de datos son mas sencillos de usar.
- Los controladores están mas ordenados .
- Binding Sencillos.
- Los módulos resuelve un gran parte del proyecto.
- Angular-Cli hace que tu proyecto se estructure 80% mas rápido .
Desventajas de Angular 2:
- Te obliga a aprender TypeScript, al menos lo básico.
- Las Actualizaciones entre RC pueden cambiar aspectos importantes.
- Si no dominas ingles se te complicara aprender.