ADA 5: Plataformas de programación
Mauricio Gómez García
Constanza Moreno Estrada
Yuri Canhel Balam Toraya
Gerardo Marrufo Palomino
1
Definición
Una plataforma móvil es un entorno de desarrollo de software específico que se
centra en la creación, prueba y mantenimiento de aplicaciones diseñadas para ser
ejecutadas en dispositivos móviles, como smartphones y tabletas. Estas plataformas
integran una serie de herramientas y recursos que permiten a los desarrolladores
trabajar de manera eficiente en el desarrollo de aplicaciones móviles. A continuación,
se describen las características clave de una plataforma móvil:
Entorno de Programación: Proporciona editores de código optimizados para el
desarrollo móvil, con características que facilitan la escritura y modificación del
código fuente de las aplicaciones.
Compiladores e Intérpretes: Incluye herramientas que traducen el código fuente
escrito en lenguajes de programación específicos (como Java, Kotlin, Swift o
JavaScript) a un formato ejecutable por el sistema operativo del dispositivo móvil.
Depuradores: Ofrece herramientas integradas que permiten a los desarrolladores
identificar y corregir errores en el código de manera eficiente, facilitando un ciclo
de prueba y ajuste más rápido.
Bibliotecas y APIs: Proporciona acceso a conjuntos de funciones y servicios
predefinidos que simplifican el desarrollo, permitiendo a los desarrolladores reutilizar
código y aprovechar capacidades específicas del dispositivo, como la cámara, GPS
y conectividad de red.
2
Historia
Historia de las Plataformas de Programación: Desde 1980 Hasta Hoy
Desde la creación de los primeros lenguajes de programación en la década de 1950
hasta las modernas
1980s
Aparición de sistemas de operación como DOS y Unix, dieron origen a lenguajes de
programación como C. Desarrollado por Dennis Ritchie , se considera el precursor
de muchos lenguajes modernos. El lenguaje de programación BASIC se convirtió
en una elección popular en las primeras computadoras personales, gracias a IBM
PC y su compatibilidad.
1990s
Las plataformas de programación evolucionaron para la computación orientada
a objetos. Surgieron lenguajes como C++, una mejora de C con soporte para
programación orientada a objetos, y Python, que se convirtió en un favorito para
la escritura de código rápido y legible.
También se produjo una revolución con la llegada de la World Wide Web dando
lugar a lenguajes como HTML, JavaScript y PHP. Asimismo, se creó Java, un
lenguaje de programación diseñado para ser independiente de la plataforma, lo que
significa que se puede ejecutar en cualquier sistema operativo.
2000s
La creciente popularidad de Internet y el software como servicio (SaaS) llevaron
al desarrollo de lenguajes más modernos y plataformas de programación que
soportaban aplicaciones web y móviles.
.NET de Microsoft se lanzó en 2002, proporcionando un nuevo framework para el
desarrollo de software. Surgieron lenguajes como Ruby y su marco de aplicación web
Ruby on Rails, que hizo que la creación de aplicaciones web fuese más accesible. El
lenguaje de programación Swift fue introducido por Apple en 2014 para desarrollar
aplicaciones iOS y MacOS, proporcionando una alternativa a Objective-C.
3
2020s
Con la creciente necesidad de manejar grandes volúmenes de datos, los lenguajes
de programación como R y Python se han convertido en favoritos en el campo
de la ciencia de datos. Por otro lado, JavaScript ha ampliado su dominio en el
desarrollo web con la aparición de frameworks como React, Angular y [Link].
Las plataformas de programación también han evolucionado hacia la computación
en la nube, con servicios como AWS, Google Cloud y Azure proporcionando una
variedad de servicios para alojar y ejecutar aplicaciones
4
Uso
Usos: por las distintas herramientas que entran dentro de la clasificación de
‘plataformas de programación’, éstas tienen varios usos. Algunos de ellos son:
• Testeo (pruebas)
• Administración
• Diseño de páginas web
• Debugging
• Mantenimiento de programas empresariales
• Automatización de procesos
• Simulación y modelado
Tipos
Las plataformas de programación móvil permiten a los desarrolladores crear apli-
caciones que se ejecutan en dispositivos móviles como teléfonos inteligentes y
tabletas. Existen varios tipos de plataformas según el enfoque que se quiera dar
a la aplicación (nativa, híbrida, o multiplataforma). A continuación, te explico
algunas de las más populares:
Plataformas Nativas
Estas plataformas se utilizan para desarrollar aplicaciones específicas para un
sistema operativo (iOS o Android), lo que garantiza un alto rendimiento y una
excelente integración con las características del hardware.
Lenguajes de programación: Swift, Objective-C Entorno de desarrollo: Xcode
Ventajas: Alto rendimiento, acceso a las API nativas del dispositivo, integración
con el ecosistema de Apple. Desventajas: Sólo funciona en dispositivos Apple.
Android (Google)
Lenguajes de programación: Kotlin, Java Entorno de desarrollo: Android Studio
Ventajas: Gran comunidad de desarrollo, integración con servicios de Google.
Desventajas: Fragmentación de dispositivos, lo que puede hacer que las pruebas y
optimizaciones sean más difíciles.
Plataformas Híbridas
Las aplicaciones híbridas combinan elementos nativos y tecnologías web, lo que
permite ejecutar una sola aplicación en múltiples plataformas. Las aplicaciones
5
híbridas se desarrollan utilizando tecnologías web estándar (HTML, CSS, JavaScript,
Python) y luego se empaquetan como aplicaciones móviles.
6
Ejemplos
Git
Git es una plataforma de programación que se enfoca en proveer un controlador de
versiones de software, y aunque su especialidad no es tal cual proveer un entorno
de desarrollo del software en si, es indispensable para poder manejar versiones de
software y tener una dinámica de desarrollo fija.
Visual Studio
Visual Studio, ofrecido por Microsoft, es un entorno que permite a los desarrolladores
crear y trabajar con el lenguaje de C#, entre muchos otros más, con el fin de crear
y desarrollar aplicaciones nativas para Windows. Cuenta con muchas librerias y
paquetes para distintos lenguajes de programación, y la habilidad de compilar los
programas para uso en el sistema operativo Windows.
Android Studio
Similar a Visual Studio, es un entorno que permite al desarrollador crear y de-
sarrollar aplicaciones para los sistemas operativos basados en Android. Cuenta
con las librerias y apis necesarias para que las aplicaciones creadas tengan toda la
programación necesaria para su buen funcionamiento, e incluye un emulador de
Andriod lo que permite probar los programas previo a su lanzamiento oficial.
GCC (Gnu C Compilor)
A diferencia de los ejemplos previos, GCC es únicamente un compilador, el cual
permite pasar código fuente a una aplicación o binario ejecutable que funcione
en una plataforma o sistema operativo. Es importante mencionarlo, ya que es
muy utilizado para la elaboración de programas de bajo nivel y usualmente más
eficientes, aunque es importante aclarar que los binarios compilados son exclusivos
de ciertas arquitecturas de computadora. GCC, en conjunto con G++, se utilizan
para compilar los lenguajes de C/C++, respectivamente.