jueves, 18 de mayo de 2017

C++: Multiparadigma: orientado a objetos, imperativo, programación genérica

C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al lenguaje de programación C mecanismos que permiten la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

Posteriormente se añadieron facilidades de programación genérica, que se sumaron a los paradigmas de programación estructurada y programación orientada a objetos. Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.

Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT.

Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear nuevos tipos que se comporten como tipos fundamentales.

El nombre "C++" fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C.

Kotlin on Android. Now official

Posted on  by Maxim Shafirov


Today, at the Google I/O keynote, the Android team announced first-class support for Kotlin. We believe this is a great step for Kotlin, and fantastic news for Android developers as well as the rest of our community. We’re thrilled with the opportunities this opens up.

For Android developers, Kotlin support is a chance to use a modern and powerful language, helping solve common headaches such as runtime exceptions and source code verbosity. Kotlin is easy to get started with and can be gradually introduced into existing projects, which means that your existing skills and technology investments are preserved.

https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/

Kotlin: 100% interoperable with Java™ and Android™

Statically typed programming language for modern multiplatform applications.

100% interoperable with Java™ and Android™

Kotlin es un lenguaje de programación de tipado estático que corre sobre la Máquina Virtual de Java y que también puede ser compilado a código fuente de Javascript. Su desarrollo primario es de un equipo de programadores de JetBrains con base en San Petersburgo, Rusia (el nombre proviene de la Isla de Kotlin, cerca de San Petersburgo).3 Kotlin fue nombrado Lenguaje del Mes en la edición de enero de 2012 de la revista Dr. Dobb.4 Aunque no tiene una sintaxis compatible con Java, Kotlin está diseñado para interoperar con código Java y es dependiente de código Java de la Biblioteca de Clases Java existente, tal como el Collections Framework.

https://kotlinlang.org

Android: The world’s most popular mobile OS

From phones and watches to cars and TVs, customize your digital life with Android.

Android es un sistema operativo basado en el núcleo Linux. Fue diseñado principalmente para dispositivos móviles con pantalla táctil, como teléfonos inteligentes, tablets y también para relojes inteligentes, televisores y automóviles. Inicialmente fue desarrollado por Android Inc., empresa que Google respaldó económicamente y más tarde, en 2005, compró.8 Android fue presentado en 2007 junto la fundación del Open Handset Alliance (un consorcio de compañías de hardware, software y telecomunicaciones) para avanzar en los estándares abiertos de los dispositivos móviles.9 El primer móvil con el sistema operativo Android fue el HTC Dream y se vendió en octubre de 2008.10 Los dispositivos de Android venden más que las ventas combinadas de Windows Phone e IOS.

https://www.android.com



Java is the world's #1 programming language

Java es un lenguaje de programación de propósito general, concurrente, orientado a objetos que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"), lo que quiere decir que el código que es ejecutado en una plataforma no tiene que ser recompilado para correr en otra. Java es, a partir de 2012, uno de los lenguajes de programación más populares en uso, particularmente para aplicaciones de cliente-servidor de web, con unos 10 millones de usuarios reportados.
El lenguaje de programación Java fue originalmente desarrollado por James Gosling de Sun Microsystems (la cual fue adquirida por la compañía Oracle) y publicado en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems. Su sintaxis deriva en gran medida de C y C++, pero tiene menos utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que puede ejecutarse en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora subyacente.
La compañía Sun desarrolló la implementación de referencia original para los compiladores de Java, máquinas virtuales, y librerías de clases en 1991 y las publicó por primera vez en 1995. A partir de mayo de 2007, en cumplimiento con las especificaciones del Proceso de la Comunidad Java, Sun volvió a licenciar la mayoría de sus tecnologías de Java bajo la Licencia Pública General de GNU. Otros también han desarrollado implementaciones alternas a estas tecnologías de Sun, tales como el Compilador de Java de GNU y el GNU Classpath.

https://www.oracle.com/java/index.html

Proyecto Fenix

Proyecto Fenix 

Fenix es el nombre de un proyecto GNU destinado a crear un compilador gratuito para un lenguaje derivado del que en su día Hammer Technologies creó para el desarrollo de videojuegos con su entorno DIV.

Su desarrollo ha sufrido muchos contratiempos y discontinuidades, dando fruto a diversas versiones que pese a haber sido originadas por la misma filosofía han dado como fruto versiones incompatibles entre sí y con una gama de prestaciones muy distinta.

El objetivo de esta web es reanudar el trabajo en una versión que pueda ser considerada oficial, partiendo de la actual revisión 0.71 Beta (que puede encontrarse en http://fenix.sourceforge.net) corrigiendo el máximo de errores tanto de código como de funcionamiento.

Una vez conseguida una versión 1.0 estable el proyecto tomará un nuevo enfoque, ampliar y mejorar Fenix para conseguir una herramienta realmente sencilla y potente para el desarrollo de videojuegos. 


https://es.wikipedia.org/wiki/Proyecto_Fenix

El sitio oficial del proyecto es (ya no está activo):
http://fenix.divsite.net

Bennu Game Development: The game programming language

Bennu is a high level open source game development suite which focuses on modularity and portability, making it a perfect choice for cross-platform game development.
Although officialy it is only supported on Windows, Linux and GP2X Wiz (on the right), Bennu can run on multiple other platforms, including *BSD, MacOSX and other consoles such as the Wii, Dingoo A320GP2X, or the classic Xbox.
This makes it really fun to code in Bennu: the game can be played on you computer AND your console!

Bennu -which was born as a Fenix fork- is actively mantained and makes it easy for both beginners and experienced users to create their own games.

The latest will find it particularly interesting that Bennu allows the use of third-party extensions that extend Bennu to allow such things as: networking, advanced output graphics manipulations, mpeg playback, complex text rendering, XML parsing...

In fact, most of the Bennu code runs as extensions to the main interpreter, allowing you to use only those you need (thus optimizing resource usage) or to completely replace them.


http://www.bennugd.org