COLE CO LE GIO DE EDUCACI EDUCACI ON PRO PROF F ES ESII ONAL TECNI CA DEL E STADO DE VERACRUZ.
PLANTEL “Lic. Jesús Reyes Heroles” Heroles” #165
UNIDAD:
1
NOMBRE DEL ALUMNO: Marí Ma ríaa De Los Áng Ángel eles es Cr Cruz uz Ba Bauti utist staa
MATRÍCULA: 121650008-0
DOCENTE: ING. MIGUEL ANGEL RAMOS GRANDE MÓDULO: Programación Para Equipo Móvil CARRERA: Profesi Pro fesional onal Téc Técnic nicoo en Info Inform rmáti ática ca
GRUPO: 503
SEMESTRE: 5TO
TITULO DE LA INVESTIGACIÓN O TAREA: Plataformas CONTENIDO: 1.1Identifica las diferentes plataformas para programación móvil 1.1Identifica las características de los dispositivos móviles y la plataforma de desarrollo con base en tecnologías y herramientas para aplicaciones Móviles. La descripción de la arquitectura. Sistema operativo que utiliza. Lenguajes de Interfaces de servicios. Lenguajes de desarrollo y bibliotecas. Base de datos que soporta. Emuladores con los que cuenta.
OBSERVACIONES:
CALIFICACIÓN FECHA DE ENTREGA:
Congregación de Santiago de la Peña, Tuxpan, Ver., México
26/agt./2014
**La descripción de la arquitectura**. Una plataforma es un sistema que sirve como base para hacer funcionar determinados módulos de hardware o de software con los que es compatible. Dicho sistema está definido por un estándar alrededor del cual se determina una arquitectura de hardware y una plataforma de software (incluyendo entornos de aplicaciones). Al definir plataformas se establecen los tipos de arquitectura, sistema operativo, lenguaje de programación o interfaz de usuario compatibles. Ejemplos de plataformas son IBM-PC, que incluye 'las arquitecturas' I386 (x86), IA64 o AMD64 (x86-64); Macintosh, que incluye la arquitectura Gecko y PowerPC; y SPARC. Existen programas multiplataforma que permiten ejecutarse en diversas plataformas. También existen emuladores, que son programas que permiten ejecutar desde una plataforma programas de otra emulando su funcionamiento, como por ejemplo UAE, que emula el hardware de un Amiga, o VICE, un emulador de los legendarios Commodore 8 bits de mitad de los 80. El desarrollo de aplicaciones móviles es más importante que nunca para las empresas. Las organizaciones de desarrollo están en busca de una plataforma de desarrollo de aplicaciones móviles (MADP) que pueda darle soporte a sus proyectos actuales y futuros. Es un campo amplio, y los vendedores ofrecen una amplia gama de capacidades. Aquí están diez de las mejores, identificadas por Gartner y los líderes de éste campo.
SAP En comparación con los otros principales proveedores de software independientes (ISV), SAP apostó primero por la movilidad. Su última oferta móvil, Sybase Unwired Platform(SUP), ha madurado rápidamente desde su lanzamiento inicial en el 2010, proporcionando un entorno flexible de desarrollo de aplicaciones con plug-ins para Eclipse y Visual Studio, junto con un estudio propio. A pesar de que tiene una curva de aprendizaje más pronunciada que muchas otras soluciones, es una excelente opción para ampliar las iniciativas móviles, especialmente en relación con la gestión de dispositivos móviles (MDM) Afasia de SAP. SAP cerró su adquisición de Syclo, otro proveedor líder de plataformas de desarrollo de aplicaciones móviles, en junio de este año.
SYCLO Adquirida por SAP en junio, Sydo inicialmente se especializada en aplicaciones de servicios de campo y gestión de activos empresariales (EAM) para dispositivos robustos, pero en los últimos años ha ampliado el alcance de su plataforma a todos los sistemas operativos móviles más comunes. Sin embargo, las empresas con necesidades de EAM y los usuarios de campo basados en los servicios, probablemente obtengan el máximo provecho de Syclo. Su capacidad Agentry MADP es una excelente plataforma para las aplicaciones B2E, y ahora es compatible con muchos requisitos B2C. Agentry es especialmente buena en el soporte de aplicaciones híbridas que se comportan como aplicaciones nativas e implementaciones orientadas a la web.
ANTENNA Antenna Mobility Platform (AMP) es una buena opción para las organizaciones que necesitan crear aplicaciones múltiples para varios tipos de dispositivos móviles y desplegarlos como un servicio en la nube. AMP se compone de un estudio de desarrollo junto con un servicio de tiempo de ejecución de nube autónomo y escalable, y un conjunto de clientes que la ejecutan en una amplia gama de dispositivos móviles. Su oferta de software como servicio (SaaS) móvil, AMPchroma, que se estrenó en febrero del 2012, agrega más capacidades, como la integración con MDM basada en la adquisición de Volantis Systems por parte de Antenna.
KONY Cuando debutó por primera vez en el 2007, Kony se centró en las aplicaciones de cara al consumidor, pero desde entonces ha añadido capacidades de B2E, a través del crecimiento orgánico. La plataforma de Kony es una buena opción para proyectos que requieren el uso de las características nativas en una gran variedad de dispositivos móviles. El entorno puede ser utilizado para construir aplicaciones para tablets, teléfonos inteligentes, navegadores móviles e incluso navegadores de escritorio, y luego implementarlas en todos ellos. ADOBE
Adobe Systems adquirió Nitobi Software, fabricante del marco PhoneGap, en el cuarto trimestre del 2011. PhoneGap 2011. PhoneGap se utiliza para envolver aplicaciones HTML5 en contenedores nativos, por lo que es una buena opción para las empresas de medios con requisitos de clientes móviles, o las organizaciones que quieran envolver aplicaciones web móviles desarrolladas con otras plataformas como Sencha , Dojo Mobile, jQuery y otros. Está disponible para Windows, Linux y Mac OS.
SENCHA Sencha adoptó un enfoque centrado en la web para el desarrollo de aplicaciones móviles, por lo que es una buena opción para las organizaciones con una gran cantidad de aplicaciones web y conocimientos de desarrollo JavaScript, pero con poca trayectoria en la experiencia del desarrollo nativo. Su marco de desarrollo de aplicación Touch Sencha se basa en HTML5. A principios de este año se selló un acuerdo con SAP para permitir que sus clientes utilicen Sencha Touch para construir e integrarse con SUP. QUERY MOBILE Parte del proyecto de código abierto Software Freedom Conservancy, jQuery Mobile es una buena opción para las organizaciones que necesitan un marco web móvil de código abierto que les permitirá aprovechar las capacidades de jQuery. El marco ofrece la posibilidad de usar HTML, JavaScript y CSS para construir páginas web móviles interactivas destinadas a una amplia gama de teléfonos inteligentes, y se puede utilizar con PhoneGap para construir aplicaciones móviles híbridas.
APPCELERATOR Basada en Eclipse, la plataforma móvil Titanium móvil Titanium de Appcelerator es una descarga gratuita con servicios pre integrado de nube y una amplia biblioteca de extensiones de aplicaciones en su mercado modular. Es una buena opción para las organizaciones que necesitan hacer desarrollo de aplicaciones multi sistema operativo aprovechando conjuntos de habilidades basadas en la web. Appcelerator se ha asociado recientemente con SAP, dándoles a los clientes de SAP la capacidad de usar Titanium para construir e integrarse con SUP. VERIVO SOFTWARE Verivo Software se especializa en aplicaciones ligeras orientadas al cliente, por lo que es una buena opción para empresas que necesitan apoyar una amplia gama de tipos de dispositivos y plataformas de desarrollo con recursos limitados. Para ayudar a proporcionar una experiencia coherente, de experiencia de usuario nativo a través de las plataformas, Verivo proporciona elementos visuales/funcionales que pueden ser compartidos a través de plataformas .
DOJO Dojo Mobile es un marco de desarrollo de código abierto apoyado por la fundación Dojo Foundation, que está disponible como una descarga gratuita y se distribuye comercialmente como parte de WebSphere de IBM. Es una buena opción para las organizaciones que necesitan un marco web móvil ligero y de código abierto que les permite aprovechar la experiencia de Dojo Toolkit. Dojo ofrece a los desarrolladores la habilidad de usar HTML, JavaScript y Cascading Style Sheets (CSS) para crear páginas web interactivas, tanto para los dispositivos móviles de escritorio y dispositivos móviles Webkit. Puede crear aplicaciones nativas móviles cuando se utiliza junto con PhoneGap. Andamio: Estructura o plataforma provisional, levantada sobre el suelo, que
permite sostener los materiales y sirve para que los obreros puedan realizar sobre ella sus trabajos de reparación o construcción de un edificio. Estructura de plataforma: Entramado de madera en el que los montantes son de
un piso de altura, apoyados sobre las vigas de cada piso; cada piso descansa sobre los cabezales del inmediatamente inferior, y el inferior sobre el muro de cimentación. Tribunal: Plataforma elevada en una basílica de la antigua Roma. Estereóbato : Plataforma maciza que sirve de base a un templo clásico. Estrado: Plataforma elevada reservada a los altos dignatarios u oradores. Solera: 1. Superficie estructural sobre la que se aplica el pavimento, empleada
como plataforma de trabajo durante la construcción; si se aplica directamente sobre el terreno, se trata de una capa de hormigón que sirve para dar consistencia, allanar el terreno y evitar la humedad; si es de madera, está constituida por una serie de tableros fijados a las viguetas del suelo; también llamada falso entarimado, suelo falso. 2. Elemento horizontal más bajo de una estructura de entramado de madera anclado en un muro de cimentación; también llamado durmiente. Escenario: Plataforma elevada sobre la que actúan los actores en una
representación teatral, o los músicos en una actuación. Tablado de escotillón : Plataforma, de altura fija o graduable, sobre un escenario
para uso de técnicos y tramoyistas.
Estructura estáticamente determinada: Estructura que puede ser analizada
mediante los principios de la estática; la supresión de cualquiera de sus ligaduras conduce al colapso. También llamada estructura isostática. Estructura isostática: Estructura que puede ser analizada mediante los principios
de la estática; la supresión de cualquiera de sus ligaduras conduce al colapso. También llamada estructura estáticamente determinada. Ascensor : Plataforma o camarín que se emplea para el transporte vertical de
carga o personas de una planta a otra en un edificio. Cabina: Unidad de transporte de un ascensor que incluye la plataforma, el
armazón y una puerta o puertas. También llamada camarín. Camarín: Unidad de transporte de un ascensor que incluye la plataforma, el
armazón y una puerta o puertas. También llamada cabina. Púlpito: Plataforma elevada desde donde se dirigían los rezos y los cantos en las
antiguas iglesias cristianas. También llamado ambón. que necesita más elementos de los necesarios para mantenerse estable; la supresión de uno de ellos no conduce al colapso, pero modifica sus condiciones de funcionamiento estático. También llamada estructura hiperestática. Estructura
estáticamente
indeterminada: Estructura
Estructura hiperestática: Estructura que necesita más elementos de los
necesarios para mantenerse estable; la supresión de uno de ellos no conduce al colapso, pero modifica sus condiciones de funcionamiento estático. También llamada estructura estáticamente indeterminada. Tarima exterior : Plataforma exterior considerada como una prolongación de la
casa. Balcón: Plataforma estrecha que sobresale en la fachada que sobresale de un
edificio y que esta rodeada de una barandilla. Podio de entrada : Plataforma o pequeño porche situado sobre unos peldaños, a
la entrada de una casa. Ascensor inclinado : Plataforma o silla que, montada sobre una guía accionada
por un motor eléctrico, permite transportar una carga o una persona a lo largo de una escalera de un piso a otro.
**Sistema operativo que utiliza** ANDROID El sistema operativo Android es sin duda el líder del mercado móvil en sistemas operativos, está basado en Linux, diseñado originalmente para cámaras fotográficas profesionales, luego fue vendido a Google y modificado para ser utilizado en dispositivos móviles como los teléfonos inteligentes y luego en tablets como es el caso del Galaxy Tab de Samsung , actualmente se encuentra en desarrollo para usarse en netbooks y PCs, el desarrollador de este S.O. es Google, fue anunciado en el 2007 y liberado en el 2008; además de la creación de la Open Handset Alliance, compuesto por 78 compañías de hardware, software y telecomunicaciones dedicadas al desarrollo de estándares abiertos para celulares, esto le ha ayudado mucho a Google a masificar el S.O, hasta el punto de ser usado por empresas como HTC, LG, Samsung, Motorola entre otros. Android Inc., es la empresa que creó el sistema operativo móvil, se fundó fu ndó en 2003 y fue comprada por Google en el 2005 y 2007 fue lanzado al mercado. Su nombre se debe a su inventor, Andy Rubin. Originalmente era un sistema pensado para las cámaras digitales. Android está basado en Linux, disponiendo de un Kernel en este sistema y utilizando una máquina virtual sobre este Kernel que es la responsable de convertir el código escrito en Java de las aplicaciones a código capaz de comprender el Kernel. Las aplicaciones para Android se escriben y desarrollan en Java aunque con unas APIS propias por lo que las aplicaciones escritas en Java para PC y demás plataformas ya existentes no son compatibles con este sistema. Una de las grandes cualidades o características de este sistema operativo es su carácter abierto. Android se distribuye bajo dos tipos de licencias, una que abarca todo el código del Kernel y que es GNU GPLv2 ( implica que su código se debe poner al alcance de todos y que todos podremos hacer con este código lo que nos parezca oportuno, modificarlo, ampliarlo, recortarlo, pero siempre estaremos en la obligación de volver a licenciarlo con las misma licencia) Google también por supuesto tiene otra licencia para el resto de componentes del sistema que se licencia bajo APACHE v2 (implica que este código se pueda distribuir para ser modificado y usado a antojo del que lo utilice, pero a diferencia del primer caso,
las modificaciones y el código resultante no es obligatorio el licenciarlo bajo las mismas condiciones en las que se encontraba).
IOS IOS es el sistema operativo que da vida a dispositivos como el iPhone, el iPad, el iPod Touch o el Apple TV. Su simplicidad y optimización son sus pilares para que millones de usuarios se decanten por iOS en lugar de escoger otras plataformas que necesitan más hardware para mover con fluidez el sistema. Cada año, Apple lanza una gran actualización de iOS que suele trae características exclusivas para los dispositivos más punteros que estén a la venta en ese momento. Anteriormente denominado iPhone OS creado por Apple originalmente para el iPhone, siendo después usado en el iPod Touch e iPad. Es un derivado de Mac OS X, se lanzó en el año 2007, aumento el interés con el iPod Touch e iPad que son dispositivos con las capacidades multimedia del iPhone pero sin la capacidad de hacer llamadas telefónicas, en si su principal revolución es una combinación casi perfecta entre hardware y software, el manejo de la pantalla multi-táctil que no podía ser superada por la competencia hasta el lanzamiento del celular Galaxy S I y II por parte de Samsung.
WINDOWS PHONE Anteriormente llamado Windows Mobile es un S.O. móvil compacto desarrollado por Microsoft, se basa en el núcleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones básicas, actualmente va por la versión 8. Está diseñado para ser similar a las versiones de escritorio de Windows estéticamente y existe una gran oferta de software de terceros disponible para Windows Mobile, la cual se puede adquirir a través de la tienda en línea Windows Marketplace for Móviles
BLACKBERRY 6 BlackBerry es un sistema desarrollado por Research In Motion el cual fue presentado en el WES 2010 junto con un video promocional donde se muestra algunas novedades. RIM apuesta que su BlackBerry 6 estará enfocado en el mercado corporativo y no-corporativo. La mejor experiencia de este sistema se encontrara en los equipos touchscreen (Pantalla Táctil), aunque RIM aseguro que en los equipos que cuenten con un TouchPad o TrackPad podrán ejecutarlo ya que ejerce casi la misma función. Así mismo todavía RIM no ha aclarado cúales son los equipos que se podrán actualizar a esta versión aunque hay muchos
rumores al respecto. RIM en el desarrollo de este OS se enfocó en la parte multimedia hacia el usuario, sin dejar a un lado la parte profesional, también se muestra la integración de las redes sociales y la mensajería instantánea en este. Sin duda RIM quiere dar al usuario una nueva experiencia en su equipo BlackBerry que nadie conocía.
BLACKBERRY 7.1 BlackBerry 7.1 es la última versión estable hasta el momento, esta nueva versión es muy parecida a la versión 7.0 aunque con algunas nuevas funciones que harán más fácil el manejo del Smartphone.
SYMBIAN Fue producto de la alianza de varias empresas de telefonía móvil, entre las que se encuentran Nokia como la más importante, Sony Ericsson, Samsung, Siemens, BenQ, Fujitsu, Lenovo, LG, Motorola, esta alianza le permitió en un momento dado ser unos de los pioneros y más usados. El objetivo de Symbian fue crear un sistema operativo para terminales móviles que pudiera competir con el de Palm o el Smartphone de Microsoft. Técnicamente, el sistema operativo Symbian es una colección compacta de código ejecutable y varios archivos, la mayoría de ellos son bibliotecas vinculadas dinámicamente (DLL por sus siglas en inglés) y otros datos requeridos, incluyendo archivos de configuración, de imágenes y de tipografía, entre otros recursos residentes. Symbian se almacena, generalmente, en un circuito flash dentro del dispositivo móvil. Gracias a este tipo de tecnología, se puede conservar información aun si el sistema no posee carga eléctrica en la batería, además de que le es factible reprogramarse, sin necesidad de separarla de los demás circuitos. Las aplicaciones compatibles con Symbian se desarrollan a partir de lenguajes de programación orientados a objetos como C++, Java (con sus variantes como PJava, J2ME, etc.), Visual Basic para dispositivos móviles, entre otros, incluyendo algunos lenguajes disponibles en versión libre.
FIREFOX O.S Firefox OS es un sistema operativo móvil, basado en HTML5 con núcleo Linux, de código abierto, para smartphones y tabletas. Es desarrollado por Mozilla Corporation bajo el apoyo de otras empresas como Telefónica y una gran comunidad de voluntarios de todo el mundo. Este sistema operativo está enfocado especialmente en los dispositivos móviles incluidos los de gama baja. Está diseñado para permitir a las aplicaciones HTML5 comunicarse directamente con el
hardware del dispositivo usando JavaScript y Open Web APIs. Ha sido mostrado en smartphones y Raspberry Pi, compatibles con Android. En febrero de 2013 Mozilla anunció planes para el lanzamiento mundial de Firefox OS. Mozilla ha comunicado en rueda de prensa antes del inicio del Mobile World Congress en Barcelona, que la primera ola de dispositivos con Firefox OS estará disponible Brasil,Colombia, Hungría, México, Montenegro, Polonia, Serbia, España y Venezuela. Firefox también ha anunciado que LG Electronics, ZTE, Huawei y TCL Corporation se han comprometido a la fabricación de dispositivos con Firefox OS.
UBUNTU TOUCH Ubuntu Touch es un sistema operativo móvil basado en Linux. Es desarrollado por Canonical Ltd.. Presentado el 2 de enero de 2013 al público mediante un anuncio en la web de Ubuntu, culmina el proceso de Canonical de desarrollar una interfaz que pueda utilizarse en ordenadores de sobremesa, portátiles, netbooks, tablets y teléfonos inteligentes. Ubuntu Touch se caracteriza por ser un sistema diseñado para plataformas móviles. Algunas de sus características más destacadas son: Pantalla de inicio sin sistema de bloqueo/desbloqueo (que funciona con un nuevo sistema de gestos, y que se aprovecha para mostrar notificaciones)D. Aplicaciones en segundo plano. Integración con Ubuntu One.
*ALGUNAS MARCAS* Alcatel= Alcatel = Androi 1. Apple Apple= = iOS 2. Asus Asus= = Windows mobile 3. Azumi Azumi= = Nucleus Plus - Android 4. BenQ BenQ= = Windows mobile 5. BlackBerry BlackBerry= = BlackBerry OS 6. BLU BLU= = Android 7. Huawei Huawei= = Android - Windows mobile
8. HTC HTC= = Windows mobile - Android 9. Lanix Lanix= = Android 10. LG LG= = Android - Microsoft Windows Phone 11. Motorola Motorola= = Windows mobile - Android - Firefox OS 12. Movistar = Microsoft mobile - Android 13. Nokia Nokia= = Symbian - Windows Phone 14. Palm Palm= = PalmOS - Windows Mobile 15. Panasonic Panasonic= = Symbian 16. Samsung Samsung= = LiMo R2.0.1 - Linux - Windows Mobile - Android 17. Siemens Siemens= = Microsoft Pocket 18. Sony Sony= = Android 19. Sony Ericsson= Ericsson= Symbian - Android 20. Toshiba Toshiba= = Windows Mobile 21. Treo Treo= = PalmOS 22. ZTE ZTE= = Android 23. Vtelca Vtelca= = Android.
**Lenguajes de Interfaces de servicios. ** PLATAFORMAS Una plataforma es una combinación de hardware y software utilizado para ejecutar aplicaciones de software. Una plataforma puede ser descrita simplemente como un sistema operativo o arquitectura de ordenador, o podría ser la combinación de ambos (un ejemplo de una plataforma común es Microsoft Windows que se ejecuta en la arquitectura x86). Otras conocidas plataformas de computadoras de escritorio incluyen Linux/Unix y Mac OS X (ambos de los cuales son a su vez multiplataforma). Hay, sin embargo, muchos dispositivos, como los teléfonos móviles que también son efectivamente plataformas informáticas, pero menos comúnmente pensado de esa manera. Una aplicación se puede escribir en dependencia de las características de una determinada Plataforma, ya sea el hardware, sistema operativo, o máquina virtual en que se ejecuta. La plataforma Java es una máquina virtual de la plataforma que se ejecuta en sistemas operativos y tipos de hardware, y es una plataforma de software común para escribir (programar).
PLATAFORMAS DE HARDWARE Una plataforma de hardware puede referirse a la arquitectura del ordenador o la arquitectura del procesador. Por ejemplo, los CPUs x86 y x86-64 constituyen una de las más comunes las arquitecturas de computadoras en uso en los ordenadores de propósito general. Estas máquinas suelen ejecutar una versión de Microsoft Windows, aunque también también se puede ejecutar otro otro sistemas operativos, tales como Linux, OpenBSD, NetBSD, Mac OS X y FreeBSD. Una arquitectura ARM es común en los teléfonos inteligentes y Tablet PC, que corren Android, iOS y otros sistemas operativos móviles.
LAS PLATAFORMAS DE SOFTWARE Las plataformas de software pueden ser un sistema operativo o entorno de programación, aunque más comúnmente se trata de una combinación de ambos. Una notable excepción a esto es Java, que utiliza un sistema operativo independiente de la máquina virtual para cada código compilado, conocido en el mundo de Java como bytecode. Ejemplos de plataformas de software incluyen: Android (sistema operativo) para teléfonos inteligentes y Tablet PC AmigaOS (m68k), AmigaOS 4 (PowerPC), AROS (x86, PowerPC, m68k), MorphOS (PowerPC) BSD, muy multiplataforma (ver NetBSD, por ejemplo) Java Linux (x86, x86-64, PowerPC, y otras arquitecturas) iOS (ARM) Mac OS X (x86, x86-64) Microsoft Windows (x86, x86-64, ARM) DOS sistemas de tipo en el x86: MS-DOS, IBM PC-DOS, DR-DOS, FreeDOS, etc. OS/2, eComStation Solaris (SPARC, x86, x86-64)
La CLI, también conocido por los nombres de aplicación .NET Framework (de Microsoft) y Mono (de Novell)
JAVA PLATAFORMA Como ya se ha señalado, la plataforma Java es una excepción a la regla general de que un sistema operativo es una plataforma de software. El lenguaje Java requiere de una máquina virtual, o un "CPU virtual" en el que se ejecuta todo el código que se escribe en el lenguaje. Esto permite que el mismo ejecutable binario pueda ejecutarse en todos los sistemas, apoyado por el software Java, a través del uso de una máquina virtual Java (JVM). Ejecutables de Java no se ejecutan de forma nativa en el sistema operativo, es decir, ni de Windows, ni Linux ejecutan programas Java directamente. Aunque el código Java no se ejecuta de forma nativa, la JVM es plenamente capaz de proporcionar servicios relacionados con el sistema operativo, como el disco I/O y el acceso a la red, si los privilegios adecuados se conceden. La JVM permite a los usuarios decidir el nivel de protección adecuado, según una ACL. Por ejemplo, el acceso a disco y de red está habilitado normalmente para aplicaciones de escritorio, pero no para applets basados en el navegador. JNI también se puede utilizar para permitir el acceso a funciones específicas de los sistemas operativos. En la actualidad, los programas Java pueden ejecutarse en Microsoft Windows, Mac OS X, Linux y sistemas operativos Solaris. Para aplicaciones móviles, los plugins de los navegadores se utilizan en dispositivos basados en Windows y Mac, Android tiene tiene soporte soporte incorporado incorporado para Java.
SOFTWARE MULTIPLATAFORMA Para que el software pueda ser considerado multiplataforma, debe ser capaz de funcionar en más de una arquitectura de ordenador o sistema operativo. Esto puede ser una tarea que consume tiempo, ya que los diferentes sistemas operativos tienen diferentes interfaces de programación de aplicaciones o API (por ejemplo, Linux utiliza una API diferente de Windows). El hecho de que un determinado sistema operativo se pueda ejecutar en diferentes arquitecturas de computadora no quiere decir que el software escrito para ese sistema operativo automáticamente funcione en todas las arquitecturas que soporta el sistema operativo. Por ejemplo, a partir de agosto de 2006 OpenOffice.org no se ejecutaba de forma nativa en los AMD64 o Intel 64 líneas de procesadores los estándares para computadores de x86-64 64 bit. Sin embargo, desde entonces la situación ha cambiado, y la suite OpenOffice.org de software ha sido portada a los sistemas de 64-bit. Esto también significa que sólo porque un programa se escriba en un popular lenguaje de programación como C o C++, no
tiene por qué funcionar en todos los sistemas operativos que soporten la programación de dicho lenguaje o incluso en el mismo sistema operativo en una arquitectura diferente.
LAS APLICACIONES WEB Las aplicaciones Web suelen ser descritas como multiplataforma, ya que, idealmente, se puede acceder desde cualquiera de los diversos navegadores web en diferentes sistemas operativos. Tales aplicaciones generalmente emplean una arquitectura de sistema cliente-servidor, y pueden variar ampliamente en complejidad y funcionalidad. Esta amplia variabilidad complica considerablemente la meta de capacidad multi-plataforma, que es rutinariamente en contradicción con el objetivo de funcionalidad avanzada.
APLICACIONES BÁSICAS Aplicaciones web básicas lleva cabo la totalidad o la mayor parte del procesamiento de un servidor web "Stateless", y pasar el resultado al navegador web del cliente. Toda la interacción del usuario con la aplicación consta de simples intercambios de solicitudes de datos y las respuestas del servidor. Este tipo de aplicaciones son la norma en las fases iniciales de la World Wide Web de desarrollo de aplicaciones. Tales aplicaciones siguen un simple transacción modelo, idéntica a la de servir páginas web estáticas. Hoy en día, siguen siendo relativamente comunes, especialmente cuando la compatibilidad entre plataformas y la simplicidad se considera más importante que las funcionalidades avanzadas.
LAS APLICACIONES AVANZADAS Ejemplos destacados de las aplicaciones web avanzadas incluyen la interfaz web a Gmail, A9.com, y la página web maps.live.com, parte del Live Search servicio de Microsoft. Tales aplicaciones avanzadas habitualmente dependen de las funciones adicionales que se encuentran sólo en las versiones más recientes de los navegadores web más populares. Estas dependencias incluyen Ajax, JavaScript, HTML "Dinámico", SVG, y otros componentes de las aplicaciones ricas de Internet. Las versiones antiguas de los navegadores web más populares tienden a carecer de apoyo a ciertas características.
LAS ESTRATEGIAS DE DISEÑO A causa de los intereses en conflicto de compatibilidad entre plataformas y funcionalidades avanzadas, han surgido numerosas alternativas de diseño de aplicaciones web.
DEGRADACIÓN CORRECTA Degradación correcta intenta proporcionar la misma funcionalidad o similar para todos los usuarios y plataformas, mientras que la disminución de la funcionalidad de un "mínimo común denominador" para obtener más exploradores cliente limitados. Por ejemplo, un usuario que intenta usar una característica limitada de un navegador para acceder a Email puede notar que Email cambia al "modo básico", con funcionalidad reducida. Algunos ven esta estrategia como una forma menor de la capacidad multiplataforma.
SEPARACIÓN DE FUNCIONES La separación de las funcionalidades para simplificar la omisión de los subconjuntos de funciones que no soportan los exploradores de los clientes dentro de ciertos sistemas operativos, sin dejar de ofrecer una "completa" aplicación para el usuario.
CÓDIGO BASE MÚLTIPLE Múltiples aplicaciones codease presentar diferentes versiones de una aplicación en función del cliente específico en uso. Esta estrategia es sin duda la forma más complicada y costosa de cumplir la capacidad multiplataforma, ya que incluso las diferentes versiones del navegador del cliente mismo (dentro del mismo sistema operativo) pueden diferir considerablemente entre sí. Esto se complica aún más por el apoyo a "plugins" que puede o no estar presente para cualquier instalación dada de un navegador web particular.
BIBLIOTECAS DE TERCEROS Bibliotecas de terceros intentan simplificar la capacidad multiplataforma de "esconder" las complejidades de las diferencias de los clientes detrás de un API unificada.
LAS ESTRATEGIAS DE PRUEBA Un aspecto complicado del diseño de las aplicaciones web multiplataforma es la necesidad de pruebas de software. Además de las complicaciones mencionadas anteriormente, existe la restricción adicional de que algunos navegadores web
prohíben la instalación de diferentes versiones del mismo navegador en el mismo sistema operativo. Técnicas tales como la vitalización completa se utilizan a veces como una solución para este problema.
LAS APLICACIONES TRADICIONALES Aunque las aplicaciones web se están convirtiendo cada vez más popular , muchos usuarios todavía utilizan la aplicación de software tradicional que no se basa en una arquitectura cliente/servidor web. La distinción entre las "tradicionales" y las aplicaciones "web" no es siempre inequívoca, sin embargo, ya que las aplicaciones tienen muchas características diferentes, los métodos de instalación y arquitecturas, y algunas de ellas pueden superponerse y ocurrir de maneras que difuminan la distinción. Sin embargo, esta distinción simplificada es una generalización común y útil.
SOFTWARE BINARIO Tradicionalmente en la informática moderna, la aplicación de software se ha distribuido a los usuarios finales como imágenes binarias, que se almacenan en archivos ejecutables, un tipo específico de archivo binario. Estos ejecutables sólo admiten el sistema operativo y arquitectura de computadores que fueron construidas, lo que significa que haciendo un "ejecutable multi-plataforma" sería algo así como una enorme tarea, y por lo general no se hace. Para el software que se distribuye como un archivo ejecutable binario, como el software escrito en C o C++, el programador debe crear el software para cada sistema operativo diferente y arquitectura de computadoras. Por ejemplo, Mozilla Firefox, un navegador web de código abierto, está disponible en Microsoft Windows, Mac OS X (tanto PowerPC y x86 a través de algo que Apple llama un binario universal), y Linux en arquitecturas de varios equipos. Las tres plataformas (en este caso, de Windows, Mac OS X y Linux) son distribuciones ejecutables independientes, si bien proceden del mismo código fuente. En el contexto del software binario, los programas multiplataforma están escritos en el código fuente y luego, "traducido" a cada sistema que se ejecuta a través de la compilación en plataformas diferentes. Además, el software puede ser portado a una arquitectura de computadora nueva o sistema operativo para que el programa se hace más multiplataforma de lo que ya es. Por ejemplo, un programa como Firefox, que ya se ejecuta en Windows en la familia x86, se puede modificar y reprogramar para ejecutarse en Linux en x86 (y potencialmente otras arquitecturas) también.
Como alternativa a la portabilidad, la vitalización de multiplaforma permite que las aplicaciones compiladas para una CPU y el sistema operativo se ejecute en un sistema con una CPU y/o sistema operativo, sin modificar el código fuente o binarios. Por ejemplo, Apple Rosetta software, que está integrado en Intel basados en ordenadores Apple Macintosh, ejecuta las aplicaciones compiladas para la anterior generación de Mac que utilizan PowerPC CPU. Otro ejemplo es IBM PowerVM Lx86, que permite Linux/x86 aplicaciones para ejecutarse sin modificaciones en el Linux/Sistema operativo de encendido.
SCRIPTS Y LENGUAJES INTERPRETADOS Un script puede ser considerado como multiplataforma si su intérprete está disponible en múltiples plataformas y la secuencia de comandos sólo utiliza los servicios proporcionados por el lenguaje. Es decir, un script escrito en Python para un sistema como Unix probablemente se ejecutará con poca o ninguna modificación en el de Windows, ya que también se ejecuta en Python de Windows, también hay más de una implementación de Python que se ejecutan los mismos scripts (por ejemplo, IronPython para .NET). Lo mismo ocurre con muchos de los lenguajes de programación de código abierto que están disponibles y son lenguajes de scripting. A diferencia diferen cia de los binarios b inarios ejecutables, el e l script puede utilizar el mismo en todos los equipos que tienen el software para interpretar la secuencia de comandos. Esto se debe a que las secuencias de comandos se almacenan generalmente en un texto sin formato en un archivo de texto. Puede haber algunos problemas, sin embargo, como el tipo de carácter de línea nueva que se encuentra entre las líneas. Generalmente, sin embargo, el trabajo poco o nada tiene que hacer para que un script escrito para un sistema, ejecute en otro. Algunos muy populares entre plataformas scripting o lenguajes interpretados son: Bash - Un shell de Unix en el que comúnmente se ejecutan en Linux y otros modernos sistemas Unix, así como en Windows a través de Cygwin POSIX (capa de compatibilidad). Perl - Un lenguaje de scripting creado en 1987. Se utiliza para programación CGI WWW, pequeños sistemas de administración de tareas y más. PHP - El lenguaje de scripting más popular en uso de las aplicaciones web. Python - Un moderno lenguaje de programación donde la atención se centra en el desarrollo rápido de aplicaciones y la facilidad de la escritura, en lugar se obtiene un programa eficiente en tiempo de ejecución.
Ruby - Un lenguaje de scripting cuyo propósito es ser orientado a objetos y fácil de leer. También se puede utilizar en la web a través tr avés de Ruby on Rails. Ra ils. Tcl - Un lenguaje de programación dinámico, adecuado para una amplia gama de aplicaciones, incluyendo aplicaciones web y de escritorio, redes, administración de pruebas y muchos más.
VIDEOJUEGOS Multiplataforma es un término que también puede aplicarse a los videojuegos liberados en una serie de consolas de videojuegos, especializados ordenadores dedicados a la tarea de jugar. Ejemplos de juegos de video multi-plataforma son: Minero 2049er Phantasy Star Online Tomb Raider: Legend FIFA Series Cada uno ha sido puesto en libertad a través de una variedad de plataformas de juego, como la Wii, PlayStation 3, Xbox 360, ordenadores personales (PCs), y dispositivos móviles. Las características de un sistema particular puede prolongar el tiempo necesario para implementar un juego de vídeo en múltiples plataformas. Así, un videojuego puede inicialmente ser puesto en algunas plataformas y posteriormente puesto en libertad el resto de plataformas. Por lo general, esta situación se produce cuando un nuevo sistema de juego es liberado, porque los desarrolladores de videojuegos que se familiaricen con el hardware y el software asociado con la nueva consola. Algunos juegos no pueden ser multiplataforma debido a los acuerdos de licencia entre los desarrolladores y fabricantes de videojuegos de consola que limitan el desarrollo de un juego para una consola en particular. Como ejemplo, Disney podría crear un juego con la intención de la liberación en la última Nintendo y Sony consolas de juegos. En caso de licencia de Disney del juego de Sony primero, Disney puede en cambio ser necesaria para liberar el juego únicamente en Sony de la consola por un corto tiempo o indefinidamente. Varios desarrolladores han puesto en marcha los medios para jugar juegos en línea durante el uso de diferentes plataformas. Epic Games, Microsoft y Valve Software todos poseemos la tecnología que permite a Xbox 360 y PlayStation 3 a
los jugadores jugar con los jugadores de PC, dejando la decisión de qué plataforma utilizar para los consumidores. El primer juego para permitir que este nivel de interactividad entre el PC y consola de juegos era Quake 3. Los juegos que ofrecen multiplataforma juego en línea incluyen: Kane & Lynch: Dead Men Lost Planet: Colonies Phantasy Star Online Shadowrun BlazBlue: Calamity Trigger Uno Final Fantasy XI Online El Universo en Guerra: Asalto a la Tierra Cuarto de juegos Team Fortress 2 Portal 2 Dust 514 con Eve Online Minecraft
SOFTWARE PLATAFORMA-INDEPE PLATAFORMA-INDEPENDIENTE NDIENTE El software que es independiente de la plataforma no se basa en las características especiales de cualquier plataforma única, o, si lo hace, se ocupa de las características especiales que la hacen frente a múltiples plataformas.
PROGRAMACIÓN MULTIPLATAFORMA La programación multiplataforma es la práctica de la forma activa de la escritura de software que funciona en más de una plataforma.
MÉTODOS DE PROGRAMACIÓN MULTI-PLATAFORMA MULTI-PLATAFORMA Hay diferentes maneras de abordar el problema de escribir una aplicación multiplataforma. Una de ellos es simplemente crear varias versiones del mismo programa en diferentes árboles de código fuente, es decir, la versión de Windows
de un programa puede tener un conjunto de archivos de código fuente y la versión de Macintosh podría tener otro, mientras que un software libre con sistema Unix podría tener otro. Si bien este es un enfoque simple para el problema, tiene el potencial de ser mucho más caro en costos de desarrollo, tiempo de desarrollo, o ambos, sobre todo para las entidades corporativas. La idea detrás de esto es crear más de dos programas diferentes que tienen la capacidad de comportarse de manera similar a la otra. También es posible que este medio de desarrollo de una aplicación multi-plataforma dará lugar a más problemas de seguimiento de errores y corregir, porque los dos árboles diferentes fuentes tendría programadores diferentes, y por lo tanto los defectos diferentes en cada versión. Cuanto menor sea el equipo de programación, más rápido las correcciones de errores tienden a ser. Otro enfoque que se utiliza es depender de un software preexistente que oculta las diferencias entre la platform, llamado abstracción de la Platform, de tal manera que el programa en sí mismo no es consciente de la plataforma que se está ejecutando. Se podría decir que este tipo de programas son independientes de la plataforma. Los programas que se ejecutan en la máquina virtual de Java (JVM) se construyen de esta manera. Algunas aplicaciones de mezclar diversos métodos de programación multiplataforma para crear la aplicación final. Un ejemplo de esto es el navegador web Firefox, que utiliza la abstracción para construir algunos de los componentes de nivel inferior, sub-estructuras separadas de código para implementar las características específicas de la plataforma (como la interfaz gráfica de usuario), y la aplicación de más de un lenguaje de scripting para ayudar a facilitar facilidad de portabilidad. Firefox implementa XUL, CSS y JavaScript para la extensión del navegador, además de plugins al estilo del clásico navegador Netscape. Gran parte del mismo navegador en sí está escrito en XUL, CSS y JavaScript, también
HERRAMIENTAS DE PROGRAMACIÓN Y ENTORNOS MULTIPLATAFORMA Hay una serie de herramientas que están disponibles para ayudar a facilitar el proceso de programación multiplataforma: El Cairo: Un software libre, biblioteca que se utiliza para proporcionar un vector basado en gráficos, independiente del API del dispositivo. Está diseñado para proporcionar primitivas para dibujos 2-dimensionales a través de un número de diferentes sistemas de apoyo. El Cairo está escrito en C y tiene enlaces para muchos lenguajes de programación.
Eclipse: Entorno de desarrollo multiplataforma, código abierto. Implementado en Java con una arquitectura configurable que soporta muchas herramientas para desarrollo de software. Complementos disponibles para varios lenguajes, como Java y C++. FLTK: Otro código abierto multiplataforma. Kit de herramientas, pero más ligero, ya que se limita a la GUI. fpGUI: Un conjunto de herramientas de fuente abierta widget de que está completamente implementado en Object Pascal. Actualmente es compatible con Linux, Windows y un poco de Windows CE. GeneXus: En Windows es una solución rápida de desarrollo de software para la creación de aplicaciones multiplataforma y de despliegue basado en la representación del conocimiento y el apoyo a C#, Cobol, Java incluyendo Android y BlackBerry dispositivos inteligentes, Objective-C para el de Apple dispositivos móviles, RPG, Ruby, Visual Basic y Visual FoxPro. GTK+: Un conjunto de herramientas de código abierto para el widget de sistemas tipo Unix con X11 y Microsoft Windows. haXe: Un lenguaje multiplataforma de código abierto. Juce: Un framework de aplicaciones escritas en C++, que se utiliza para escribir software nativo en numerosos sistemas (Microsoft Windows, POSIX, Mac OS X), sin cambios en el código. Max/MSP: Un lenguaje de programación Visual que encapsula independiente de la plataforma del código con un entorno de ejecución específico de la plataforma en las aplicaciones para Mac OS X y Windows. Mono (una versión de código abierto de Microsoft NET.): Un marco multiplataforma para las aplicaciones y lenguajes de programación. Monocross es una fuente abierta del patrón de diseño modelo-vista-controlador en el que se comparten el modelo y el controlador multi-plataforma, pero la vista es específica de la plataforma. MoSync es un SDK de código abierto para el desarrollo de aplicaciones móviles en la plataforma C++ familia. Framework de la aplicación Mozilla: Una plataforma de código abierto para el desarrollo de Mac OS X, las aplicaciones de Windows y Linux. OpenGL: Una biblioteca multiplataforma de gráficos 3D.
Qt (toolkit): Una estructura de aplicaciones y Widget Toolkit para sistemas Unix con X11, Microsoft Windows, Mac OS X, disponible tanto en virtud de código abierto y licencias propietarias. Real Studio: un IDE RAD desarrollado por Real Software, utiliza un dialecto orientado a objetos del lenguaje de programación BASIC, y produce binarios compilados para Mac OS X, Windows y Linux, como también, ser capaz de producir cgi aplicaciones basadas en web. El soporte iOS está actualmente en desarrollo. Simple DirectMedia Layer: Una libreria de multimedia multiplataforma de código abierto, escrita en C que proporciona acceso de nivel bajo y alto a los gráficos, de entrada, audio, etc. Plataforma Smartface: Una herramienta multiplataforma para Windows que se usa para crear aplicaciones móviles para J2ME, Symbian S60, Blackberry y Android, usando herramientas de arrastrar y soltar y edición de acciones.
TCL/TK Ultímate++: es un marco de desarrollo rápido de aplicaciones multiplataforma de C++ centrado en la productividad de los programadores. Incluye un conjunto de bibliotecas de usuario (GUI, SQL, etc.), Y un entorno de desarrollo integrado. Es compatible con Windows y Unix OS-s. El U++ compite con lenguajes de scripting populares preservando características de C/C++ de tiempo de ejecución. Tiene su propio entorno de desarrollo integrado, TheIDE, que cuenta con BLITZ-construir tecnología para aceleración de C++ reconstruyendo hasta 4 veces el compilado. wxWidgets: un juego de herramientas widget de fuente abierta que es también un marco de aplicación. Se ejecuta en sistemas Unix con X11, Microsoft Windows y Mac OS X. Se permite que las aplicaciones escritas para usarlo para funcionar en todos los sistemas que lo soporta, si la aplicación no utiliza ningún sistema operativo específico de programación, además de a la misma. XPower++: es un IDE multiplataforma para Windows, Linux, Mac OS X y sistemas operativos móviles.
SUS DESAFÍOS PARA EL DESARROLLO MULTIPLATAFORMA MULTIPLATAFORMA Hay algunos temas relacionados con el desarrollo de multi-plataforma. Algunos de estos incluyen: Pruebas de aplicaciones multiplataforma puede ser mucho más complicado, ya que las diferentes plataformas pueden exhibir comportamientos ligeramente diferentes o errores sutiles. Este problema ha llevado a algunos desarrolladores a ridiculizar el desarrollo multiplataforma como «escribir una vez, depurar en todas partes», eslogan de marketing. Los desarrolladores a menudo se limitan a utilizar el mínimo común denominador subconjunto de características que están disponibles en todas las plataformas. Esto puede afectar al rendimiento de la aplicación o prohibir el uso de los desarrolladores características más avanzadas de la plataforma. Las diferentes plataformas a menudo tienen diferentes convenciones de interfaz de usuario, que aplicaciones multiplataforma no siempre acomodar. Por ejemplo, las aplicaciones desarrolladas para Mac OS X y GNOME se supone que coloque el botón más importante en la parte derecha de la ventana o cuadro de diálogo, mientras que Microsoft Windows y KDE tienen la convención opuesta. Aunque muchas de estas diferencias son sutiles, una aplicación multiplataforma que no se ajusta adecuadamente a estos convenios puede sentirse torpe o ajeno al usuario. Cuando se trabaja con rapidez, a esas convenciones se oponen incluso puede resultar en la pérdida de datos, como en un cuadro de diálogo para confirmar si el usuario desea guardar o descartar los cambios realizados en un archivo. Lenguajes de secuencias de comandos y las máquinas virtuales deben ser traducidos a código ejecutable nativo cada vez que se ejecuta la aplicación, imponiendo una penalización en el rendimiento. Esta pena puede ser aliviada mediante técnicas avanzadas como la compilación just-in-time, pero incluso con estas técnicas, algo de sobrecarga computacional puede ser inevitable. Las diferentes plataformas requieren el uso de formatos de paquetes nativos tales como RPM y MSI. Multiplataforma instaladores como InstallAnywhere, JExpress, InstallBuilder o IzPack satisfacer esta necesidad. Entornos de ejecución multiplataforma pueden sufrir fallos de seguridad multiplataforma, creando un ambiente fértil para el malware multiplataforma.
**Lenguajes de desarrollo y bibliotecas. ** La gente de Google ha escogido el lenguaje Java para dar soporte a aquellas personas y empresas que deseen realizar aplicaciones de forma “nativa” en la
plataforma de Android. En su renovada página developer.android.com página developer.android.com podrás encontrar toda la información que necesitas para poder hacer tus aplicaciones, ya que cuentas con tutoriales, foros, videos y códigos de ejemplo sobre cada API de Android; digamos que es el santo grial para para documentarse sobre programación en Android.
¿Pero qué pasa si no sabes programar en Java? ¿O lo probaste alguna vez y decidiste que ese no era el lenguaje de programación para ti porque hay lenguajes más cómodos y con curvas de aprendizaje más suaves? Es más, ¿qué pasa si no eres programador, no sabes nada de líneas de código pero quieres hacer esa aplicación para Android que tienes en mente? ¿Te vas a quedar fuera del mundo de las aplicaciones móviles? Ante ete escenario, debo decirte que existen diversos ambientes para programar rápidamente en Android diferentes a Java, incluso puedes hacer aplicaciones sin teclear una sola línea de código. Aquí en Androideity nos basamos en el lenguaje que ofrece oficialmente Google para sus desarrollos porque es del cual existe más información, en donde las actualizaciones están al día (como por ejemplo con Jelly Bean, que ya lo puedes descargar), y con el cuál más gente en el mundo trabaja. Pero no por eso vamos a dejar de mostrarte otras alternativas que se pueden ajustar más a tus necesidades, es por eso que te mostraremos unas herramientas que de seguro te van a interesar, y empezamos con:
Basic4Android Basic4Android es una plataforma de programación para aplicaciones Android cuyo lenguaje base de programación es VisualBasic, el eterno rival de Java, ese lenguaje que está orientado a aquellas personas que empezamos en el mundo de la programación de una manera más gráfica y no tan abstracta. No es el mismo lenguaje de Microsoft, pero su sintaxis sintaxis es la misma, lo cual tiene tiene sus mismas ventajas como algunos de sus inconvenientes.
En la página oficial encontrarás toda la documentación de este ambiente de programación para Android, http://www.basic4ppc.com Android, http://www.basic4ppc.com aquí podrías ver la sección de descargas, documentación, foros, características que lo hacen sobresalir sobre otros ambientes, así como la sección de pago, sí, ? esta plataforma no es gratuita, encontramos desde la versión mínima pago que es de 49 dólares hasta la versión máxima de 249 dólares americanos. ¿Cuál es la diferencia entre estas versiones? Es el tiempo que tienes de actualizaciones, en la de menor precio tienes completo acceso a la plataforma pero con solo 2 meses de actualizaciones, y la de mayor costo tienes 2 años de actualizaciones, lo que quiere decir por ejemplo que si compras una licencia hoy de menor precio y en 3 meses sale la actualización por ejemplo de las librerías para el uso del NFC ya no tendrás acceso a esta librería.
Mono para Android Otro de los lenguajes que Microsoft desarrollo para hacer aplicaciones fue C# y .NET, las cuales son muy usados en diferentes ambientes, por lo que no podría faltar que estos lenguajes tan comunes y opuestos a Java llegaran a Android.
Si tu ambiente de programación es Visual Studio lo único que debes instalar es el SDK de Android, la versión para Android de Mono y listo amigo, sigue desarrollando sin ningún inconveniente; además según Xamarin (la empresa creadora de Mono), trabajas con un lenguaje nativo para Android ya que no tiene un intérprete con lo tendría Basic4Android, y su aprendizaje es relativamente sencillo en un tiempo prudente si lo que buscas es hacer esa aplicación tienes ya en mente y no tienes tiempo de aprender un nuevo lenguaje. Por otro lado está el tema del costo, que para la versión más económica de Mono es de 399 dólares americanos y la más cara ni les cuento. App Inventor ¿No quieres Java, ni C#, ni C, ni .NET, ni VisualBasic, en resumidas cuentas, ningún programa de desarrollo tradicional? ¿Eres diseñador, contador, chef, médico, estudiante, en fin cualquier persona que tiene una idea de aplicación para Android sin tener necesariamente un background técnico? Perfecto, con App Inventor es para ti. Esta plataforma de desarrollo está basada en un lenguaje de desarrollo gráfico en donde no escribes ni una sola línea de código, tan solo arrastras bloques identificados con la acción que necesitas hacer y listo.
Esta plataforma de desarrollo fue impulsada por Google hace un tiempo con el fin de que más personas se unieran a la familia de Android; esta genial herramienta usa tu navegador como centro principal de trabajo, y almacena todo esto en servidores que están disponibles cada vez que entres a internet. LiveCode Imagina una plataforma en la que puedas programar tanto para Android, iOS, Windows, Linux, iPhone, iPad, Web y para Servidores con una sola plataforma de trabajo. Si ya lo imaginaste, mira si se asemeja a LiveCode.
Digamos que eres un desarrollador Web y un cliente que pidió hacer una aplicación “x”, la diseñaste, la trabajaste y con un buen tiempo quedo lista
montada en el servidor y con miles de visitas diarias. Ahora imagina que tu cliente te pide que lleves esa misma aplicación a Windows y a iOS para cubrir un mercado más grande; en ese momento debes a pensar ya en por lo menos un programador para cada plataforma, y de repente tu cliente al darse cuenta del
rumbo que tomó la tecnología hacia los dispositivos móviles, te pide que de una vez lleves tu aplicación a Android, iPhone y iPad. Entonces sale una famosa frase, “Oh por dios, ¿y ahora quien podrá defendernos?”. Una locura en verdad,
pero pasa. En vez de pensar en 5 desarrolladores nuevos para tu empresa, ¿qué tal una plataforma de desarrollo que haga todo para todas las plataformas con unos sencillos click?. Eso en resumidas cuentas es LiveCode. El lenguaje de programación que usa LiveCode se llama “Programación Orientada a Eventos”, y se basa en arrastrar elementos a un área de trabajo y programar los
eventos que estén vinculados a este elemento; por ejemplo, si arrastras un botón al área de trabajo, el evento que tienes vinculados es el click sobre ese botón, o por ejemplo si arrastras una imagen, el evento vinculado es por ejemplo moverlo sobre la pantalla. Este programa también es de pago dependiendo de que alcance quieres tener en tus desarrollos, si quieres llegar a los sistemas operativos más populares, la licencia va a ser mucho más costosa que si solo necesitas programar por ejemplo solo para Android; la licencia maá económica es de 99 dólares americanos, pero tendrás también una versión de prueba de 30 días para que evalúes y puedas por ejemplo sustentar la compra haciéndole ver los beneficios de la misma a tus jefes. In Design CS6 ¿Eres una persona que escribe libros, revistas, comics, catálogos, periódicos, y quieres que tus publicaciones estén de una manera rápida, limpia y como tú la diseñes en los dispositivos móviles Android o iOS, pero no quieres aprender ninguno de los anteriores programas para crear aplicaciones? Entonces te tenemos la solución. Desde tu CS6 podrás hacer las aplicaciones que desees sin escribir una sola línea de código.
Ok, estás creando esa revista y sabes que necesitas llevarla a los dispositivos móviles, pero no quieres aprender un lenguaje de programación para hacer una tarea que no se sabe si con las plataformas existentes puedes llevar a cabo tu cometido, pero tampoco quieres contratar a un programador que te va a decir que
esto o aquello no se puede hacer porque debes estar haciendo aplicaciones cada vez que quieras sacar una nueva publicación de tu revista. Para esto Adobe te da una solución muy sencilla, solo debes hacer 3 cosas: 1. Debes tener InDesign CS6 instalado en tu computadora. 2. Debes descargar Adobe Content View para que puedas organizar el trabajo apropiado y organizado para llevarlo a las tablets. 3. Por último debes comprar una licencia licencia dependiendo de cuántas publicaciones vaya a tener tu revista o periódico o cómic que desees realizar. El resto es por arte de magia, solo haces tu trabajo de diseño y en unos sencillos pasos tu publicación ya está lista para que las personas la compren en la tienda digital ya sea para Android o iPad.
**Base de datos que soporta**
Solución galardonada RAD Studio es una solución de desarrollo de software galardonada, utilizada por millones de desarrolladores de todo el mundo y respaldada por una comunidad activa de desarrolladores de software, socios tecnológicos y proveedores de componentes.
Conecta con los proveedores BaaS y los servicios de nube más populares usando REST Stud io XE6 Integra servicios ser vicios basados basad os en la nube de Lo nuevo de RAD Studio proveedores BaaS (Back-end as a Service) como Kinvey y Parse con componentes para servicios BaaS populares como notificaciones, gestión de usuarios y almacenamiento. Obtén un acceso fácil a servicios comunes en la nube sin tener que crear o mantenerlos individualmente. Agrega autenticación de usuario a tus aplicaciones. Usa notificaciones push para informar a tus usuarios. Acceso a datos y a la memoria de objetos en la nube. La biblioteca de cliente REST, disponible en todas las plataformas, simplifica el acceso a servicios web de REST por parte de otros proveedores.
Concede a tus aplicaciones un aspecto de Windows 7/8 con nuevos estilos VCL recuad ros y menús de Lo nuevo de XE6 Aplica estilos actualizados a los recuadros Windows más nuevos estilos personalizados. Usa estilos VCL para ofrecer un aspecto personalizado a tus aplicaciones. Los estilos se aplican a tus componentes existentes y elementos de la interfaz de usuario de forma que es fácil conseguir un aspecto nuevo sin intercambiar componentes. Selecciona entre
los estilos incluidos de diseño profesional o usa el diseñador de estilos para personalizar o crear tu propio estilo.
El desarrollo de aplicaciones para bases de datos vuelve a ser divertido con FireDAC Ahora RAD Studio incluye FireDAC, una biblioteca universal de acceso a datos d atos de alto rendimiento para desarrollar aplicaciones multidispositivo, con conexión a bases de datos empresariales. FireDAC brinda acceso nativo directo de alta velocidad desde aplicaciones creadas con Delphi y C++Builder a InterBase, SQLite, MySQL, SQL Server, Oracle, PostgreSQL, DB2, SQL Anywhere, Advantage DB, Firebird, Access, Informix y más .
Moderniza tus aplicaciones Windows Moderniza tus aplicaciones Windows XP ofreciendo un aspecto personalizado y actualizado de Windows 7/8 con nuevos estilos VCL y componentes de la barra de tareas de Windows. Accede a sensores de dispositivos con nuevos componentes VCL. Amplía tus aplicaciones VCL Windows existentes para dispositivos móviles creando con facilidad aplicaciones de acompañamiento móviles enlazadas con nuevos componentes para el anclaje de red de aplicaciones.
***Emuladores con los que cuenta*** Un emulador es un software que permite ejecutar programas o videojuegos en una plataforma (sea una arquitectura de hardware o un sistema operativo) diferente de aquella para la cual fueron escritos originalmente. A diferencia de un simulador, que solo trata de reproducir el comportamiento del programa, un emulador trata de modelar de forma precisa el dispositivo de manera que este funcione como si estuviese siendo usado en el aparato original. Un uso popular de los emuladores es el de imitar la experiencia de los videojuegos de máquinas recreativas o videoconsolas en computadoras personales, o el poder ser jugados en otras videoconsolas. La emulación de videojuegos de sistemas antiguos (abandonware) en las modernas computadoras personales y videoconsolas de hoy día resulta generalmente más cómoda y práctico que en los dispositivos originales. Sin embargo, puede ser requerido a los creadores de emuladores una licencia de software para escribir programas originales que dupliquen la funcionabilidad de la ROM y BIOS del hardware original, lo que comúnmente se conoce como high-level emulación o emulación de alto nivel.
ANDROIDTRADER Una de las plataformas de negociación de divisas más populares, MetaTrader 4, ya está disponible en su teléfono o Tablet Android completamente gratis. Con esta aplicación, usted puede controlar su cuenta y el negocio en los mercados financieros. Usted puede acceder a los mercados financieros desde cualquier
parte del mundo, en cualquier momento y de forma gratuita. Compatibilidad: Android 2.1 o nuevas actualizaciones Telefono o Tableta Android
PLATAFORMA DE TRADING IPHONE Plataforma móvil Armada para iPhone es capaz de impresionar a los Traders de todos los niveles de habilidad mediante sus amplias capacidades. Divisas completamente funcionales y comercio de metales, arsenal eficiente de las herramientas de análisis técnico más críticas (30 indicadores técnicos) y la facilidad de uso en las actividades diarias – todas estas características están disponibles en nuestra plataforma de operaciones iPhone. Usted puede acceder a los mercados financieros desde cualquier parte del mundo, en cualquier momento y de forma gratuita. Requisitos del sistema: Compatible con iPhone, iPod touch e iPad. Requiere iOS 4.0 o posterior.
Compatibilidad: •
iOS 4.0 or later
•
iPhone
•
iPod touch
•
iPad
MetaTrader4 Móvil Este terminal móvil está diseñado para su uso en PC de bolsillo (PDA) con sistema operativo Windows Mobile. El terminal móvil le ofrece la oportunidad del análisis técnico y la visualización gráfica de los instrumentos financieros (incluyendo el modo fuera de línea). Si es necesario, con el MetaTrader 4 Móvil, puede recuperar fácilmente el historial de las transacciones comerciales realizadas. Requisitos del sistema: PC de bolsillo, Windows Pocket para PC 2002 y superior.
Mobile
MetaTrader4 Edición para Smartphone (SE) Por favor descargue MetaTrader4 para Smartphone aquí. Nuestra edición MetaTrader 4 móvil para Smartphone es la terminal móvil para teléfonos inteligentes bajo el sistema MS Windows Móvil. Gráficos integrados de símbolos e indicadores técnicos, así como noticias financieras, que le ayudarán a tomar una decisión bien pensada sobre si se debe abrir o cerrar una posición.
**Tabla comparativa de plataformas** Plataforma
Plataformas de Hardware
Las plataformas de software
Diferencias
Una plataforma de hardware puede referirse a la arquitectura del ordenador o la arquitectura del procesador. Por ejemplo, los CPUs x86 y x86-64 constituyen una de las más comunes las arquitecturas de computadoras en uso en los ordenadores de propósito general. Estas máquinas suelen ejecutar una versión de Microsoft Windows, aunque también se puede ejecutar otros sistemas operativos, tales como Linux, Opens, Netas, Mac OS X y FreeBSD.Una arquitectura ARM es común en los teléfonos inteligentes y Tableé PC, que corren Androide, iOS y otros sistemas operativoss móviles. operativo Las plataformas de software puede ser un sistema operativo o entorno de programación, aunque más comúnmente se trata de una combinación de ambos. Una notable excepción a esto es Java, que utiliza un sistema operativo independiente de la máquina virtual para cada código compilado, conocido en el mundo de Java como bytecode. Ejemplos de plataformas de software incluyen
Android (sistema ( sistema operativo) para teléfonos teléfono s inteligentes y Tablet PC Microsoft pone a disposición de todo aquél que esté interesado el kit de desarrollo de software para la plataforma .NET: The Microsoft .NET Framework Software Development Kit (SDK). Este kit incluye la plataforma .NET y todo lo necesario para desarrollar, compilar, probar y distribuir aplicaciones para la plataforma .NET (así como documentación, ejemplos, herramientas en línea de comandos y compiladores). •
El SDK para la plataforma .NET
Para utilizar el kit de desarrollo de software se necesita tener uno de los siguientes sistemas operativos: Microsoft Windows NT 4.0 (Service Pack 6a) Microsoft Windows 2000 (SP 2 recomendado) Microsoft Windows XP Professional
Plataforma de computación
Se trata de una o más maquinas con sistema operativo que ofrecen procesamiento para la ejecución de aplicaciones.
Plataforma de almacenamiento
Estas plataformas suelen ser utilizadas por las aplicaciones en su ejecución y puede haber dos tipos almacenamiento relacionado (Base de Datos) o sin relacionar (Disco para almacenamiento de ficheros.
Plataforma de ejecución de aplicaciones
Son plataformas necesarias para la ejecución de una o varias aplicaciones.