Bloguero-ec

Codigo Fuente, programación, Diseño Web

Lenguajes Frameworks y herramientas que usted debe aprender en 2017

diciembre 15, 2016
codigo-fuente,framework,noticias



La industria del desarrollo de software continúa su marcha implacable hacia adelante. En 2016 vimos nuevos lanzamientos de lenguajes frameworks y herramientas populares que nos dan más poder y cambian nuestra forma de trabajar. Es difícil hacer un seguimiento de todo lo que es nuevo, por lo que al final de cada año le damos nuestra opinión sobre lo que es importante y lo que debe aprender durante los próximos doce meses.

Tendencia

Aplicaciones web progresivas

En 2016 vimos el surgimiento del concepto de aplicación web progresiva. Representa aplicaciones web que funcionan sin conexión y ofrecen una experiencia nativa, similar a una aplicación. Pueden añadirse a la pantalla de inicio de su dispositivo inteligente e incluso pueden enviarle notificaciones push, superando la brecha con las aplicaciones móviles nativas. Creemos que en 2017 los PWA van a ser aún más importantes y vale la pena investigar.

La moda de los Bots

Todo el mundo está hablando de bots en este momento. Desde plataformas para ejecutarlas, hasta frameworks para construirlas, la comunidad está llena de actividad . Los robots son las nuevas aplicaciones móviles, y si te apresas puedes coger la ola mientras todo el mundo está emocionado. Una vez que la novedad se desvanezca, los robots estarán probablemente relegados a un papel aburrido como el soporte automatizado al cliente.

Los Frameworks Frontend Toman Fuerza

En la comunidad de JavaScript tenemos un sin numeros  de frameworks y herramientas, con los nuevos que nacen casi cada semana. Hasta hace poco, la expectativa era que las viejas herramientas serían reemplazadas por las nuevas, pero esto no es lo que vimos en 2016. En cambio, vimos los frameworks populares intercambiando ideas e incorporando las innovaciones presentadas por los recién llegados. Así que en 2017 no importará mucho cuál de los principales framework de JS que elija, sus características son en su mayoría comparables.

La nube

Las empresas y los desarrolladores de todo el mundo están abrazando “la nube”. Esta es una infraestructura de computadoras virtualizadas que está disponible bajo demanda y totalmente configurable desde un panel de control. Los tres grandes proveedores de cloud son AWS, Google Cloud y Azure. Gracias a su actual competencia los precios han estado cayendo, lo que lo hace dentro de los presupuestos de las empresas más pequeñas y desarrolladores individuales. Familiarizarse con el flujo de trabajo en la nube sería una buena inversión para 2017.

Aprendizaje Automático

El aprendizaje automático  ha explotado en popularidad durante los últimos doce meses. Y con el histórico AlphaGo vs Lee Sedol partido en marzo, entró en la corriente principal. Los sistemas informáticos inteligentes que aprenden de los datos sin procesar están revolucionando la forma en que interactuamos con nuestros dispositivos móviles. Por lo que parece, el aprendizaje automatico será un factor aún mayor en 2017.

Lenguajes de programación.

languagesJavaScript continúa su increíble ritmo de innovación. Catalizado por los horarios de lanzamiento rápido de los navegadores web, el estándar JS se actualiza cada año. La próxima edición, ES2017, se espera que finalice a mediados de 2017. Traerá la característica de sueño de muchos desarrolladores de JS  аndync/аwait para trabajar con funciones asíncronas. Y gracias a Babel, puede escribir ES2017 en todos los navegadores hasta hoy.

TypeScript 2.1 fue lanzado a finales de 2016, trayendo async/await para los viejos navegadores y la inferencia mejorada del tipo. TypeScript es un lenguaje escrito de forma estática que compila JavaScript. Añade características de gran alcance como un modelo OOP clásico y tipografía estática opcional para hacer bases de código grandes más fáciles de mantener. Es el idioma preferido para escribir aplicaciones de Angular 2, y le recomendamos probarlo.

C # 7.0 se espera en 2017 y mejorará un lenguaje ya excelente. Microsoft sorprendió a todos cuando introdujeron el editor de código de Visual Studio de código abierto y .Net Core. Ambos se ejecutan en Linux, Windows y macOS y le permiten escribir aplicaciones rápidas y performant en C # (leer más aquí). Una comunidad vibrante se está formando alrededor de ambas herramientas, y estamos seguros de que hay un año emocionante por delante de ellos.

Python 3.6 fue lanzado en diciembre. Se está consolidando su lugar como el lenguaje de script de elección para los desarrolladores, profesionales y científicos. Es conveniente para la automatización, el desarrollo de la tela, el aprendizaje de máquina y la computación científica. La división de Python 2/3 ha sido una lucha de muchos años para la comunidad, pero en estos días puedes elegir con confianza 3 y disfrutar de la asistencia completa de la libreria. Para aquellos que necesitan un rendimiento extra, pueden echar un vistazo a PyPy, una alternativa JIT habilitado Python runtime.

Ruby 2.3 fue lanzado a principios de este año con una serie de mejoras en el rendimiento. Ruby es también una buena opción como lenguaje de scripting de propósito general, pero brilla cuando se combina con Rails. La iniciativa Ruby 3 × 3 fue anunciada, que intentará hacer que la próxima versión de Ruby 3 sea 3 veces más rápida que la versión actual, abriendo las puertas al uso de Ruby en más contextos.

PHP 7.1 fue lanzado en diciembre, y trae mejoras menores al lenguaje. Esto se basa en las mejoras de rendimiento principales que se tuvieron en la versión 7.0 el año pasado, convirtiendo a PHP en una plataforma rápida para la construcción de aplicaciones web. Recomendamos a PHP el camino correcto para las buenas prácticas y una toma moderna en la construcción de aplicaciones web en el idioma.

Java 9 se espera en 2017 y será bienvenido con nuevas características como una revisión para la evaluación de código, soporte HTTP 2.0 y nuevas API. Hay una fuerte demanda de talentosos desarrolladores Java y una amplia gama de proyectos interesantes que utilizan el lenguaje. Si Java no es tu cosa, hay un número de lenguajes basados en JVM como Kotlin y Scala que puedes comprobar.

Swift 3 fue lanzado a principios de este año. Esta es la visión de Apple para un lenguaje de programación moderno que facilita el desarrollo de aplicaciones en iOS y macOS. Swift es de código abierto y ha atraído a una gran comunidad. La versión 4 está prevista para 2017, lo que mejorará el idioma e introducirá API de servidor, lo que lo convierte en una buena opción para escribir aplicaciones web y backends.

Si está buscando algo más emocionante, puede probar Crystal y Elixir, que combinan una sintaxis similar al rubí con un rendimiento superior. O usted puede mirar en un lenguaje funcional como Haskell o Clojure. Dos otros idiomas rápidos son Rust and Go que recomendamos.

Aprenda uno o más de estos: JS (ES2017), TypeScript, C #, Python, Ruby, PHP7, Java / Kotlin / Scala.

Frontend

frontendLa plataforma web hizo dos avances importantes recientemente – Asambleas Web y Trabajadores de Servicios. Abrieron las puertas para aplicaciones web rápidas y eficaces que colman la brecha con las aplicaciones compiladas nativas. Los Trabajadores de Servicios en particular son la tecnología habilitadora para las Aplicaciones Web Progresivas y brindan soporte para Notificaciones a la plataforma web, con más APIs a seguir en el futuro.

Angular.js 2 fue lanzado este año. El framework es respaldado por Google y es muy popular entre las empresas y las grandes empresas. Tiene un gran número de características que hacen que la escritura de todo, desde la web a las aplicaciones de escritorio y móviles es posible. El framework está escrito en TypeScript, que también es el lenguaje recomendado para escribir aplicaciones. Hay mucho por leer, pero pensamos que aprender Angular 2 en 2017 sería una buena inversión.

Vue.js también vio su versión 2.0 este año. Presta las buenas ideas de Angular, React y Ember, y las coloca en un paquete fácil de usar. También es más rápido que los dos primeros. Sugerimos que lo pruebes este año nuevo.

Ember es otra opción sólida para un framework de JavaScript. Es compatible con los enlaces de datos, las plantillas de actualización automática, los componentes y la representación del lado del servidor. Un beneficio que tiene sobre sus competidores, es que es más maduro y estable. Los cambios de ruptura son mucho menos frecuentes y la comunidad valora la compatibilidad hacia atrás. Esto hace que el framework sea una buena opción para aplicaciones de larga vida.

Otros dos framework que valen la pena son Aurelia y React. El ecosistema en torno a React ha crecido considerablemente más complicado en el último año, por lo que es difícil de recomendar para los principiantes. Pero los desarrolladores experimentados pueden combinar la biblioteca con GraphQL, Relay, Flux e Immutable.js en una fullpack solución.

Ninguna compilación de frontend estaría completa sin mencionar Bootstrap. La versión 4 está actualmente en Alpha y se espera una liberación en 2017. Los cambios notables son el nuevo componente de tarjeta versátil y la rejilla de flexbox , que modernizan el framework y hacen una alegría trabajar con él.

SASS y LESS siguen siendo los dos preprocesadores CSS más populares de hoy. Aunque CSS de vainilla finalmente está recibiendo soporte para variables, SASS y LESS son aún superiores con su soporte para mezclas, funciones y organización de código.

Le sugerimos aprender: Angular 2, Vue.js, Ember, Bootstrap, LESS/SASS.

Backend

backendHay un montón de opciones para el backend, todo se reduce a su preferencia de un lenguaje de programación o necesidades específicas de rendimiento. Una tendencia en curso en el desarrollo web es la lógica de negocio para alejarse del backend, convirtiendo esa capa en una API que es consumida por el frontend y las aplicaciones móviles. Sin embargo, un framework  completo es a menudo más simple y más rápido de desarrollar, y sigue siendo una opción válida para un montón de aplicaciones web.

Node.js es la principal forma de ejecutar JS fuera del navegador. Vio muchos lanzamientos nuevos este año, que aumentaron el rendimiento y la cobertura agregada para la especificación entera de ES6. Node tiene frameworks para la creación de APIs rápidas, servidores, aplicaciones de escritorio e incluso robots, y una vasta comunidad que crea todo tipo de módulos imaginables. Algunos marcos que le pueden gustar mirar en: Express, Koa, Next, Nodal.

PHP es un lenguaje web en primer lugar y tiene un gran número de frameworks web para elegir. Gracias a su excelente documentación y características, Laravel ha formado una comunidad activa. Zend Framework lanzó la versión 3, que marca una gran actualización para este marco orientado a los negocios. Symfony también vio un montón de nuevos lanzamientos este año, lo que es una opción aún mejor como una solución fuulpack.

Para Ruby, el framework de Rails es la elección principal. Versión 5.0 fue lanzado en 2016, con lo que el apoyo de Web Sockets, modo API y mucho más. Sinatra también es una buena opción para pequeñas aplicaciones, con la versión 2.0 esperada en algún momento en 2017.

Python tiene su propia combinación fullpack Django y Flask. Django 1.10 fue lanzado en agosto,  introduciendo búsqueda de texto completo para Postgres y una capa de middleware.

El ecosistema de Java también tiene populares frameworks web’s para elegir. Play y Spark son dos opciones sólidas, y como ventaja también pueden utilizarse con Scala.

Para los aficionados hay también Phoenix, que está escrito en Elixir y trata de ser una característica completa alternativa a Rails con un rendimiento superior. Si Elixir es uno de los idiomas que te gustaría aprender en 2017, prueba a Phoenix.

Bases de Datos

databasesPostgreSQL vio dos lanzamientos enteros este año – 9.5 y 9.6. Ellos trajeron la funcionalidad de UPSERT que tanto conocemos de MySQL, mejor búsqueda de texto completo y mejoras de velocidad gracias a consultas paralelas, replicación, agregación, indexación y clasificación más eficientes. Postgres se utiliza para conjuntos de datos gigantescos de terabytes, así como para aplicaciones web ocupadas, y estas optimizaciones son bienvenidas.

MySQL 8.0 será el próximo lanzamiento principal de la base de datos. Se espera que en algún momento en 2017 y traerá muchas mejoras al sistema. MySQL sigue siendo el sistema de gestión de base de datos más popular y toda la industria se beneficia de estas nuevas versiones.

Para los fans de NoSQL, podemos recomendar CouchDB. Es un sistema de almacenamiento JSON rápido y escalable que expone una API HTTP REST-ful. La base de datos es fácil de usar y ofrece un gran rendimiento. PouchDB es una contraparte espiritual de CouchDB que funciona completamente en el navegador y puede sincronizarse con Couch. Esto le permite usar Pouch en una aplicación web lista sin conexión y obtener la sincronización automática una vez que la conectividad a Internet esté disponible.

Redis es nuestra tienda de valor clave favorita. Es pequeño, rápido y versátil. Puede utilizarlo como una alternativa inteligente de memcache, como un almacén de datos NoSQL o un canal de mensajería y sincronización de procesos. Ofrece un gran número de estructuras de datos para elegir, y la próxima versión 4.0 tendrá un sistema de módulos y una replicación mejorada.

Aprenda uno de estos: Postgres, MySQL, CouchDB, Redis.

Herramientas

toolsYarn es un gestor de paquetes alternativo para Node.js que es desarrollado por Facebook. Se trata de una actualización de la herramienta de línea de comandos npm y proporciona instalaciones más rápidas, mejor seguridad y creaciones deterministas. Todavía utiliza el registro del paquete del npm como su parte posterior, así que usted tiene acceso al mismo ecosistema increíble de módulos del Javascript. El hilado es compatible con el formato package.json que npm usa, y es sólo una instalación rápida.

Los dos editores de código abierto más populares – Visual Studio Code y Atom han visto una increíble cantidad de innovación en los últimos 12 meses. Ambos proyectos se construyen utilizando tecnologías web y han atraído a grandes comunidades de fans. Los editores tienen plugins disponibles que traen sintaxis de verificación, linting y herramientas de refactorización para un gran número de idiomas.

Git es el sistema de control de versiones de código fuente más popular por ahí. No tiene servidor y puede convertir cualquier carpeta de su computadora en un repositorio. Si desea compartir código, tiene muchas opciones como GitLab, Bitbucket y Github, por nombrar algunos. Para 2017 le sugerimos que se familiarice con la línea de comandos de git, ya que será más útil de lo que usted piensa.

Las aplicaciones de escritorio no están muertas todavía. A pesar de que las aplicaciones web son cada vez más capaces, a veces se necesitan potentes capacidades y API que simplemente no están disponibles para la plataforma web. Con herramientas como Electron y NW.js puede escribir aplicaciones de escritorio utilizando tecnologías web. Usted obtiene acceso completo al sistema operativo y la amplitud de los módulos disponibles para npm.

Una tendencia reciente en la organización del equipo de software es tener desarrolladores que están a cargo de su propio despliegue de software. También llamado DevOps, esto conduce a versiones más rápidas y arreglos más rápidos de problemas en la producción. Los desarrolladores con experiencia en operaciones son altamente valorados por las empresas, por lo que la familiaridad con las tecnologías que lo habilitan va a ser una gran ventaja a partir de ahora. Algunas de las herramientas que recomendamos son Ansible y Docker. La experiencia con la línea de comandos de Linux y las habilidades básicas de administración del sistema también le servirán bien.

Pruebe uno o más de estos: Yarn, Git, Visual Studio Code, Electron, Ansible, Docker.

Tecnología

techLa nube ha ganado a toda la industria del software, con grandes empresas cerrando sus centros de datos y moviendo toda su infraestructura allí. Las tres plataformas principales son AWS, Google Cloud y Azure. Los tres cuentan con conjuntos de características potentes y en constante expansión, incluyendo máquinas virtuales, bases de datos alojadas, servicios de aprendizaje automático y más. Los precios están bajando rápidamente, y la nube está al alcance de pequeñas empresas y desarrolladores individuales. Para 2017, sería una buena experiencia de aprendizaje implementar un proyecto paralelo a uno de estos proveedores.

La Inteligencia Artificial fue la palabra de moda de 2016. El reconocimiento de voz y la clasificación de imágenes son sólo dos de las aplicaciones de la tecnología que se enfrentan a los usuarios, con máquinas que alcanzan e incluso superan el rendimiento a nivel humano. Hay un montón de startups que aplican AI y Aprendizaje de la Máquina a nuevos dominios. Y una gran cantidad de proyectos de código abierto fueron lanzados como Google Tensor Flow y Cognitive Toolkit de Microsoft. Aprendizaje de la máquina es un tema muy matemático-pesado, y para aquellos que empiezan hay cursos disponibles en línea.

La Realidad Virtual (VR) y la Realidad Aumentada (AR) han existido por un tiempo, pero finalmente la tecnología es lo suficientemente madura como para ofrecer una experiencia convincente. Facebook (Oculus Rift), Google (Daydream) y Microsoft (Windows Holographic) tienen plataformas de realidad virtual que dan la bienvenida a los desarrolladores de terceros. Los auriculares VR todavía enfrentan desafíos como eliminar las náuseas y ofrecer casos de uso convincentes fuera del juego, pero están llegando allí.

Aprenda uno de estos: despliegue en la nube, una libreria de aprendizaje automático, desarrollo de VR.

Saludos Espero les haya gustado esta publicación no se olviden compartir.

  • LuisFFer Jiménez

    excelente info! gracias

Mas Publicaciones

Siguenos




Conviertase en Editor

Te gustaría ser editor en Bloguero-ec.? Escribe tutoriales referente a programación, diseño web, CSS, entre otros y deja tu marca personal en nuestro sitio, contáctanos y empieza a editar Ya..

Compartir..!

© Copyright 2017 Bloguero-ec - Derechos Reservados

A %d blogueros les gusta esto: