Julia, lenguaje del futuro.

Julia la programación en el futuro

Resumen: Se busca información sobre la necesidad de informatización de la sociedad cubana y la importancia de la utilización de tecnología de avanzadas. La creciente demanda de un poder computacional cada vez superior en tareas con un alto rigor científico, necesita de Softwares cada vez más óptimos, dentro de un amplio y variado mundo de Lenguajes de Programación. Julia, es el lenguaje que podría ofrecernos una visión anticipada de cómo se realizará la programación en el futuro.

Summary: Information on the need for computerization of Cuban society and the importance of using advanced technology Wanted. The growing demand for computing power increasingly higher tasks with a high scientific rigor, it needs optimal growing Softwares, within a wide and varied world of programming languages. Julia, is the language that could offer a preview of how the program will take place in the future.
Palabras Claves: programación, informatización, tecnologías, licencia libre.
En artículos anteriores se ha hablado de temas de programación como el paralelismo y su importancia para la realización de tareas complicadas en campos como la biotecnología, la química y otros de fuerte rigor científico, hoy retomaremos el tema pero en el campo de los lenguajes de programación.

Considerando la importancia que reviste este tema para el momento histórico que vive nuestro país, hoy sostener y desarrollar el nivel de organización, eficiencia y eficacia de la industria cubana de software, de forma tal que satisfaga las necesidades de informatización de la sociedad cubana, con un nivel de competitividad acorde a los estándares internacionales, logrando potenciar las exportaciones de software es el objetivo general de un programa que será evaluado dentro de cinco años por parte de la Dirección de Ciencia e Innovación Tecnológica, Ministerio de Comunicaciones.
Dentro de algunos de los los Objetivos específicos se proponen fortalecer la gestión del conocimiento en Tecnologías de la Información y facilitar la transferencia y asimilación de tecnologías de última generación.

Para ello se han diseñado varios proyectos y se considera oportuno referirse a uno de ellos que tiene como objetivo estratégico generar proyectos desarrolladores de modelos, procedimientos, reglas, marcos de trabajo, herramientas, etc., que conformen una plataforma de desarrollo de aplicaciones software, que permitan acometer la solución de problemas complejos usando métodos y herramientas avanzadas de ingeniería del software en sistemas de gestión de información de importancia vital para diferentes entidades del país.

Debe ser interés de cada informático mantenerse informando y estudiar todo lo relacionado con las últimas tendencias en cuanto al tema. Entorno a los lenguajes de programación podemos empezar por nombrar algunos de los que más se destacan en este año 2015:

– C#
El principal creado por Microsoft para el desarrollo de herramientas y servicios para sistemas Windows.

– PHP
Sigue siendo el rey a la hora de crear aplicaciones webs que necesita trabajar con bases de datos. Es un lenguaje muy potente y algunas de las plataformas más utilizadas hoy en día como puedes ser WordPress o Prestashop están creadas bajo PHP.

– C++
Este lenguaje es una de las mejores opciones a la hora de crear poderosas aplicaciones de escritorio, juegos acelerados por hardware y aplicaciones que hagan uso de una memoria intensiva.

– JAVA
Uno de los lenguajes más populares de la actualidad. Con este lenguaje los desarrolladores pueden construir gran variedad de aplicaciones, desde aplicaciones para escritorio hasta portales web y aplicaciones móviles.

– JAVASCRIPT
Utilizado por la mayoría de las webs modernas para crear interactividad con los usuarios.

– PYTHON
Se puede decir que PYTHON permite hacer casi de todo, desde crear interfaces de usuario a crear aplicaciones web, realizar análisis de datos… Sea cual sea el problema, PYTHON ofrece la posibilidad de solucionarlo.

– C
A pesar del paso del tiempo, C sigue siendo un lenguaje muy importante ya que se trata de un lenguaje pequeño, rápido y muy poderoso que permite desarrollar software que puede ser embebido dentro del sistema o trabajar directamente con el kernel.

– Visual Basic
Se ha convertido en un lenguaje clave para las plataformas .NET, que permite crear aplicaciones de apoyo para cualquier negocio y automatizaciones para aplicaciones Office como Excel.

– R
Un lenguaje que está adquiriendo gran relevancia debido al bum del Big Data. Gracias a R se puede realizar cualquier tipo de análisis de la información que tengamos almacenada.

– Swift
A penas tiene un año de edad y ya se ha convertido en todo un referente para los desarrolladores a la hora de crear aplicaciones para los sistemas Mac e iOS de Apple. Se caracteriza por una sintaxis muy sencilla.

– SQL
Hablar de lenguaje para trabajar con base de datos es hablar de SQL, un lenguaje que permite crear consultas para manejar los datos almacenados en complejas bases de datos.

– Ruby
Se trata de un lenguaje muy potente y fácil de aprender que permite desarrollar grandes proyectos en muy poco tiempo. Muchas grandes aplicaciones de la red ya apuestan por este lenguaje para su funcionamiento.

– Objective-C
Si estás interesado en hacer una aplicación para iOS es necesario que aprendas este lenguaje de programación

– Perl
Se trata de un lenguaje muy poderoso y fundamental para combatir los ciberataques, siendo considerada como una herramienta clave para cualquier profesional de las TI.

– .NET
Aunque no es un lenguaje en sí mismo, .NET es una plataforma clave de Microsoft para la nube y el desarrollo de aplicaciones. Además debido a las recientes iniciativas de código abierto de Microsoft, .NET está llegando a sitios donde antes era impensable llegar como son las plataformas de Google y Apple.

Todos estos Lenguajes son buenos, pero fueron diseñados con diferentes objetivos y se caracterizan por ser mejores en algo, las tareas científicas demanda cada vez de un poder computacional superior y en ocasiones hay que necesitar las potencialidades de más de un lenguaje.
Ejemplo Ruby y Python son lenguajes de propósito general, preferidos por los desarrolladores web, ya que permiten una codificación más rápida y fácil. Pero no son tan rápidos como C o Java.

Sería muy bueno construir un lenguaje único que haga todo bien.
Un grupo de programadores internacional está desarrollando un lenguaje de programación que comprendería las mejores características de los lenguajes existentes más populares y utilizados.
Julia, es el lenguaje que podría ofrecernos una visión anticipada de cómo se realizará la programación en el futuro. Es un lenguaje dinámico flexible, apropiado para cálculo científico y numérico, con un rendimiento comparable a los tradicionales lenguajes de tipo estático.
Fue ideado por Stefan Karpinski, un graduado de la Universidad de California, cuando estaba diseñando una herramienta de simulación de redes que requería el uso de cuatro lenguajes de programación diferentes. Además de que ninguno de los lenguajes era suficiente para realizar la tarea, usar cuatro lenguajes complicaba todo el proceso, desde escribir el código hasta depurarlo y actualizarlo.

Se pueden lanzar 100 procesos en Julia, ejecutarlos en diferentes máquinas y obtener los resultados de esas máquinas. Eso es un trabajo tedioso en Java, pero para Julia es relativamente sencillo. Este es un problema común para los programadores, así como para los matemáticos, los investigadores y los informáticos. Karpinski, junto con su compañero de universidad Viral Shah y el informático del MIT Jeff Bezanson, decidieron resolverlo diseñando un nuevo lenguaje que fuera compatible con prácticamente cualquier tarea. Shah le presentó a Jeff Bezanson, un científico computacional (computer scientist) del MIT que recientemente había realizado un estudio sobre el diseño de los lenguajes de programación y había llegado a la conclusión de que las ventajas y desventajas inherentes a la mayoría de los lenguajes eran evitables. “Se hizo evidente que muchos de ellos se habían diseñado al azar“…
La peculiaridad de Julia consiste en que prescinde de esta etapa intermedia, compilando directamente al código de la máquina. Además, los programadores sostienen que Julia tiene habilidades matemáticas y estadísticas para servir de alternativa a Hadoop un sistema de computación ampliamente utilizado elaborado por Yahoo y Facebook, por lo menos en algunos casos. Hadoop permite tomar una gran cantidad de trabajo, dividirla en muchos trabajos pequeños, y repartirlos entre cientos de máquinas. Esto no es otra cosa que páralelizar una tarea.

La primera versión de Julia, de código abierto, apareció en 2012. Desde entonces el lenguaje sigue evolucionando.
Sus características son:
• Posibilidad de definir el comportamiento de una función con una combinación de tipos de argumentos
• Sistema dinámico de tipos: tipos para documentar, optimizar y ejecutar rutinas
• Buen desempeño, el cual se aproxima (estadísticamente) a lenguajes como C
• Manejador de paquetes interconstruido
• Macros como en LISP y otras metafacilidades de programación
• Se pueden llamar funciones de Python vía llamadas a PyCall
• Llamada a funciones de C directamente. No se necesita nada más
• Capacidades poderosas de Shell para manejar otros procesos
• Diseñado para computación distribuida y en paralelo
• Corrutinas
• Tipos definidos por el usuario que son rápidos y compactos como si fuesen interconstruidos
• Generación automática de código especializado, eficiente, de acuerdo al tipo de argumentos que de pasan
• Conversiones elegante y extensibles así como promoción de tipos numéricos y otros tipos
• Soporte para Unicode
• Licencia MIT : libre y de código abierto accesible para el mayor número de desarrolladores y trabajos derivados posible, no importa que el código se pueda utilizar en software propietario, MIT / X Window System license (llamada así debido a que es la licencia bajo la cual el Massachusetts Institute of Technology lanzó el código original del sistema de ventanas X). El mensaje básico de esta licencia es “Eres libre para usar este código como quieras.”. Es compatible con la GNU GPL, y es corta, sencilla, y fácil de entender:
Dos características se consideran importante destacar ya que esta diseñado para computación paralela que es una técnica novedosa capaz de garantizar la demanda cada vez mas creciente de la velocidad de computo y la mas impotente, su licencia libre que permite el uso de plataformas de código abierto en consonancia con un proceso que cada vez es más cotidiano y va alcanzando mayor popularidad a nivel mundial, pues constituye una alternativa para el desarrollo de la informática, tanto en el marco público como en el privado. La migración al software libre es una vía factible para Cuba por ser un país bloqueado y del tercer mundo, por lo que constituye una alternativa para superarse económicamente”.
Tendrá Julia como lenguaje de programación éxito, los programadores darán la última palabra ya que puede suceder que por comodidad sigan usando lenguajes más que probados. Desde luego entre tantos lenguajes, hay para todos, pero Julia tratará puede madurar y convencer a los programadores de sus bondades.

FUENTES

López Sardiñas Isabel (2015) Mincom [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://www.mincom.gob.cu/?q=node/321

López Sardiñas Isabel (2015) Julia un lenguaje con lo mejor de todos [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: https://www.unocero.com/2014/02/09/julia-un-lenguaje-con-lo-mejor-de-todos-los-mundos/

López Sardiñas Isabel (2015) Julia es la readthedocs [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://julia_es_la.readthedocs.org/es/latest/manual/introduction.html
López Sardiñas Isabel (2015) Lenguajes de programación que debes aprender en este año 2015 [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://programacion.net/articulo/los_15_lenguajes_de_programacion_que_debes_aprender_en_este_ano_2015_989

López Sardiñas Isabel (2015) Julia un lenguaje de programación para gobernarlos todos [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://geektheplanet.net/7810/julia-un-lenguaje-de-programacion-para-gobernarlos-todos.xhtml

López Sardiñas Isabel (2015) Julia, lenguaje de programación, tarea [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://actualidad.rt.com/ciencias/view/119077-julia-lenguaje-programacion-tarea

López Sardiñas Isabel (2015) Licencia MIT [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://www.opensource.org/licenses/mit-license.php

López Sardiñas Isabel (2015) Julio un lenguaje con lo mejor de todos [en línea]. [Consultado el 4 de junio de 2015]. Disponible en: http://es.wikipedia.org/wiki/Licencia_MIT

Sobre Isabel Cristina 20 Artículos
Me llamo Isabel Cristina López Sardiñas y soy especialista del Centro de Información de Mayabeque, ubicado en el Joven Club San José IV de la Provincia Mayabeque Isabel Cristina López Sardiñas

2 Comentarios

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*