En este presente trabajo hablaremos acerca de la arquitectura y el entorno de desarrollo de los dispositivos móviles.

Por otro lado
su entorno de desarrollo es también muy particular ya que tiene pocos
recursos y los necesitan administrar de una manera adecuada para darle
al usuario y mayor rendimiento con buena calidad, y es donde el entorno
de desarrollo proporciona múltiples herramientas para cumplir con estos
objetivos.
ARQUITECTURAS
La arquitectura de los dispositivos móviles nos hablan sobre las
necesidades y requerimientos de cada dispositivo como lo son memoria,
periféricos, batería, el tipo de buses, etc.
OBJETIVOS
- Mayor capacidad de procesamiento (memoria volátil RAM).
- Mayor rendimiento de la batería.
- Conectividad: siempre estar conectados (Internet).
- Capacidad de almacenamiento del dispositivo.
ARQUITECTURA ANDROID
Aplicaciones: Este
nivel contiene, tanto las incluidas por defecto de Android como
aquellas que el usuario vaya añadiendo posteriormente, ya sean de
terceras empresas o de su propio desarrollo. Todas estas aplicaciones
utilizan los servicios, las API y librerías de los niveles anteriores.
Framework de Aplicaciones: Representa
fundamentalmente el conjunto de herramientas de desarrollo de cualquier
aplicación. Toda aplicación que se desarrolle para Android, ya sean las
propias del dispositivo, las desarrolladas por Google o terceras
compañías, o incluso las que el propio usuario cree, utilizan el mismo
conjunto de API y el mismo "framework", representado por este nivel.
API :
Activity Manager: gestiona el ciclo de vida de las aplicaciones en Android. Window Manager: Gestiona las ventanas de las aplicaciones y utiliza la librería Surface Manager.
Telephone Manager: Incluye todas las API vinculadas a las funcionalidades propias del teléfono (llamadas, mensajes, etc.).
Content Provider: Permite
a cualquier aplicación compartir sus datos con las demás aplicaciones
de Android. Por ejemplo, gracias a esta API la información de contactos,
agenda, mensajes, etc. será accesible para otras aplicaciones.
View System: Proporciona
un gran número de elementos para poder construir interfaces de usuario
(GUI), como listas, mosaicos, botones, "check-boxes", tamaño de
ventanas, control de las interfaces mediante teclado, etc. Incluye
también algunas vistas estándar para las funcionalidades más frecuentes.
Location Manager: Posibilita a las aplicaciones la obtención de información de localización y posicionamiento.
Notification Manager: Mediante
el cual las aplicaciones, usando un mismo formato, comunican al usuario
eventos que ocurran durante su ejecución: una llamada entrante, un
mensaje recibido, conexión Wi-Fi disponible, ubicación en un punto
determinado, etc. Si llevan asociada alguna acción, en Android
denominada Intent, (por ejemplo, atender una llamada recibida) ésta se activa mediante un simple clic.
XMPP Service: Colección de API para utilizar este protocolo de intercambio de mensajes basado en XML.
- Librerías: La siguiente capa se corresponde con las librerías utilizadas por Android. Éstas han sido escritas utilizando C/C++ y proporcionan a Android la mayor parte de sus capacidades más características. Junto al núcleo basado en Linux, estas librerías constituyen el corazón de Android.
Librería Surface Manager: Es
la encargada de componer los diferentes elementos de navegación de
pantalla. Gestiona también las ventanas pertenecientes a las distintas
aplicaciones activas en cada momento.
OpenGL/SL y SGL: Representan
las librerías gráficas y, por tanto, sustentan la capacidad gráfica de
Android. OpenGL/SL maneja gráficos en 3D y permite utilizar, en caso de
que esté disponible en el propio dispositivo móvil, el hardware
encargado de proporcionar gráficos 3D. Por otro lado, SGL proporciona
gráficos en 2D, por lo que será la librería más habitualmente utilizada
por la mayoría de las aplicaciones. Una característica importante de la
capacidad gráfica de Android es que es posible desarrollar aplicaciones
que combinen gráficos en 3D y 2D.
Librería Media Libraries: Proporciona
todos los códecs necesarios para el contenido multimedia soportado en
Android (vídeo, audio, imágenes estáticas y animadas, etc.)
FreeType: Permite trabajar de forma rápida y sencilla con distintos tipos de fuentes.
Librería SSL: Posibilita la utilización de dicho protocolo para establecer comunicaciones seguras.
Librería SQLite: Creación y gestión de bases de datos relacionales.
Librería WebKit: Proporciona
un motor para las aplicaciones de tipo navegador y forma el núcleo del
actual navegador incluido por defecto en la plataforma Android.
- Tiempo de ejecución de Android: Al
mismo nivel que las librerias de Android se sitúa el entorno de
ejecución. Éste lo constituyen las Core Libraries, que son librerias con
mulititud de clases Java y la máquina vistual Dalvik.
- Núcleo Linux: Android utiliza el núcleo de Linux 2.6 como una capa de abstracción para el hardware disponible en los dispositivos móviles. Esta capa contiene los drivers necesarios para que cualquier componente hardware pueda ser utilizado mediante las llamadas correspondientes. Siempre que un fabricante incluye un nuevo elemento de hardware, lo primero que se debe realizar para que pueda ser utilizado desde Android es crear las librerias de control o drivers necesarios dentro de este kernel de Linux embebido en el propio Android.
ENTORNO DE DESARROLLO
Es el entorno de programación que ha siso empaquetado como un programa
de aplicación, es decir, consiste en un editor de código, un compilador,
un depurador y un constructor de interfaz grafica, pueden ser
aplicaciones por si solas o ser aplicaciones existentes.
Carbide.C++
Es una herramienta para desarrollo de software pero en lenguaje c++, destinado a dispositivos que funcionan bajo Symbian OS. Se utilizan tanto para desarrollar los teléfonos que incorporan dicho OS, como para las aplicaciones que ejecutan estos.
X CODE
Es el entorno de desarrollo integrado de Apple inc, está diseñado especial mente para diseño en cocoa, cuando se crea un proyecto Xcode configura su ambiente de desarrollo inicial usando plantillas de proyectos correspondientes a tipos de proyecto cocoa, También utiliza el compilador GNU para depurar ese software
NetBeans
Es un entorno de desarrollo y una herramienta para que los programadores puedan escribir, compilar depurar y ejecutar programas, está escrito en java, pero puede servir para cualquier otro lenguaje de programación.
Carbide.C++
Es una herramienta para desarrollo de software pero en lenguaje c++, destinado a dispositivos que funcionan bajo Symbian OS. Se utilizan tanto para desarrollar los teléfonos que incorporan dicho OS, como para las aplicaciones que ejecutan estos.
X CODE
Es el entorno de desarrollo integrado de Apple inc, está diseñado especial mente para diseño en cocoa, cuando se crea un proyecto Xcode configura su ambiente de desarrollo inicial usando plantillas de proyectos correspondientes a tipos de proyecto cocoa, También utiliza el compilador GNU para depurar ese software
NetBeans
Es un entorno de desarrollo y una herramienta para que los programadores puedan escribir, compilar depurar y ejecutar programas, está escrito en java, pero puede servir para cualquier otro lenguaje de programación.
- J2ME
- ANDROID
ECLIPSE
Es un entorno de desarrollo integrado de código abierto multiplataforma para desarrollar lo que el proyecto llama “aplicaciones de cliente enriquecido” opuesto a las aplicaciones “cliente liviano” basadas en navegadores.
Es un entorno de desarrollo integrado de código abierto multiplataforma para desarrollar lo que el proyecto llama “aplicaciones de cliente enriquecido” opuesto a las aplicaciones “cliente liviano” basadas en navegadores.
- J2ME
- ANDROID
CONCLUSIONES
Debemos darnos cuenta de la importancia que supone la navegación a
través de dispositivos móviles, hoy en día. En los últimos años, la
tendencia ha tomado normalidad y ha ido en constante crecimiento, y esta
curva de crecimiento nos llevará a que en los próximos años el número
de accesos a internet entre dispositivos móviles y ordenadores se
iguale.
En otras palabras,la importancia de desarrollar de aplicaciones moviles para diferentes plataformas de dispositivos móviles, como para ordenadores sera demandante.
En otras palabras,la importancia de desarrollar de aplicaciones moviles para diferentes plataformas de dispositivos móviles, como para ordenadores sera demandante.
No hay comentarios:
Publicar un comentario