domingo, 13 de noviembre de 2022

VENTAJAS DE ANDROID STUDIO

 

Ventajas de Android Studio

Permite ejecutar las compilaciones de forma muy rápida, y así poder comprobar en el momento los fallos y mejoras de la aplicación. Realiza renderizados de layouts en tiempo real, y cuenta con la posibilidad de utilizar parámetros tools. Ejecuta la aplicación en tiempo real desde el propio teléfono móvil. Su potente emulador ayuda a comprobar el estado de la aplicación en el momento, sin necesidad de un ordenador.

Permite simular diferentes dispositivos y tabletas, pudiendo visualizarlas en un mismo entorno. De esta forma podemos trabajar varias aplicaciones simultáneamente y ver las partes de código necesarias de cada una.

Podrás crear elementos gráficos para la interfaz de tu aplicación sin necesidad de utilizar el código. Esta función te ayudará a diseñar el aspecto visual de tu App de una forma muy sencilla.

Es el IDE oficial de Android. Esto asegura el correcto funcionamiento del software, ya que es el mismo que utilizan los propios desarrolladores del sistema operativo oficial de Android para crear todas sus aplicaciones.

Estas son las principales ventajas de este IDE, aunque encontrarás muchas más si lo utilizas como tu herramienta de desarrollo. Sin embargo, como en todo, también podrás encontrar algunas desventajas.

Gestión de información por medio de bases de dato

 

Base de Datos Moviles

15
MAR

  Inicialmente las aplicaciones inalámbricas para dispositivos móviles eran programas totalmente desconectados de las empresas o sistemas de computación. Esto desde el punto de vista en tiempo real. Estas aplicaciones eran por lo general Palm Pilots limitadas a libreta de direcciones, horarios, etc. Esta pequeña base de datos estaba bien para ese momento, pero a medida que avanza la tecnología, las personas necesitan más.

    Surgen las redes inalámbricas, pero existe el problema de disponibilidad de dispositivos inalámbricos y teléfonos WAP (Wireles Application Protocol) que se encuentran limitados en memoria y el tamaño de la pantalla para mostrar la información, además que introducir información en estos dispositivos móviles puede llegar a ser bastante difícil por su tamaño. De todas formas la tecnología es excelente, la habilidad que se tiene para conectarse al World Wide Web desde casi cualquier sitio en cualquier momento es una de las mayores ventajas que se tiene en la era de la información.

  Con Internet inalámbrico, ya no es necesario estar físicamente frente al computador personas o dentro de las empresas para poderse conectar a las aplicaciones o las base de datos. Con las portabilidad de la tecnología inalámbrica, nos podemos conectar a Internet o la intranet de la empresa para tomar datos almacenados. Estos datos están estructurados y organizados en entidades y objetos que se encuentran disponibles para los usuarios como información. La mayor ventaja se encuentra en que se le da la información al usuario en el mismo momento que es solicitada.

Base de Datos Móviles

    Es una Base de datos donde los usuarios pueden acceder a la información lejos de donde se encuentra almacenada la base de datos, se hace utilizando una conexión inalámbrica

Sistemas de Base de datos móviles:

    • Es la habilidad de recuperar la información de los sistemas de computación y/o repositorios de información sobre dispositivos móviles en cualquier momento en cualquier lugar. Además de introducir o actualizar información en los sistemas principales de forma remota desde el dispositivo móvil. Esto da toda la libertad al usuario de manipular toda la información desde lejos.
    • Es un sistema distribuido que soporta conectividad móvil, posee todas las capacidades de un sistema de base de datos y permiten a las unidades móviles, una completa movilidad espacial por medio de la tecnología inalámbrica

Procesamiento de Consultas

    • El único reto en los SMBDM es el procesamiento de consultas (queries) que dependen de la localización física de la unidad móvil
    • Consultas dependientes de la localización: Son consultas que involucran la localización física de la unidad móvil en combinación con otros datos como la localización de otras unidades móviles o estructuras físicas.

         Ejemplo: Encontrar el hotel mas cercano desde donde me encuentro con un precio < $50

    • Para dar respuesta a esta consulta, se debe poder determinar con exactitud la localización de la unidad móvil y estar en la capacidad de procesar de manera espacial los datos a consultar.
    • Utilizar la triangulación si el dispositivo se encontrara en múltiples celdas, por localización de celdas, GPS, etc.
    • Se tiene que tomar en cuenta que la unidad puede estar en movimiento mientas se realiza la consulta
Manejo de transaccione Se considera el manejo de transacciones cuando un dispositivo móvil inicia una transacción hacia la base de datos o hacia un servidor fijo. La transacción puede ejecutarse en el servidor o en el dispositivo móvil.

Se debe tomar en cuenta:

    • Desconexiones, movilidad, errores, fallas en el dispositivo móvil.
    • Se debe mantener la autonomía y la consistencia local del SMBD.

Tecnología inalámbrica

    La evolución de esta tecnología comenzó alrededor de 1996, fue allí cuando se desarrollaron los pequeños dispositivos de computación “inteligentes” tales como las Palm o PC de bolsillo (Pocket PC), luego en 1997 surge la conectividad inalámbrica de los dispositivos utilizando WAP (Wireless Aplication Protocol).

   WAP – Wirereless Aplication Protocol (protocolo de aplicaciones inalámbricas) es un estándar abierto internacional para aplicaciones que utilizan las comunicaciones inalámbricas, como acceso a servicios de Internet desde un teléfono móvil.

  Se trata de la especificación de un entorno de aplicación y de conjunto de protocolos de comunicaciones para normalizar el modo en que los dispositivos inalámbricos, se pueden utilizar para acceder a correo electrónico, base de datos, grupos de noticias y otros.

   El organismo que se encarga de desarrollar el estándar WAP fue originalmente el WAP Forum, fundado por cuatro empresas del sector de las comunicaciones móviles, Sony-Ericsson, Nokia, Motorola y Openwave (originalmente Unwired Planet). Desde 2002 el WAP Forum es parte de la Open Mobile Alliance (OMA), consorcio que se ocupa de la definición de diversas normas relacionadas con las comunicaciones móviles, entre ellas las normas WAP.

Redes Inalámbricas

Existen diferentes tipos de redes inalámbricas:

    • Celular: Costos elevados con poco ancho de banda, buena cobertura
    • LAN Inalámbrica: Bajo costo, poco rango de cobertura, buen ancho de banda (54Mbps)
    • Satelital: Amplia cobertura, muy costosa, gran ancho de banda en sentido descendente y poco ascendente.
    • Redes Ad Hoc: Comunicación entre dispositivos móviles de manera directa. (Bluetooth)

Tipos de Dispositivos Móviles

Los dispositivos usados para conectarse son:

    • PDA, (Asistente Personal Digital – Personal Digital Assistant). Fue usado en sus inicios como una unidad que almacenaba el calendario personal, libreta de direcciones, calculadora, quizás un programa sencillo de intercambio de moneda y usualmente un mapa con las zonas horarias. Luego expanden sus funciones y generan los dispositivos Palm, los cuales poseen sincronización con el PC, mayor memoria con capacidad de expansión y se agregan varias funcionalidades como el correo electrónico, juegos, etc.
    • Palm abre su sistema operativo, permitiendo a los desarrolladores la oportunidad de crear programas específicos para este dispositivo. Las nuevas unidades tienen pantalla a colores, módem, capacidad inalámbrica para sincronización además de conexión a Internet entre otras funcionalidades.
    • Pocket PC`s. Son dispositivos que poseen el sistema operativo Windows CE, inicialmente basado en Windows 3.1, Lince básicamente maneja la comunicación entre el hardware y las aplicaciones que se ejecutan allí. Es un sistema operativo muy modular, puede ser ejecutado en gran cantidad de plataformas y aplicaciones. Estos dispositivos son realmente pequeñas computadoras.
    • Teléfono celular con conexión a Internet. Este dispositivo tiene un navegador WAP (Wireles Access Protocol) integrado, que se adquiere directamente en las empresas de telefonía celular.

Estructura y Características

Todas las bases de datos móviles tienen una arquitectura similar, donde debemos distinguir una serie de elementos principales característicos de este tipo de sistemas:

    • Servidor de base de datos corporativo y SMBD que gestiona y almacena los datos corporativos y proporciona aplicaciones corporativas. Se correspondería con el SMBD y el servidor que se utiliza en la organización.
    • Base de datos remota y SMBD que gestiona y almacena los datos móviles. Son las bases de datos que deben estar implementadas en los dispositivos móviles.
    • Plataforma de base de datos móvil, que puede ser un ordenador portátil, PDA u otro dispositivo de acceso a Internet, es decir, los dispositivos móviles en cuestión.
    • Enlaces de comunicación bidireccionales entre el SMBD corporativo y el SMBD móvil. Que pueden ser redes inalámbricas de distinta naturaleza, comunicaciones vía satélite, etc.

Arquitectura BDMóviles


Si nos fijamos en la figura anterior, podemos observar dónde reside la complejidad de este tipo de sistemas que coinciden con las partes no comunes con respecto a las bases de datos tradicionales. Nos referimos al sistema gestor de base de datos móvil (SMBD móvil) y al enlace de comunicaciones. En una base de datos móvil, la comunicación entre los dispositivos es una parte importante, ya que es imprescindible una buena comunicación para el acceso a los datos. La arquitectura de comunicaciones más utilizada consiste en tener una o varias estaciones base en contacto con la base de datos corporativa y una serie de estaciones móviles que acceden a los datos a través de las estaciones base. Por tanto podemos encontrarnos con alguna cuestión importante relacionada con el acceso o la localización, como puede ser localizar una estación móvil que contenga los datos que necesitamos en un momento determinado. Para solucionar dicho problema existen varias soluciones propuestas, por ejemplo, que cada estación móvil esté asociada a una estación base principal la cuál conoce en todo momento la localización de la estación móvil debido a que la principal reciba notificaciones de los movimientos de la estación móvil.

SMBD Móviles

IBM: DB2 Everyplace 

   DB2 Everyplace forma parte de la solución de IBM para procesos de informática distribuida. Mediante DB2 Everyplace, los profesionales que se desplazan con frecuencia (tales como vendedores, inspectores, auditores, técnicos de mantenimiento, médicos, agentes inmobiliarios y tasadores de seguros) pueden tener acceso a datos vitales que necesitan mientras están lejos de su centro de trabajo.

   Las empresas pueden ahora transferir sus datos corporativos DB2 a dispositivos portátiles o incorporados. Con DB2 Everyplace, puede acceder a una base de datos contenida en su dispositivo portátil y realizar actualizaciones en ella. Con DB2 Everyplace Sync Server, puede sincronizar datos entre el dispositivo portátil y otras fuentes de datos ubicadas en la empresa. El Adaptador de Archivos le permite distribuir archivos y aplicaciones hacia usuarios portátiles.

SYBASE

ADAPTIVE SERVER ANYWHERE

   Sybase ha creado una tecnología que permite una empresa sin cables para sus clientes y socios mediante soluciones de software de integración y desarrollo, infraestructura móvil.

   SQL Anywhere Studio contiene la última versión de la base de datos móvil más vendida, Adaptive Server Anywhere. Este pequeño, aunque muy potente motor de bases de datos, puede soportar implementaciones mono- usuario o multi-usuario y provee completo procesamiento transaccional de alto rendimiento. Estas características combinadas, hacen que sea el ambiente ideal de base de datos para entornos móviles.

   Provee una rica funcionalidad, incluyendo procedimientos almacenados, triggers, integridad referencial, bloqueo a nivel de fila, recuperación automática, y mucho más. También es muy eficiente a la hora de consumir recursos ya que necesita sólo aproximadamente 1 MB RAM, y 2 KB por cada conexión cliente.

SQL SERVER CE

MICROSOFT SQL SERVER CE

  Microsoft provee una herramienta que consiente extender las aplicaciones empresariales de un organización, a los dispositivos móviles, como lo es SQL Server CE es ideal para aplicaciones móviles, ya que permite implementar la funcionalidad de una base de datos relacional y tiene la capacidad de brindar acceso a los datos de una manera flexible y similar a SQL Server, al mismo tiempo que permite conectarse a un servidor SQL Server central y mantener actualizada la información.

  También Microsoft se posiciona como proveedor de herramientas para la generación de soluciones para dispositivos móviles. Dentro de las herramientas de desarrollo: smart Device Extensions (SDE) for Visual Studio.Net  y expande las capacidades del .NET framework para permitir generar aplicaciones móviles para Pocket o Pocket Pc y Smartphone

    El acceso remoto a datos y el merge replication (Permite que se realice cambios en los dispositivos y en el servidor de forma independiente) , que trabaja sobre Hypertext Transfer Protocol (HTTP) y codificación de soporte, garantizan un envío seguro de los datos de las bases de datos de empresa de SQL Server y que estos datos se pueden manipular posteriormente sin conexión y sincronizar después con el servidor.

SQLite

   Es un sistema de gestión de bases de datos relacional compatible con ACID (En bases de datos se denomina ACID a un conjunto de características necesarias para que una serie de instrucciones puedan ser consideradas como una transacción. Así pues, si un sistema de gestión de bases de datos es ACID compliant quiere decir que el mismo cuenta con las funcionalidades necesarias para que sus transacciones tengan las características ACID. En concreto ACID es un acrónimo de Atomicity, Consistency, Isolation and Durability: Atomicidad, Consistencia, Aislamiento y Durabilidad), contenida en una relativamente pequeña (~275 kiB)2 biblioteca escrita en C. SQLite es un proyecto de dominio público creado por D. Richard Hipp.

   A diferencia de los sistemas de gestión de bases de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. El programa utiliza la funcionalidad de SQLite a través de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son más eficientes que la comunicación entre procesos. El conjunto de la base de datos (definiciones, tablas, índices, y los propios datos), son guardados como un sólo fichero estándar en la máquina host. Este diseño simple se logra bloqueando todo el fichero de base de datos al principio de cada transacción.

En su versión 3, SQLite permite bases de datos de hasta 2 Terabytes de tamaño, y también permite la inclusión de campos tipo BLOB

El autor de SQLite ofrece formación, contratos de soporte técnico y características adicionales como compresión y cifrado.

Software que utiliza SQLite

SQLite es utilizado en una gran variedad de aplicaciones, destacando las siguientes:

    • Adobe Photoshop Elements utiliza SQLite como motor de base de datos en su última versión del producto (la 6.0) en sustitución del Microsoft Access, utilizado en las versiones anteriores.
    • Mozilla Firefox usa SQLite para almacenar, entre otros, las cookies, los favoritos, el historial, las direcciones de red válidas.
    • Varias aplicaciones de Apple utilizan SQLite, incluyendo Apple Mail y el gestor de RSS que se distribuye con Mac OS X. El software Aperture de Apple guarda la información de las imágenes en una base de datos SQLite, utilizando la API Core Data.
    • El navegador web ópera usa SQLite para la gestión de bases de datos WebSQL.
    • Skype es otra aplicación de gran despliegue que utiliza SQLite.
    • XBMC Media Center (antes conocido como «XBox Media Center») es un reproductor de medios de audio, video, fotos, etc de código libre (open source) multi-plataforma a la vez que un centro de entretenimiento. Usa SQLite para administrar las librerías de música, video y fotografías, listas de reproducción y bookmarks entre otras utilidades menores.
    • [[NiconPersonal] Agenda personal de contactos escrita en JAVA y desarrollada por NiconSystem Inc. con laboratorio en Colombia, usa SQLite para la gestión de contactos, recordatorio y sincronización de notas (NiconNotes) y su sistema de finanzas personales, además de otras utilidades que hacen de NiconPersonal muy eficiente en su tarea.

Debido a su pequeño tamaño, SQLite es muy adecuado para los sistemas integrados, y también está incluido en:

    • Android
    • BlackBerry
    • Google Chrome
    • iOS
    • Maemo
    • MeeGo
    • Symbian OS4
    • webOS

Servicios SMBD Móviles

Un SMBD móvil debe ofrecer los servicios de un SMBD tradicional, además de funcionalidad adicional requerida por los SMBD móviles, que incluye la capacidad de:

    • Comunicarse con el servidor centralizado de la base de datos utilizando técnicas como la comunicación inalámbrica o el acceso a Internet.
    • Replicar los datos en el servidor de base de datos centralizado y en el dispositivo móvil.
    • Sincronizar los datos del servidor de base de datos centralizado y en el dispositivo móvil.
    • Capturar datos de varias fuentes, por ejemplo, de Internet.
    • Gestionar datos en el dispositivo móvil.
    • Analizar los datos almacenados en el dispositivo móvil.
    • Crear aplicaciones móviles personalizadas.

Ventajas e Inconvenientes

Las principales ventajas que hemos detectado en las bases de datos móviles son las siguientes:

    • Permiten la movilidad de los usuarios, por lo que no es necesario estar físicamente en la organización para acceder a sus datos. Éstos pueden ser accedidos remotamente.
    • El mercado potencial de este tipo de bases de datos es bastante amplio, ya que multitud de empresas de todo tipo poseen trabajadores que necesitan acceder a los datos de la compañía mientras se encuentran en localizaciones remotas.
    • Estas bases de datos poseen un gran ámbito de aplicación ya que en principio cualquier base de datos relacional puede ampliarse para ofrecer los servicios de las bases de datos móviles.

Los principales inconvenientes que hemos observado en las bases de datos móviles son los siguientes:

    • Los enlaces de comunicaciones juegan un papel importante es el desarrollo de estos sistemas, por lo que su dependencia puede suponer un freno para ellos.
    • Los datos pueden estar replicados, por lo que consistencia y coherencia de los mismos son fundamentales y puede generar conflictos importantes.
    • El tratamiento de fallos es un aspecto delicado ya que al tratarse de un entorno distribuido, los fallos de transmisión de datos deben de solucionarse y detectarse de forma eficiente para que no produzcan errores en la información tratada.

La capacidad de procesado de los dispositivos móviles son también un inconveniente importante y también hay que tener en cuenta que dicha capacidad no es la misma para todos los dispositivos.