MAR, 4 / AGO / 2015

Los nuevos lenguajes de programación: 3era parte

Tercera parte del repaso por los lenguajes de programación modernos y populares: sus inicios, sus antecesores, y en qué escenarios reales podemos aplicar cada uno de ellos

Esta nota fue publicada originalmente en la edición 288 de revista USERS. Podes suscribirte a la versión impresa y/o digital aquí

Por Fernando Luna

Plataforma Visual Studio

Desde el año 2001, la plataforma Visual Studio ha innovado su conjunto de lenguajes de programación migrando su estructura al paradigma .NET, e integrando nuevos jugadores bajo el ala de lenguajes de programación. En las primeras versiones de vida de Visual Studio .NET se sumó a las filas C#, mientras que, a partir de la versión 2010 de esta plataforma, sumaron al lenguaje F#.

CSharp

El lenguaje C# posee soporte para desarrollar prácticamente para todas las plataformas existentes. Su próxima versión (2015), soportará también desarrollo nativo para iOS.

C #

El lenguaje de programación C# (se pronuncia C Sharp) llegó a la plataforma .NET trayendo consigo ideas innovadoras para los desarrolladores. Orientado íntegramente a objetos y con soporte para desarrollo MVC, C# incluye en su sintaxis un balance casi perfecto entre el lenguaje C++, y el lenguaje Java.

Microsoft llevaba mucho tiempo tratando de que sus desarrolladores dejen a Visual Basic de lado, pero no lograban conseguirlo. Los primeros intentos de Microsoft para hacer saltar a sus desarrolladores hacia una plataforma superior a lo que el lenguaje Visual Basic ofertaba, fue con la presentación de Visual J++. Un lenguaje de desarrollo orientado principalmente a la plataforma web que combinada lo mejor de Java y el poder de Visual C++. Sin embargo, Microsoft no logró acaparar el interés de sus desarrolladoras para que migren sus desarrollos web hacia el mundo de Visual J++.

Por suerte, fueron los mismos desarrolladores que, luego de conocer a C# y probarlo durante unos años, decidieron migrar desde Visual Basic hacia esta plataforma por lo sólido que demostraba ser este lenguaje. Hoy en día, C# permite desarrollar soluciones para la mayoría de las plataformas: aplicaciones de escritorio, web, móviles, videojuegos, y las nuevas aplicaciones para la tienda de Windows 8.

C# ganó gran popularidad en esta última década, y finalmente se transformó en el lenguaje principal de la plataforma .NET. En los últimos años, el lenguaje de programación Unity formó sus bases para desarrollar videojuegos, tomando como base al lenguaje C#.

F #

El lenguaje de programación F# (se pronuncia F Sharp), fue creado para la plataforma .NET, con orientación multiparadigma. Posee soporte para utilizarlo con programación funcional, imperativa, y también orientada a objetos. F# nace como una variante del lenguaje de programación ML, y se distribuye como parte de la suite Visual Studio .NET, desde su versión 2010.

Fsharp

El lenguaje F# está buscando quedarse con el terreno de los servicios web y aplicaciones de consola para servidores Windows, como también con el desarrollo de librerías de propósito general.

A diferencia de otros lenguajes, F# permite expresar mediante una descripción simple la invocación a determinados objetos. De esta manera ayuda al programador a escribir menos código cuando desarrolla aplicaciones. Otra gran ventaja por sobre el resto de los lenguajes incluidos en la plataforma .NET, F# permite desarrollar de mejor manera código asincrónico y paralelo.

Esta ventaja hizo que en estos últimos años, F# comience a ser utilizado más en el desarrollo de soluciones de backend. A diferencia de los lenguajes de la plataforma .NET, F# permite desarrollar soluciones para aplicaciones de consola, librerías y tutoriales para Windows, y librerías para la plataforma Silverlight.

netbeans

Netbeans IDE es un entorno de desarrollo que soporta múltiples lenguajes de programación y marcado. Actualmente Oracle es la firma que mantiene y sponsorea este maravilloso IDE.

Objective-C / Swift

El lenguaje de programación Objective-C es un lenguaje de programación orientado a objetos creado como un superconjunto de capa superior para ser aplicado por encima del lenguaje C. Originalmente fue creado en 1980, y ya para la década del 90 fue adoptado como lenguaje de programación de NeXTstep. Está última firma, propiedad de Steve Jobs, al fusionarse con Apple Computers en 1996, tomó como base al lenguaje de programación Objective-C. Por el lado de un IDE de desarrollo, eligieron a Project Builder como proyecto Open Source, al cual transformaron luego en el entorno de desarrollo XCode.

La actual Cocoa API utilizada por Apple en OS X extendió el contenido de sus librerías hacia iOS para poder integrar a XCode el soporte necesario para desarrollar aplicaciones para iPod, iPhone y iPad.

Desde el año 2014, Apple optó por migrar al lenguaje Objective-C por el nuevo lenguaje Swift, mucho más ágil y con una curva de aprendizaje menor a Objective-C. Tanto el nuevo lenguaje Swift, como Objective-C, permiten desarrollar aplicaciones nativas para las plataformas OS X, y iOS.

yml-fbml

YML y FBML son lenguajes de marcado de alto nivel, de Yahoo! y Facebook respectivamente, que permiten interactuar con sus propios sitios web, embebiendo o programando funcionalidades específicas.

Unity

Unity y Unity3D es un motor de videojuegos comercial, desarrollado específicamente para ser explotado en la creación de juegos de video en dos y tres dimensiones para diferentes plataformas actuales (Windows, web, móviles, y videconsolas).

unity

El IDE Unity permite el desarrollo de videojuegos de avanzada. Su soporte para Scripting, como también para el lenguaje C#, permite exportar el desarrollo hacia cualquier plataforma de gaming.

Las últimas versiones de Unity incluyen un soporte de librerías para Visual C#. Lo que significa que podremos aprovechar este lenguaje de programación para la creación de videojuegos orientados a la plataforma Windows, web y para tablets y smartphones con Windows RT y Windows Phone, respectivamente. La versión comercial de Unity permite exportar los videojuegos desarrollados para las plataformas Xbox 360, Playstation 3, Android, iOS, y hasta para Nintendo Wii.

Dentro del código de Unity podemos utilizar tanto código nativo, escrito en C#, como también código de scripting, basado en JavaScript. También soporta la codificación de videojuegos en lenguaje Boo, un port de Python.

El portal oficial del motor Unity (http://unity3d.com) nos brinda toda la información necesaria sobre este motor. Como también el acceso a manuales y documentación variada para poder adentrarnos rápidamente en el mundo de programación de videojuegos.

GML

En los últimos años, GML (Game Maker Language), cobró gran popularidad entre los desarrolladores de videojuegos casuales, como también en empresas que buscan llegar de manera rápida y concisa al creciente mercado de desarrollo de videojuegos. GML nació hace poco más de una década, como un motor de desarrollo de videojuegos visual, creado por el profesor de física Mark Overmars, de la universidad de Utrecht de los países bajos.

Game Maker fue creado utilizando el lenguaje de programación Delphi, para poder explicar la lógica y física utilizada en los videojuegos. Con los años y la evolución de este entorno de desarrollo íntegramente visual, su creador formó la empresa YoYo Games, e integró dentro del IDE Game Maker el lenguaje GML.

gml

El lenguaje GML evolucionó de tal manera que hoy, desde Game Maker Studio, podemos crear soluciones increíbles de la talla de Doom o Angry Birds, con muy poco esfuerzo.

 

Este lenguaje de programación desarrolló un estándar propio, pudiendo utilizarse un código para desarrollar funciones o acciones dentro del videojuego, con un estilo similar a C++ y Visual Basic. Esto permite que tanto programadores de la era Basic, como también desarrolladores del lenguaje C, C++, Objective-C, o C#, puedan adaptarse rápidamente a la sintaxis de GML.

Actualmente Game Maker Studio, la última versión del IDE de desarrollo, incluye soporte para crear y exportar los videojuegos hacia todas las plataformas existentes (Windows, Linux, OS-X, Web, iOS, Android, Xbox y Playstation, entre otras).

En la web oficial (www.yoyogames.com) encontrarán toda referencia posible para explotar a fondo este fantástico lenguaje de programación.

Cocos

Cocos2D y Cocos3D conforman un framework y un lenguaje de programación (basado en Python), para crear juegos en 2D, 3D y presentaciones gráficas animadas. Este framework permite que, con muy pocas líneas de código, podamos construir videojuegos o aplicaciones con soporte interactivo para las plataformas móviles.

En principio, Cocos fue orientado al desarrollo de videojuegos para iOS, pero con el tiempo se extendió la plataforma. Actualmente podemos cubrir el mercado de iOS, Android, Xbox y Python. También se crearon extensiones, que permiten desarrollar videojuegos con código JavaScript, pudiendo ejecutar los mismos en plataformas web.

cocos

Cocos 3D y Cocos 2D poseen un código fácil y potente a su vez, que permite desarrollar aplicaciones interactivas y videojuegos para múltiples plataformas.

 

La plataforma Cocos2D y Cocos3D es la mejor elección para quienes buscan integrarse rápidamente en el mercado de los videojuegos, gracias a su creciente comunidad y soporte oficial. En la web http://cocos2d.org encontrarán todo lo referente para iniciarse. Mientras que quienes ya poseen conocimientos o buscan desarrollar videojuegos en 3D, pueden dirigirse a: www.cocos3d.org. Cocos 3D posee soporte para integrarse a XCode y Swift, y desarrollar videojuegos móviles para la plataforma iOS, desde el entorno de desarrollo propio de OS-X.

11 Comments

  1. Guillermo Fontana dice:

    Una tortura leer el texto. Si pusiéramos las letras en una licuadora y volcárams el resultado aquí se podria leer mejor.

    Ejemplo: Su Scripting Soporte para, también párr ????

    WTF?

    No es solo copiar y pegar muchachos, alguien lo tiene que leer para ver cómo queda.

  2. Adrian dice:

    horrible la traduccion, desprolija una pena ya que el tema es mas que interesante, muy poco profesional

  3. Pablo Ponte dice:

    Cabeza….Google Translator for the win??? ponganse las pilas muchachos, la verdad tenia ganas de leer el articulo porque los anteriores me parecieron interesantes, pero a este lo tuve que dejar de leer a los pocos segundos….

  4. GAKSoftware dice:

    ¿Alguien que escriba plasmando sus conocimientos?. O que por lo menos no tenga miedo de leer, así se corrige y disimula el copy & paste

  5. Montocho dice:

    que paso muchachos redactores???

  6. elio dice:

    “se PRONUNCIA Fa sostenido” Me mató.

  7. Nelson dice:

    Aparte de la redacción el contenido de esta serie de artículos no es muy coherente tampoco, por ejemplo visual estudio es un IDE y objetive-c y swift son dos cosas separadas.

  8. Marcelo Torres dice:

    Esto les pasa por andar buscando redactores baratos en la pagina. Media pila, después se quejan si los critican.

  9. Franlu dice:

    Estimados @redusers.
    Estuve constatando el texto de esta tercera parte con el publicado en la revista, y me parece que el motor del blog les ha jugado una mala pasada cuando levantaron el texto original desde algún archivo intermedio, o desde la base de datos donde guardan el contenido de las revistas.

    Revisen por las dudas, pero parece que algo de eso pasó. No es la primera vez que veo que algo así ocurre, por culpa de algún motor de blogs.

    Un saludo,

  10. Andres dice:

    Traductor automático + redactor a punto de sufrir un ACV ?

  11. Adrian Fernandez dice:

    Por Dios! El redactor parece que le hizo copy-paste al artículo original en otro idioma, lo pasó por el google translator y le volvió a hacer copy-paste hacia aquì.
    No Se Entender Cinco Ni Seguidas Palabras.