Angular

> Temas > Angular
Editar

Esta es la página de inicio del framework Javascript Angular, una de las herramientas más poderosas para desarrollar aplicaciones frontend modernas.

Angular es un framework Javascript potente, muy adecuado para el desarrollo de aplicaciones frontend modernas, de complejidad media o elevada. El tipo de aplicación Javascript que se desarrolla con Angular es del estilo SPA (Single Page Application) o también las denominadas PWA (Progressive Web App).

El framework Angular ofrece una base para el desarrollo de aplicaciones robustas, escalables y optimizadas, que promueve además las mejores prácticas y un estilo de codificación homogéneo y de gran modularidad.

Aunque ofrece principalmente una base para el desarrollo de la parte frontal, la programación Javascript del lado del cliente, también aborda técnicas de desarrollo de la parte del backend, para la implementación del Server Side Rendering. A esta parte se le llama Angular Universal.

El desarrollo en Angular se hace por medio de TypeScript (aunque también se podría desarrollar con Javascript, todas las guías y recomendaciones se basan en usar TypeScript), un superset del lenguaje Javascript que ofrece muchas herramientas adicionales al lenguaje, como el tipado estático o los decoradores.

Más información:

Desarrollo de aplicaciones SPA

Angular es un framework especializado en la creación de aplicaciones SPA, Single Page Application. Este tipo de aplicaciones se muestra en una sola página y sus pantallas son simplemente vistas que se van intercambiando. con ello se obtiene una mejor experiencia de usuario, más parecida a la de aplicaciones de escritorio.

Para conseguirlo angular ofrece un sistema de routing entre sus herramientas. Es altamente configurable y muy potente, qué se puede configurar fácilmente con una estrategia de Lazy loading. Así se obtienen aplicaciones muy optimizadas, que cargan muy rápido, tanto en el primer acceso como cuando se acceden a otras pantallas, o páginas, de la aplicación.

Editar

Angular y TypeScript

Angular es un framework Javascript, pero usa TypeScript para la programación. TypeScript es una extensión del lenguaje Javascript, que agrega características importantes para las aplicaciones empresariales, como el tipado de datos o los decoradores.

En el lanzamiento del framework Angular, el sucesor de AngularJS, se gereraron diversas dudas en la comunidad por el uso de TypeScript e incluso varias personas intentaron usar Angular solo con Javascript nativo, evitando usar TypeScript. Hoy esta polémica podemos decir que está completamente zanjada, ya que se ha demostrado la utilidad de TypeScript a la hora de mantener el código de las aplicaciones y obtener ayudas del editor en la etapa de desarrollo, junto con una detección temprana de los errores. En resumen los desarrolladores de Angular han adoptado este superset de Javascript y han valorado positivamente todo lo que aporta TypeScript en su trabajo diario como desarrolladores.

La compilación de TypeScript a Javascript compatible con los navegadores se realiza por medio de las herramientas del Angular CLI, por lo que no agrega ninguna dificultad en el flujo de desarrollo.

Editar

Cuándo usar Angular

Angular es un completo framework Javascript con el que desarrollar aplicaciones frontend modernas. Angular ofrece toda una serie de módulos habituales en el desarrollo de proyectos web que no tienes que desarrollar desde cero y que, a la vez, permiten organizar un proyecto de una manera óptima, mantenible y escalable. Además contiene toda una serie de herramientas para facilitar el inicio y desarrollo, así como la producción de las aplicaciones.

Todas las ventajas que nos ofrece Angular las podremos valorar más positivamente en el contexto de una aplicación web mediana o grande. Este tipo de aplicaciones son las que agradecerán más todas las utilidades que nos ofrece Angular y las prácticas que promueve para el desarrollo de calidad.

Angular no es adecuado por tanto para todo tipo de proyectos. Por ejemplo, un sitio web con WordPress (por poner un ejemplo claro) no sería un buen candidato para incluir Angular en el stack de tecnologías. Hay que darse cuenta que Angular no es una librería para el desarrollo de componentes dinámicos de interfaz gráfica, sino todo un franework para el desarrollo de una aplicación completa y más o menos compleja.

El tipo de aplicaciones que son adecuadas para Angular son las SPA y las PWA. Pero incluso, si se desea hacer una aplicación pequeña con una funcionalidad muy limitada es posible que un poco de Javascript y alguna micro-librería nos solucione las necesidades, por lo que quizás Angular tampoco sería la solución, a no ser que el desarrollador o el equipo de desarrolladores esté muy familarizado con la herramienta, en cuyo caso sacarán partido a Angular por el simple hecho de que ofrece muchas piezas ya completamente desarrolladas y permite un flujo depurado de desarrollo.

Editar

Angular vs AngularJS

Ya no es habitual, pero a veces se confunde Angular con AngularJS. AngularJS fue el precursor de Angular, pero aparte de eso no tienen mucho que ver. Aunque Angular es la versión evolucionada de AngularJS, debemos entender que son dos frameworks distintos.

  • Angular es un framework avanzado, que aglutina todas las novedades y mejores prácticas en cuanto a desarrollo de SPA y PWA.
  • AngularJS es un framework antiguo, con el que se pueden realizar SPA también pero que no ofrece tantas herramientas para el desarrollo de PWA y cuya base de código no permite ni mucho rendimiento ni una potente organización.

Hoy sin duda no tiene mucho sentido desarrollar con AngularJS, a no ser que heredes un proyecto construido con este framework y no te quede más remedio que mantenerlo. Dicho sea de paso, lo ideal sería pensar en migrarlo a Angular o cualquier otror framework más actual.

Editar

¿Quieres añadir algo sobre Angular?

Crea artículos, recursos o comparte información sobre Angular

Crear un bloque

Angular

Manuales

Manual de Angular
Este es un manual de Angular que te introduce en los conceptos más básicos y te lleva paso a paso en el desarrollo avanzado de componentes, uso de directivas, servicios y mucho más.

Temas relacionados

Preguntas y respuestas

Se han recibido 10 faqs en Angular

Hacer una pregunta