¿Qué es AngularJs? Parte 1

AngularJS en su versión 1 es un framwework de Javascript para la construcción de aplicación web dinámicas, mientras que en su versión 2 (La que utilizaremos a lo largo de estos tutoriales) es una plataforma de desarrollo para crear aplicaciones web y móviles usando los estándares modernos de la web. Pero cuales son los estándares modernos de la web?.
Bien, cuando hablamos de estándares modernos de la web nos referimos concretamente a HTML5, CSS3, Javascript en su estándar más reciente llamado ECMAScript V6, y si te preguntas porqué son recientes, te darás cuenta que son tecnologías emergentes con menos de tres años. Y los navegadores web como Firefox, Chrome, Safari, e incluso IE tratan de darle mayor soporte a estos estándares.

Angular en su versión 2 incluye un conjunto de características y beneficios que permiten que desarrollemos una App desde cero hasta una versión de producción súper optimizada, estas características son:

angular11

Mobile First: Es una filosofía que obliga a pensar como funcionaría tu APP en un dispositivo móvil, antes de como se vería tu APP, en un una versión web y una pantalla “Normal”. AngularJS aporta a esto ya que posee un sistema de routing específico para mantener tu código de la aplicación liviano y los usuarios con baja banda ancha no necesitarán esperar. Además AngularJS incluye características para soportar gestos, toques y giros en el celular, siempre con un óptimo desempeño debido a que usa poca memoria.

ECMAScript V6: AngularJS está escrito sobre el último estándar de Javasctipt, que entre las nuevas muchas características que trae soporte para clases, el operador => , let y const, nuevas maneras de asignar objetos, valores por defecto, módulos y más. Si quieres ver con mas detalle en que consiste el estandar ECMAScript V6, te invito a que leas su documentación oficial.

Desarrollo Flexible: Apesar de que Angular tiene soporte para ECMAScript V6 y TypeScript, también ofrece retrocompatibilidad y funcionalidad con ECMAScript V5, Dart, CoffeeScript u otros lenguajes que compilen Javascript.

Velocidad y Desempeño: Angular ofrece la detección de Cambio 5 veces más rápido gracias a que usa el estándar mas modernos de Javascript, esto significa que si tu quieres monitorear el estado de alguna variable, Angular te permite detectar el cambio increíblemente rápido.

Simple y Expresivo: Permite escribir código limpio y natural, reduciendo la complejidad para tu equipo, haciendo el código altamente legible y entendible.

Routing Coprensivo: Transiciones entre URLS, rutas hermana y rutas anidadas.

Animaciones: AngularJS posee un conjunto de animación compatibles y detección de eventos , por defecto Angular posee una API de animación que te permite crear incluso secuencias complejas de animación.

Inyección de dependencias Jerárquica: Si esto suena muy técnico, no te preocupes después lo entenderemos, básicamente Angular posee la característica de mantener tu código modular, mantenible y extensible a través del tiempo mediante la inyección de dependencias, también te permite mediante esta característica probar tu código, de la manera correcta.

Soporte para componentes web: Ofrece la creación e integración de web components como Polymer, X-Tag y otros.

Internacionalización y Accesibilidad: Permite usar características de traducción, pluralización y reglas de género.

Recuerda que este post pertenece a una serie de tutoriales sobre AngularJS desde cero, te invito a que revises mi post

AngularJS 2 Parte 0

o si vienes siguiente mis tutoriales, que avances al siguiente

AngularJS 1 vs Angular 2? Parte 2

Escríbeme si tienes alguna duda y no olvides si te ha gustado este post compartelo!

Copyrights © 2018 Sebastian Gomez. All Rights Reserved.

Sobre mí

sebastianMi nombre es Sebastián Gómez, soy ingeniero de sistemas e Informática y Magister en Ingeniería de Sistemas de la Universidad Nacional de Colombia.

Actualmente trabajo en Globant como Web UI Developer con énfasis en aplicaciones híbridas y cross compiladas. Soy el organizador del Google Developers Group de Medellín, así que contactame si quieres dar alguna charla o participar actuamente de esta comunidad.

He participado en una Startup Colombiana llamada SponzorMe al lado de Carlos Rojas y fuí participante de Startup Chile a pesar de no haber continuado con esta startup me apasiona el emprendimiento y me gusta aconsejar y ayudar startups como mentor técnico. También he trabajado en empresas Americanas como StudioHyperset en Estados Unidos y para Measured Medium. Mi interés y mi experiencia es el desarrollo de web y móvil full stack como Front-end con Javascript. Me apasiona desarrollar software, escribir código y enseñar lo que aprendo día a día.

También he trabajado como profesor en diferentes universidades en Medellín Colombia, con tematicas relacionadas con la Inteligencia Artificial, Bases de datos, programación orientada a objetos, minería de datos, desarrollo de software, desarrollo móvil y desarrollo web.

Me encanta escribir código rápido y prototipar de una manera accelerada si quieres ver que hago día a día puedes darle un vistazo a mi codepen:  https://codepen.io/seagomezar/.

Todos los días trato de crear o participar en proyectos, la mayoría open source, así que puede chequear mi GitHub:  https://github.com/seagomezar.

Mi áreas de investigación académica son: Ingeniería de software, Ingeniería de requisitos, procesamiento del lenguaje natural, Ontologías, Bases De Datos,  Machine Learning, Seguimiento de trayectorias y Modelamiento matemático de formaciones.

Estas son algunas de mis publicaciones académicas mas recientes: