miércoles, 17 de febrero de 2016

Arquitectura Android

Arquitectura Android

Como ya se ha mencionado, Android es una plataforma para dispositivos móviles que contiene una pila de software donde se incluye un sistema operativo, middleware y aplicaciones básicas para el usuario. 

        En las siguientes líneas se dará una visión global por capas de cuál es la arquitectura empleada en Android. Cada una de estas capas utiliza servicios ofrecidos por las anteriores, y ofrece a su vez los suyos propios a las capas de niveles superiores, tal como muestra la siguiente figura :

  • 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.
        Entre las API más importantes ubicadas aquí, se pueden encontrar las siguientes:
·         Activity Manager: Conjunto de API que gestiona el ciclo de vida de las aplicaciones en Android.
·        Window ManagerGestiona 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.
              Entre las librerías más importantes ubicadas aquí, se pueden encontrar las siguientes:
·         Librería libc: Incluye todas las cabeceras y funciones según el estándar del lenguaje C. Todas las demás librerías se definen en este lenguaje.
·        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 SQLiteCreació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 AndroidAl 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 LinuxAndroid 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.

viernes, 12 de febrero de 2016

Entornos de desarrollo para móviles

  1. 1. Entornos De Desarrollo Para Móviles<br />1<br />
  2. 2. Un IDE es un entorno de programación que ha sido 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 gráfica (GUI). Los IDEs pueden ser aplicaciones por sí solas o pueden ser parte de aplicaciones existentes.<br />2<br />¿Que es un Entornos De Desarrollo Para Móviles(IDE)?<br />
  3. 3. Carbide.c++<br /> Es una herramienta para el desarrollo de software en lenguaje C++ destinado a dispositivos que funcionan bajo Symbian OS. Se usa tanto para desarrollar los teléfonos que incorporan dicho OS como para las aplicaciones que ejecutan estos.<br />Está formada por una familia de IDEs desarrollada por Nokia, basada en Eclipse, al que se han incorporado plug-ins para el desarrollo de Symbian OS. Reemplazó a CodeWarrior como primer entorno de desarrollo para Symbian OS.<br />Desde la versión 2.0, Carbide.c++ es gratuito y se ofrece en tres versiones (Developer, Professional, y OEM).1<br />3<br />
  4. 4. XCODE<br />Es el entorno de desarrollo integrado (IDE, en sus siglas en inglés) de Apple Inc. y se suministra gratuitamente junto con Mac OS X. Xcode trabaja conjuntamente con Interface Builder, una herencia de NeXT, una herramienta gráfica para la creación de interfaces de usuario.<br />Xcode incluye la colección de compiladores del proyecto GNU (GCC), y puede compilar código C, C++, Objective-C, Objective-C++, Java y AppleScript mediante una amplia gama de modelos de programación, incluyendo, pero no limitado a Cocoa, Carbón y Java. Otras compañías han añadido soporte para GNU Pascal, Free Pascal, Ada y Perl.<br />Entre las características más apreciadas de Xcode está la tecnología para distribuir el proceso de construcción a partir de código fuente entre varios ordenadores, utilizando Bonjour.<br />4<br />
  5. 5. XCODE<br />Xcode está diseñado especialmente para desarrollo en Cocoa.  Cuando creamos un proyecto, Xcode configura su ambiente de desarrollo inicial usando plantillas de proyectos correspondientes a tipos de proyectos Cocoa: aplicación, aplicación basada en documentos, aplicación Core Data, herramienta, colección, marco de trabajo, y otros.  Para compilar software Cocoa para Mac OS X, <br />Xcode usa el compilador GNU (gcc), y para depurar ese software, usa el depurador de nivel fuente GNU.  Ambos gcc y gdb han sido usados en el desarrollo Cocoa desde que Cocoa era NeXTSTEP, y a lo largo de los años ha sido refinado, extendido, y afinado para soportar la compilación y la depuración de binarios Cocoa.<br />5<br />
  6. 6. Microsoft Visual Studio<br />Microsoft Visual StudioDesarrollador MicrosoftMicrosoft Visual Studio 2010- E general Lanzamiento inicial30 de julio de 1998; hace 12 años Última versión estable10.0.30319.1 RTM (Visual Studio 2010) (Microsoft Visual Studio 2010- El sitio oficial de Visual Studio 2010 info)<br />Es un entorno de desarrollo integrado (IDE) para sistemas operativos Windows. Soporta varios lenguajes de programación tales como Visual C++, Visual C#, Visual J#, ASP.NET y Visual Basic .NET, aunque actualmente se han desarrollado las extensiones necesarias para muchos otros.<br />Visual Studio permite a los desarrolladores crear aplicaciones, sitios y aplicaciones web, así como servicios web en cualquier entorno que soporte la plataforma .NET (a partir de la versión net 2002). Así se pueden crear aplicaciones que se intercomuniquen entre estaciones de trabajo, páginas web y dispositivos móviles.<br />-Symbian<br />6<br />
  7. 7. NETBEANS<br />es un entorno de desarrollo - 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<br />- J2ME<br />- Android<br />7<br />
  8. 8. ECLIPSE<br />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. <br />- J2ME<br />-Android<br />8<br />

Sistemas operativos emergentes

Estamos inundados de términos y siglas. En este caso creo que desde hace más de un año ronda por el entramado de la nueva web un concepto que merece la pena analizar:Social Operating Systems (que lo traducimos como Sistemas Operativos Sociales y si lo simplificamos en siglas casi que pediríamos socorro denominándolos SOS). El concepto de redes sociales está evolucionando hacia la primacía del sujeto o individuo más que los contenidos. Algo que se oculta en otras tipos de herramientas como los wikis.
Por otro lado tenemos la madurez de herramientas WebTops (Web Desktops) o WebOSque hace posible tener nuestro espacio de alojamiento e interacción como si se tratara de un sistema operativo virtual.

Pues bien, a partir de lo dicho anteriormente, podemos concretar que los SOS son una confluencia entre las más modernas redes sociales, los WebOS o WebTops y la integración de de todo ello como plataforma de servicios flexibles para el usuario final. Elcontrol de los datos visibles por el usuario, la portabililidad de los datos y su posible remezcla en otros contextos (dataportability, FOAF, OAuth, OpenID, microformatos, hr-xml entre otros). Esto debe estar unido a potentes sistemas de representación de los grafos. Ese mural hasta ahora textual se hará con el tiempo más visual. Cada vez se habla más de los grafos sociales y de su teoría, que son las interrelaciones de tus contactos de la red social ( o redes bajo protocolos interoperables). Los Sistemas Operativos Sociales se encuentran en un estado embrionario y conceptual que se cree que en los próximos años se desarrolle con más profusión gracias sobre todo a los sistemas visuales de aplicación a redes sociales. Algunos autores quieren enmarcar ya algunas redes sociales como el caso de Facebook. Esto tiene su importancia a nivel educativo para ver claramente todos los procesos y se puede ligar a la teoría conectivistade G. Siemens. Ese flujo conectivo lo expresa de esta manera:
Una red puede definirse, simplemente como conexiones entre entidades entes. Las redes de ordenadores, redes de energía y redes sociales funciona sobre el simple principio de que personas, grupos, sistemas, nodos, entidades, puede conectarse creando un conjunto integrado. Las alteraciones dentro de la red, tienen efectos ondulatorios en todo el conjunto.
Albert-László Barabási afirma que “los nodos siempre compiten por las conexiones, porque los enlaces representan la supervivencia de un mundo interconectado”. Esta competición está muy deslucida dentro de una red de aprendizaje personal, pero la supremacía de ciertos nodos sobre otros es una realidad. Los nodos que exitosamente adquieren perfiles mejores serán mas exitosos en la adquisición de conexiones adicionales.
Simplificaran de alguna manera el sistema de búsqueda o de acceso a materiales y sus interrelaciones. Horizon Report 2008 habla de ello con ejemplificación:
A menudo, los estudiantes que trabajan en artículos de investigación no son plenamente conscientes de lo que significa ser un investigador. De la red de actividades en las que los investigadores están implicados –publicar, investigar, interactuar con pares y colegas, realizar presentaciones en congresos y simposios, etc.– sólo una pequeña parte es evidente para un estudiante que lleve a
cabo investigación […]. Con sólo cambiar el principio organizador –de productos o conceptos a personas y sus conexiones– va a producirse un cambio en los tipos de resultados obtenidos. Conectar a los estudiantes con investigadores y científicos va a permitir a los primeros ahondar en su comprensión de cómo se realiza la investigación profesional. La utilización de redes profesionales como punto de partida para el estudio llevará a los estudiantes a establecer conexiones que de otro modo no serían obvias. Los investigadores colaboran en artículos; los estudiantes que lean sobre Doug Engelbart, por ejemplo, podrán ver con quién ha trabajado en otros proyectos, lo que les proporcionará una visión más clara de la comunidad de científicos a la que pertenece y de las contribuciones de Engelbart y sus pares. Siguiendo estos rastros con herramientas sociales, los estudiantes descubrirían otras conexiones y puntos de vista que podrían no haber salido a la luz.
Otro aspecto a tratar es la confiabilidad de las colaboraciones y de la credibilidad, algo que permitirá aprovechar el gráfico social, mostrando análisis de los documentos tratados o compartidos. Ese karma se establecerá teniendo en cuenta si el autor, que un principio desconocemos, nos muestra la interrelación de sus grafos (herramientas destinadas para ello) nos mostrará que comunidades, que relaciones de comunidad y quien le cita. Y algo fundamental para la evaluación de redes sociales educativas y comunidades de aprendizaje a nivel grupal o individual.
Esto creará también cambios en la configuración de la identidad digital, que indicará visualmente quien somos a partir de nuestras interconexiones como un mosaico defragmentado, pero a la vez conectado de manera débil (por un enlace o por un tag).
Estos sistemas fluirán de manera espontánea comunidades, que son propicias para un óptimo aprendizaje informal y ligarlo también al concepto de lifestream o lifecasting, en el que se transmite/comunica de manera simultánea y se recopila como si fuera un e-portfolio de nuestra actividad física e intelectual. Nos permitirán en un entorno de hiperconectividad acceder fácilmente a material del tipo lifestream sin tener que buscarlo explícitamente.
Teniendo como eje de las redes sociales la propia persona, creo que mejorara la forma de crear, gestionar, visualizar e interrelacionar artefactos para generar comunidades de forma espontánea. Será nuestro tercer lugar o entorno del aprendizajeno mediado. Horizon Report lo explica de esta manera (el subrayado es mio):
Los sistemas operativos sociales aprovecharán este mosaico y fomentarán las relaciones entre personas basadas en conexiones e intereses comunes entre ellos. Lascomunidades autoorganizadas se desarrollarán alrededor de estos intereses a medida que las redes los vayan revelando. En vez de tener que buscar todos los espacios en línea de donde los colegas en nuestro campo recogen recursos y mantienen debates, nuestras herramientas nos traerán a nosotros estos debates y colegas. Cuando conozcamos a alguien que a su vez conoce a alguien que comparte nuestros intereses, nuestras herramientas van a darse cuenta de ello y nos pondrán en contacto. El próximo «tercer lugar» –el espacio donde se reúnen las personas y que no es ni el hogar ni el lugar de trabajo– serán comunidades de interés espontáneas creadas por sistemas operativos sociales.
Estamos en la época primitiva de la potencialidad de las redes sociales. Suponemos que la época dorada vendrán con sistemas semánticos en las interconexiones. Esperemos que esa visión digital de las relaciones de una persona sea totalmente manejable, sostenible e interoperable, en la que se pueda hacer todo lo imaginable con la información que queremos que sea visualizable (tanto cómo y por quién), no como el caso de Facebook con el “wall” de entrada. No he hablado de MySpaces y Facebook, pero sólo decir que intentan posicionarse en estos conceptos emergentes. El problema es que detrás esta la lucha de protocolos abiertos (en OpenSocial y la isla Facebook) en los que no es posible como digo la gestión del contenido generado por el usuario, ya que hay muchos actores en danza y terceras empresas que deben estar a las ordenes de las premisas de Facebook, y MySpaces en menor medida. Esto dará muchas vueltas.
Lo que si es cierto es que modificará nuestras formas de trabajo, estudio e investigación a nivel individual y de las propias organizaciones.

Sistemas operativos libres

                        Sistemas operativos libres 



Existen algunos Sistemas Operativos libres que tienen más años de vida que el grupo de S.O. que hoy conocemos como GNU/Linux. Aquí les presentamos a los más destacados. 

Este artículo fue publicado originalmente en la edición de julio de 2010 de DattaMagazine, la revista de tecnología de Dattatec. 
Autor: Juan Gutmann 

En la actualidad, casi todos los usuarios de computadoras han escuchado hablar de “Software Libre” o de “Software de Código Abierto”. Aunque existen diferencias sutiles entre uno y otro concepto, para la gran mayoría son prácticamente sinónimos. De igual manera, pocos son los que ignoran a esta altura el término “Linux”, que se refiere al Kernel empleado por una familia de Sistemas Operativos de código abierto, casi siempre utilizado en conjunto con las herramientas y librerías del Proyecto GNU. Sin embargo, hay otros Sistemas Operativos libres, no tan populares para el público en general, aunque algunos, incluso, tienen más años de vida que el grupo de S.O. que hoy conocemos como GNU/Linux. Aquí les presentamos a los más destacados. 

                     EL PROYECTO GNU: EL MANANTIAL DEL QUE TODOS BEBIERON 


                                  libres

                                          OPENSOLARIS: EL IMPERIO DEL SOL 

DattaMagazine

jueves, 11 de febrero de 2016

Procesadores para dispositivos móviles

Procesadores para dispositivos móviles

Tras el paso de los años la elección de un celular se a reducido prácticamente a la elección de un procesador, ya que el usuario moderno sabe que mientras mejor sea el procesador, tendrá una mejor experiencia en cuanto al uso del sistema operativo y sus aplicaciones.

Considerando lo anterior, el procesador cobra una doble importancia, ya que el continuo avance en aplicaciones y juegos para los dispositivos móviles  hace necesario cada ves mas un procesador mas potente  que pueda correr este tipo de aplicaciones cada ves mas complejas.

En la actualidad los procesadores mas utilizados y que veremos a continuación, están basados en la tecnología System-on-a-chip (SoC), esto significa que se integra en un solo chip todos o gran parte de los  componentes de un dispositivo móvil que cumplen otras funciones como por ejemplo: GPS, procesamiento de gráficos, sonido, etc. 

¿Qué es un procesador?

Un procesador en pocas palabras es el "cerebro" del dispositivo móvil en donde se realizan los procesos u operaciones que hace el dispositivo móvil.

En el mercado actual existe una gran variedad de procesadores que se diferencian tanto en el fabricante como en los celulares que los utilizan, en esta publicación veremos los procesadores mas utilizados y sus características.












miércoles, 10 de febrero de 2016

Evolución de los dispositivos moviles


EVOLUCIÓN DE LOS DISPOSITIVOS 
MÓVILES

se remonta a los inicios de la Segunda Guerra Mundial, donde ya se veía que era necesaria la comunicación, es por eso que la compañía Motorola creó un equipo llamado Handy Talk o handie talkie H12-16,que es un equipo que permite el contacto con las tropas vía ondas de radio cuya banda de frecuencias en ese tiempo no superaban los 600 kHz.

continuación les presentare una linea del tiempo sobre la evolución de los dispositivos móviles :


1977 
1979 
• Se crea la primera red celular en chicago, EUA. 
• Comenzó a funcionar bien en 1978 en 1300 clientes aproxim...
1984 
1989 
• Nokia lanza al mercado el Mobira Talkman. 
• El diseño de los móviles comienza a ser más pequeños. 
1990 
• ...
1992 
1994 
• Se mandó el primer SMS por Brit Neil Papworth. Su primer texto fue “Feliz Navidad”, este mensaje fue enviado...
1998 
2001 
• Se unieron las compañías Psion y Nokia, Ericsson y Motorola para crear Symbian LTD, la cual se creó el Symbi...
2004 
2006 
• Se lanza al mercado el primer móvil con acceso a internet. 
• Los smartphone más pequeños dominan el mercado...
2011 
2012 
• Es el primer smartphone corriendo Windows Phone de Nokia, tiene 16GB de memoria interna, Wi-Fi, GPS. Es el N...

viernes, 5 de febrero de 2016

Pasos para crear una cuenta en Blogger

Pasos para crear una cuenta en Blogger

Paso 1:

Ingresa a la página web: http://blogger.com. Si ya tienes una cuenta creada en Gmail,Youtube o algunos de los servicios de Google, sólo tienes que escribir en los campos de Inciar sesión  tu nombre de usuario y contraseña y omite los pasos que siguen.

Paso 2:

Cuando estés allí, haz clic en el botón Crear cuenta de la parte superior derecha.
Botón Crear cuenta.
Formulario de datos personales

Paso 3:

Verás que aparece un formulario. Diligéncialo con tus datos personales en las casillas correspondientes.  

Paso 4:

No te olvides de leer cuidadosamente y señalar la casilla Acepto las condiciones del servicio y la política de seguridad de Google.

Paso 5:

Cuando hayas terminado, haz clic en el botón Siguiente paso de la parte inferior del formulario.  

Paso 6:

Aparecerá una nueva página que contiene tus datos de perfil y la opción para que cambies tu foto. Cuando lo hayas hecho, selecciona el idioma en la parte superior y haz clic en el botón Continuar en Bloggerde la esquina inferior.

Ten en cuenta...

Al crear tu cuenta en blogger, también lo estarás haciendo para otros servicios de Google como tu canal de videos en Youtube, el correo electrónico de Gmail, tu cuenta de Google Analitycs y tu disco virtual de Google Drive, entre otros servicios.