0% encontró este documento útil (0 votos)
144 vistas4 páginas

Back End

Este documento resume las principales tendencias y tecnologías de desarrollo de software en 2016 y las que serán importantes en 2017. En el backend, frameworks como Node.js, Laravel, Symfony y Django siguieron ganando popularidad, mientras que Phoenix y Elixir emergieron como alternativas prometedoras. En el frontend, Angular 2, Vue.js y React se actualizaron y expandieron, además de nuevas tecnologías como Web Assembly y Service Workers.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
144 vistas4 páginas

Back End

Este documento resume las principales tendencias y tecnologías de desarrollo de software en 2016 y las que serán importantes en 2017. En el backend, frameworks como Node.js, Laravel, Symfony y Django siguieron ganando popularidad, mientras que Phoenix y Elixir emergieron como alternativas prometedoras. En el frontend, Angular 2, Vue.js y React se actualizaron y expandieron, además de nuevas tecnologías como Web Assembly y Service Workers.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

La industria del desarrollo de software continúa hacia delante con más fuerza que nunca.

En 2016 hemos visto nuevos lenguajes de programación,


frameworks y herramientas que cambian nuestra forma de trabajar haciéndonos más productivos y creativos. Es difícil hacer un seguimiento de todo
lo que es nuevo, por lo que al final de cada año te damos nuestra opinión sobre lo que es importante aprender durante los próximos doce meses. Esta
será una serie de artículos, así que estate atento los próximos días a programacion.net.

Backend
Para el backend existen un montón de opciones, todo depende del lenguaje de programación o de las necesidades del rendimiento. Una tendencia a
la alza es alejarse del backend, convirtiendo esa capa en una API consumida por el frontend y las aplicaciones móviles. Sin embargo, utilizar un
framework es a menudo más simple y más rápido, y sigue siendo una opción válida para un montón de aplicaciones web.
Node.js es la principal manera de ejecutar JS fuera del navegador. Ha tenido varias actualizaciones este año, que aumentaron su rendimiento y
ampliaron su soporte a ES6. Node cuenta con frameworks para la creación rápida de APIs, servidores, aplicaciones de escritorio e incluso bots, y una
vasta comunidad que crea todo tipo de módulos imaginables. Puedes echarle un vistazo a estos frameworks: Express, Koa, Next, Nodal.
PHP es un lenguaje web y cuenta con un gran número de frameworks donde elegir. Gracias a su excelente documentación y
características, Laravel es una excelente opción, por ejemplo. Zend Framework lanzó la versión 3, que supuso una gran actualización para este
marco orientado a los negocios. Symfony también vio un montón de nuevas actualizaciones este año, lo que la convierte también en una opción a
tener muy en cuenta.
Para Ruby, el framework Rails es definitivamente un must. La versión 5.0 fue lanzada este 2016, con soporte para Web Sockets, modo API y mucho
más. Sinatra también es una muy buena opción para aplicaciones pequeñas, y su versión 2.0 se espera para algún momento de 2017.
Si eres de Python, definitivamente debes echar un vistazo a Django y a Flask. Django 1.10 se lanzó en agosto introduciendo la búsqueda por texto
completo en Postgres y muchas más características.
El ecosistema de Java también cuenta con frameworks populares donde elegir. Play y Spark son dos opciones sólidas, y como bonus, decir que
también pueden utilizarse con Scala.
Para los entusiastas también está 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 lenguajes que te gustaría aprender en 2017, prueba Phoenix.

Frontend
La web introdujo dos avances muy importantes recientemente: el Web Assembly y los Service Workers, los cuales han abierto la puerta al desarrollo
de aplicaciones web rápidas y eficientes. Los Service Workers, en particular, son la tecnología que lleva a cabo las aplicaciones web progresivas y
cuentan con soporte para Notificaciones en la web, con más APIs a a las que seguir en el futuro.
ANGULAR.JS 2 FUE LANZADO ESTE AÑO. EL FRAMEWORK ES RESPALDADO POR GOOGLE Y MUY POPULAR ENTRE PEQUEÑAS
EMPRESAS Y GRANDES EMPRESAS. CUENTA CON UN GRAN NÚMERO DE CARACTERÍSTICAS QUE PUEDEN IMPLEMENTAR DE TODO,
DESDE APLICACIONES WEB, PASANDO POR APLICACIONES DE ESCRITORIO E INCLUSO, PARA MÓVILES. EL FRAMEWORK ESTÁ
ESCRITO EN TYPESCRIPT, UN LENGUAJE ALTAMENTE RECOMENDADO PARA DESARROLLAR APLICACIONES. POR ESO CREEMOS QUE
APRENDER ANGULAR 2 EN 2017 SERÁ UNA BUENA INVERSIÓN.
Vue.js también vio su versión 2.0 este año. Coge lo mejor de Angular, React y Ember, y lo mete en un paquete fácil de usar. También es un poco más
ligero y rápido que los dos primeros. Te sugiero que lo pruebes este año.
Ember es otra opción sólida para un framework de JavaScript. Soporta data-bindings, plantillas auto-actualizables, componentes y renderizado del
lado del servidor. Una gran ventaja sobre sus competidores, es que es mucho más estable. Los erroes y bugs son muy poco frecuentes y la
comunidad valora la compatibilidad con versiones anteriores. Esto hace que el framework sea una buena opción para aquellas aplicaciones que vayan
a contar con una vida larga.
Otros dos frameworks que también valen la pena son Aurelia y React. El ecosistema en torno a React ha crecido de manera complicada este último
año, por lo que es difícil recomendarlo a usuarios novatos. Pero los desarrolladores experimentados pueden combinar la librería
con GraphQL, Relay, Flux e Immutable.js para obtener una gran solución.
Ninguna compilación de frontend estaría completa sin mencionar Bootstrap. La versión 4 está actualmente en Alpha y se espera que se libere en
2017. Algunos de los cambios más reseñables son el nuevo componente card y la rejilla de flexbox, que modernizan el framework y hace que sea
más sencillo trabajar con él.
SASS y LESS siguen siendo los dos preprocesadores CSS más populares de hoy en día. Aunque vanilla CSS finalmente está recibiendo soporte
para variables, SASS y LESS son aún muy superiores con soporte para mixins, funciones y organización de código.
Nuevos profesionales digitales

¿Qué esperamos de un desarrollador Back-end?


El desarrollador Back-end es el responsable de la programación de un sitio web en todos sus componentes dinámicos ¿Qué
habilidades y conocimientos debe tener para realizar bien este trabajo?

La evolución de las plataformas y herramientas para la creación de sitios web ha expandido las posibilidades del desarrollo,
especializando sus partes y dividiendo las tareas principales del webmaster en dos grandes áreas: La interfaz visible para los
usuarios y las configuraciones “backstage” de un proyecto web. En un artículo anterior les explicamos las características del
desarrollador front-end, esta vez analizaremos las funciones del programador back-end.

Se trata de un profesional fundamental en los proyectos digitales, responsable de la programación de un sitio web y todos sus
componentes, coordinando páginas, formularios, funcionalidades, bases de datos y servidores web, evitando problemas
en las capas más profundas del proyecto. En su día a día trabaja con lenguajes del lado del servidor como PHP, Ruby,
Python y con bases de dato relacionales del tipo SQL o no relacionales como MongoDB. Además, maneja JavaScript en el lado
del browser, como un puente entre la interfaz y el motor del desarrollo, muchas veces con un framework como Zend o Cake o
un CMS como WordPress o Drupal.

¿QUÉ HABILIDADES DEBE TENER?


Contrario a lo que se podría pensar, las habilidades del desarrollador back-end están más relacionadas con la lógica y el diseño de
soluciones que con conocimientos técnicos. Para lograr un buen trabajo, el profesional debe tener:

Conocimientos técnicos:
 Capacidad de abstracción lógica: Debe visualizar el inicio y final de acciones y plantear los recorridos posibles para luego
determinar la estrategia más eficiente.

 Conocimientos y capacidad de estudio de lenguajes: Estar constantemente estudiando PHP, Ruby, Python, Perl y/o JavaScript.

 Manejo de al menos un CMS: Como por ejemplo WordPress o Drupal (en IDA nos inclinamos por el primero).

 Manejo de al menos un Framework: Como referencia tenemos Zend o Cake.

 Conocimientos básicos de configuraciones de servidores web: Para poder adaptar elementos como la capacidad de memoria,
la capacidad para subir archivos, el nivel de demanda e instalar librerías como APC (para el caché) y GD (para la manipulación de
imágenes). Si bien no es imperativo, estos conocimientos son bien valorados.

Habilidades blandas:
 Capacidad de escuchar y entender requerimientos del cliente: Debe identificar sus problemas y ofrecer soluciones, sin ponerle
barreras. En IDA sabemos que todo es posible, tal vez sea difícil y involucre tiempos y costos distintos, pero partimos de la base de
que estamos para ayudar a los clientes a llevar a cabo sus ideas, por muy complejas que sean.

 Eficiencia y proactividad bajo presión: Al ser el último eslabón de la cadena, debe enfrentar todos los problemas derivados de
las etapas anteriores, manteniendo una actitud analítica que le permita encontrar soluciones de forma ágil y creativa.

 Capacidad para trabajar en equipos multidisciplinarios: Esto le permitirá entender y aportar en todos los procesos previos a su
trabajo.

 Habilidad de ser ordenado para trabajar: Tener el hábito de comentar el código, escribir manuales y trabajar con estándares,
entendidos como acuerdos de los métodos definidos por los equipos para comunicarse con códigos y trabajar siguiendo la misma
lógica.
Además, el desarrollador debe tener conocimientos sobre Node.Js, un intérprete JavaScript del lado del servidor que permite a
los programadores construir aplicaciones altamente escalables. Esta es la nueva tendencia del desarrollo web, donde se
mezcla la interfaz con el servidor, por lo que empieza a desaparecer la diferencia entre front-end y back-end.

¿CUÁLES SON SUS RESPONSABILIDADES?


Sus tareas no se limitan simplemente a las etapas finales del proyecto digital, el desarrollador debe participar en todas las etapas
anteriores aportando con su perspectiva para evitar posibles problemas a futuro. Sus responsabilidades principales son:

 Buscar todas las soluciones posibles a un problema, analizarlas y determinar la más efectiva y eficiente. En IDA tenemos la
premisa que cuando se trata de problemas complejos, la primera solución que se encuentra es siempre la equivocada, sobre todo
si se hace contra el tiempo.

 Aplicar las mejores soluciones para programar acciones y funciones.

 Mantener siempre una actitud de autoaprendizaje y actualización de conocimientos, estudiando los lenguajes de programación
vigentes.

 Indagar las necesidades de los clientes y ofrecer las mejores soluciones en forma de proyectos factibles.

 Identificar problemas en la cadena productiva, analizando todos los procesos, para definir dónde se generó y cómo
solucionarlo.

 Proponer soluciones en etapas tempranas para evitar problemas.

CONCLUSIÓN
Un buen desarrollador back-end entenderá, tal como dice WordPress, el código como poesía. Es decir, no se quedará con lo
primero que encuentre, sino que estudiará y probará opciones para diseñar armoniosamente las soluciones que resuelvan de
forma más efectiva y eficiente los problemas planteados.

https://www.youtube.com/watch?v=QF6yts-flNI

https://www.youtube.com/watch?v=yrbEouY5cFk

java muerto: https://www.youtube.com/watch?v=r1Nd7irALYc

FRONTEND:

BootsTrap: FrameWork de maquetación responsive.

Angular y React: FrameWorks del lado cliente.


Typescript: Es como un JS mejor estructurado y tipado.

BACKEND:

PHP, RUBY, JAVA,PYTHON,C#

Python y Javascript, ambos son interpretados y multiplataforma, opensource (se puede ver como esta
desarrollado una librería u otro codigo), google usa python, ambos son de scripting, se pueden usar en
sistemas embebidos.

Npm: repositorio de código enorme para javascript.

Con JS se puede crear app de escritorio o mobiles(Facebook) pero es un poco mas complicado debido a
q su entorno por defecto es la web y las apps no son tal cual literalmente.

Python es de propósito general como hasta web, escritorio, embebidos, etc. Muchas bibliotecas.

Python es mas para Data Science como machine learnig.

Pip: Tiene paquetes de Python asi como npm es para JS.

En JS puede haber paquetes hasta 10 para lo mismo, en Python esto es mucho menos y mas especifico.

¿Qué es flask y para que?: https://www.youtube.com/watch?v=9jah5MnRXU0

También podría gustarte