Cuando hablamos de plataformas, nos referimos a una combinación de hardware y software a través de la cual se puede ejecutar una aplicación, usando el termino aplicación para referirnos a cualquier programa.
Si nos enfocamos a las computadoras de escritorio, portátiles y netbook las plataformas serían:
- Windows x86 y 64
- Mac
- Linux
Son plataformas no solo por ser sistemas operativos sino porque ademas se requiere una arquitectura de hardware especifica para ejecutarla, o al menos así es en concepto, porque sabemos que actualmente ya se puede instalar mac en procesadores que antes solo usaban windows.
En el mercado de las tablets y smartphones, tendríamos que mencionar a:
- Android
- Windows phone 7
- Blackberry
- Symbian
- Bada
En estas plataformas vemos que si hay un notable apego entre el sistema operativo y la arquitectura del equipo, dado que los equipos y el sistema operativo son diseñados a la medida, de tal forma que no es posible cambiar el sistema operativo del equipos. Ahora bien, el concepto que nos interesa es el de aplicaciones multiplataforma, con lo que nos referimos a programas o aplicaciones que lo mismo se ejecutan en una plataforma u otro, es decir aplicaciones que se codifican y se compilan para poder ser ejecutadas en diferentes plataformas.
Este efecto lo vemos mas comúnmente en las plataformas de tablets y smartphone, en donde es común encontrar una misma aplicación en su versión para android, para ios, symbian y blackberry.
La idea en sí, es programar una sola vez la aplicación y compilar el mismo código fuente para varias plataformas, pero como los métodos de desarrollo y lenguajes varían es complicado en algunas ocasiones. Pero así como existen aplicaciones multiplataforma, también existen herramientas de desarrollo multiplataforma que permiten crear código para varias plataformas, por mencionar solo algunas tenemos:
- Adobe dreamweaver puede ser usado para desarrollar para web, para ios y para nokia, claro con los complementos adecuados.
- Adobe AIR, es muy flexible, una aplicación AIR puede funcionar en cualquier dispositivo que soporte AIR sin importar su plataforma.
- Java.- El problema con java aunque se dice estándar e independiente, el problema se da en la versión para móviles, ya que si no usas la herramienta de desarrollo de cada marca, simplemente no funciona.
- QT.- Una plataforma de desarrollo que puede ser usada para desarrollar para symbian y linux.
De entre todas estas sobresale un proyecto llamado phonegab, en el cual solo hay que usar HTML 5, CSS3 y javascript, el sistema de phonegab se encarga de transformar nuestro código y compilarlo para android, ios, blackberry, symbiam y webos, de ultimo momento se sabe que piensa añadir soporte para windows phone 7.
Para saber mas de phobegab se puede hacer a través de su pagina oficial: http://www.phonegap.com/