viernes, 19 de enero de 2018

Curso de Desarrollo de Apps Móviles Modulo 5

Plataformas de desarrollo - Desarrollo multiplataforma

Resumen:

El desarrollo en múltiples plataformas nace con la necesidad de cubrir la mayor parte del mercado y la mayor cantidad de plataformas posibles.

Tipos de desarrollo multiplataforma:
Desarrollo WEB: Mas usa-ble que la web tradicional, web adaptada a móvil que se utiliza a través de un navegador, generalmente por su diseño requiere conexión a Internet. A veces estas aplicaciones web no cubren todas las necesidades (o funcionalidades) de la app. Una vez terminado su desarrollo se instala en los terminales y parte desde ahí. Algunos ejemplos para el desarrollo web son: HTML5, jQuerY mobile o ANGULAR JS. Algunos ejemplos para el desarrollo no nativo son PhoneGap y Apache Cordova (enriquecen las web apps y prepararlas para su instalación en móviles), Unity (orientado a juegos, permite desarrollar para muchas plataformas), Appcelerator (basado en Java script, son usadas para acelerar el desarrollo), Xamarin (desarrollo multiplataforma programando en .net)

Ventajas:
  • Minimiza los costes, reduce tiempos y perfiles tecnológicos (eliminando la necesidad de tener expertos para el desarrollo de cada plataforma).
  • Cubre mayor cantidad de mercado.
Desventajas: 
  • No explota todo el potencial del dispositivo.
  • Mas bajo rendimiento que el desarrollo en un lenguaje nativo.
Mediante el desarrollo web podemos crear aplicaciones llamada web apps las cuales tienen una diferencia con las tradicionales ya que se consumen directamente desde el móvil.

HTML5:
Tiene estándares para funcionar en la mayoría de los navegadores.
Pensado para webs que adapten su presentación al dispositivo que van a ser usadas (que se adapten a múltiples resoluciones, tipografía).
La parte de html se ria la capa visible que presenta los datos que se desean mostrar, puede crear paginas webs estáticas mediante etiquetas.
Lo que le indica al navegador que se esta usando html5 y no otro es la etiqueta !DOCTYPE html al inicio del documento.

CSS3:
Permite establecer la estructura de la web pero necesita de la definición de estilos para poder personalizarla.
CSS3 es el último estándar que permite personalizar el contenido html.
Este hace las paginas web mas vistosas.

Para responder a las acciones del usuario se necesita JavaScript que es un lenguaje de programación interpretado por el navegador.

jQuerY mobile es un framework que mediante JavaScript y CSS3 se puede llegar a imitar el comportamiento de una aplicación nativa desde el dispositivo móvil.

ANGULARJS  es un framework de JavaScript de codigo abierto mantenido por google.
Permite patrones de diseño múltiples, se adapta a cualquier patrón.
Esta ideado para trabajar mediante código enlazado (es posible unir directamente el código JavaScript junto a elementos html, una modificación sobre el elemento de código se ve inmediatamente reflejado en la vista html)

Quiere decir que html5, CSS3 y JavaScript pueden simular una aplicación nativo.

Cuando se necesita algo mas que una web app se entra al campo de las apps Híbridas, se puede decir que es una web app en una capsula preparada para ejecutarse dentro de un dispositivo como una app nativa, esta capsula permite una comunicación con la web app y el dispositivo para acceder a elementos como contactos, cámara etc.

Existen dos herramientas muy conocidas que nos permiten desarrollar una app híbrida, PhoneGap y Apache Cordova.

PhoneGap fue creado por Nitobi (2009), creado para encapsular html5, en 2011 dona el código fuente a la fundación Apache y posteriormente Adobe compra Nitobi, luego Adobe saca una rama llamada  Apache Cordova que incluye servicios en la nube.

Preguntas y respuestas:

Visita la siguiente página sobre las plataformas a las que podemos exportar una aplicación desarrollada con Unity. ¿Qué plataforma móvil no soporta todavía este motor de juegos?

A. iOS.
B. Android.
C. Ubuntu Touch.
D. Windows Phone 8.

Correcto. Unity todavía no permite exportar a Ubuntu Touch.

Lee el siguiente artículo. Si queremos reutilizar código para el desarrollo multiplataforma, ¿cuál es la mejor opción?

A. Apps híbridas.
B. Apps nativas.
C. Apps hechas en Objective-C.
D. Apps hechas en C#.

Correcto. Con un solo lenguaje cubrimos varias plataformas.

Examen:

1. ¿Qué nos permite el desarrollo de apps mediante HTML?
A. Aprovechar al máximo las capacidades del dispositivo.
B. Escribir una única aplicación que funciona en todos los dispositivos.
C. Interactuar con las notificaciones, agenda, etc. del usuario.

2. Si queremos publicar una web app en los stores, ¿qué debemos hacer?
A. Utilizar jQuery Mobile para adaptarla a móviles.
B. Utilizar HTML5 + CSS3 + Javascript para su utilización en móviles.
C. Convertir la web app a una app híbrida mediante herramientas como Apache Cordova.
D. Utilizar Materialize para simular el aspecto de una app como las diseñadas por Google.

3. ¿Cuál de las siguientes librerías/aplicaciones/marcos de desarrollo es un motor de juegos multiplataforma?
A. Appcelerator.
B. Apache Cordova.
C. Xamarin.
D. Materialize.
E. Unity.

4. Considerando una app descompuesta en una estructura de capas, ¿a cuál correspondería HTML?
A. La capa de la lógica, la que implementa los algoritmos.
B. La capa de presentación, la que muestra los datos.
C. La capa de comunicaciones, la que envía y recibe datos.
D. La capa de almacenamiento, la que guarda los datos.

5. ¿Es cualquier página web una aplicación multiplataforma desarrollada basada en tecnologías web?
A.  Sí. Es sólo una forma de denominarlas en el contexto de las aplicaciones para dispositivos móviles.
B. No. Una aplicación web ofrece un aspecto parecido al de una aplicación nativa (ej. no muestra la barra de navegación o el botón de vuelta atrás del navegador) y permite al usuario interactuar con ella.
C. No. Una aplicación web para dispositivos móviles es una página web implementada con Android.
D. No. La aplicación multiplataforma es una página web que además se conecta con algún servidor remoto para realizar sus operaciones.

6. ¿Qué es una web app?
A. Una página web con un envoltorio que funciona como app y se instala en el dispositivo como si fuese nativa.
B. Una página web adaptada a móvil que se consume a través del navegador como si fuese nativa.
C. Una web creada con un framework para usarse en móviles.
D. Cualquier web abierta desde un navegador de móvil.

7. ¿Qué es el Material Design?
A. El Material Design es el estándar de diseño definido por Google.
B. Es un framework de desarrollo basado en CSS3 para personalizar páginas web.
C. Es una técnica de diseño de interfaces de apps en la que la interfaz reacciona a cualquier posible gesto del usuario para evitar errores inintencionados.
D. Es una técnica de diseño de interfaces orientada a que estas se adapten automáticamente a los cambios en las características de las nuevas versiones del sistema operativo.
E. Es un método de programación para JavaScript orientado a apps.

8. ¿Cual de las siguientes librerías permite empaquetar las aplicaciones en HTML y distribuirlas como si fuesen nativas?
A. Nitobi.
B. Apache Cordova.
C. jQuery.
D. AngularJS.

9. Las propuestas multiplataforma basadas en tecnologías web usan el lenguaje HTML para crear páginas estáticas. ¿Para qué usan el lenguaje JavaScript?
A. Para visualizar gráficos.
B. Para visualizar gráficos y animaciones.
C. Para implementar algoritmos.
D. Para procesar las páginas HTML y darle al navegador los comandos necesarios para su visualización.
E. Para responder a las acciones del usuario y modificar la página mostrada.

10. ¿Qué es una app híbrida?
A. Una página web con un envoltorio que funciona como app y se instala en el dispositivo como si fuese nativa.
B. Una página web adaptada a móvil que se consume a través del navegador como si fuese nativa.
C. Una web creada con un framework para usarse en móviles.
D. Una aplicación que ha sido generada con un motor de juegos.

11. ¿Cuál es la principal desventaja de las aplicaciones multiplataforma basadas en tecnologías web?
A. Necesitan el navegador Chrome para ser visualizadas.
B. Necesitan librerías que interpreten JavaScript para poder ser ejecutadas.
C. Necesitan librerías adicionales para poder acceder a buena parte de las capacidades del dispositivo debido a las limitaciones que los navegadores imponen en su ejecución.
D. Necesitan ser desarrolladas siguiendo pautas de diseño reactivo.

16 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderBorrar
  2. Respuestas
    1. Este comentario ha sido eliminado por el autor.

      Borrar
    2. 6. ¿Qué es una web app?
      A. Una página web con un envoltorio que funciona como app y se instala en el dispositivo como si fuese nativa.

      Borrar
    3. I HATE YOUUUUUUUUUUU ASHOLE!!!

      Borrar
    4. Mediante el desarrollo web podemos crear aplicaciones llamadas web apps. Una página con un envoltorio que funciona como app y se instala en el dispositivo es una app híbrida. La diferencia es que una web app está diseñada para que se consuma directamente en un dispositivo móvil.

      Borrar
  3. 6. ¿Qué es una web app?
    A. Una página web con un envoltorio que funciona como app y se instala en el dispositivo como si fuese nativa.

    ResponderBorrar
  4. revisa bien, tienes respuestas malas!!!

    ResponderBorrar
  5. 6. ¿Qué es una web app?
    A. Una página web con un envoltorio que funciona como app y se instala en el dispositivo como si fuese nativa.
    esa es la respuesta
    el resto me sirvió de mucho gracias....

    ResponderBorrar
  6. examen modulo 6 (RESPUESTAS 1A/2D/3A/4C)

    Pregunta 1
    Cuando se crea una aplicación de realidad aumentada lo que se hace es...
    La utilización de dispositivos móviles es cada vez más común entre los usuarios. Se crean mejoras con una gran rapidez para satisfacer estas nuevas necesidades respecto al mundo tecnológico. Una de estas mejoras o avances es la realidad aumentada. La realidad aumentada pretende mejorar la percepción del entorno a través de nuestros sentidos incluyendo más información.
    ...mejorar la percepción del entorno incluyendo más información.
    B
    ...aumentar los objetos para que sean más grandes.
    C
    ...reemplazar la realidad por otra alternativa.
    D
    ...crear una visión de realidad virtual.

    Pregunta 2
    Existen muchas plataformas para realidad aumentada. Cada una permite capacidades distintas y sirven para dispositivos distintos. ¿Para qué dispositivos se pueden generar aplicaciones?
    El aumento del uso de dispositivos móviles ha obligado a las compañías a mejorar las capacidades de estos. Entre estas mejoras podemos encontrar la realidad aumentada, que consiste en mejorar la percepción del entorno incluyendo más información. Existen aplicaciones de realidad aumentada para iOS, Android y Windows Mobile.
    A
    Solo Android.
    B
    Solo iOS.
    C
    Solo Android e iOS.
    Android, iOS y Windows Mobile.

    Pregunta 3
    La realidad aumentada se aplica a distintos ámbitos. En el de la educación, ¿cómo puede ayudarnos la realidad aumentada?
    La realidad aumentada es un recurso que puede ser beneficioso en muchos ámbitos de la vida. Uno de ellos es el de la educación. La realidad aumentada puede, por ejemplo, hacer más entretenidos los libros de texto mostrando las ilustraciones en 3D y también identificando elementos difíciles de ver a simple vista.
    Por ejemplo, puede hacer más entretenidos los libros mostrando ilustraciones en 3D y también identificando elementos difíciles de ver a simple vista como las constelaciones.
    B
    Insertando anuncios en medio de los libros para hacer sostenible la incorporación de información relevante y poder ir modificándola.
    C
    Integrando vídeos que realcen los distintos materiales utilizados por el educador.
    D
    La realidad aumentada no se puede aplicar en el ámbito de la educación.

    Pregunta 4
    ¿Qué dirías sobre la precisión de la ubicación con GPS?
    A día de hoy se hace un gran uso del GPS que viene integrado en la mayoría de dispositivos móviles, ya sea para buscar una dirección, un restaurante cerca de donde nos encontramos en ese momento, etc. Uno de sus problemas es que no es del todo preciso cuando el dispositivo se encuentra en interiores y, aunque tiene una gran precisión en exteriores, es necesario que también tenga buena precisión en interiores. Por ello es necesario añadir marcadores cuando se quiere mejorar esta precisión.
    A
    Funciona perfectamente en interiores.
    B
    Tiene una precisión excelente en exteriores.
    Requiere el complemento de marcadores cuando se requiere precisión.
    D
    Los GPS se han quedad obsoletos debido a su falta de precisión tanto en interiores como en exteriores.

    ResponderBorrar
  7. examen modulo 7 (RESPUESTAS 1D/2B/3A/4B)

    Pregunta 1
    ¿Cuáles de las siguientes cuestiones deben tenerse en cuenta a la hora de desarrollar una web para atraer y retener al usuario en el tiempo?
    A la hora de crear una app es necesario tener un diseño que sea atractivo y que satisfaga al usuario. Esto es lo que denominamos User Experience. Es necesario llevar a cabo una recopilación de datos, saber qué quieren decir esos datos e incluir mejoras y actualizaciones si fuera necesario. Para incluir estas mejoras podemos basarnos en las valoraciones de nuestros usuarios.
    A
    Recopliar datos, interpretarlos y actuar en consecuencia.
    B
    Recibir feedback del usuario y valorar su opinión.
    C
    Crear un diseño que satisfaga una buena experiencia de usuario.
    Todas las anteriores.

    Pregunta 2
    Existen muchas formas de conseguir dar a conocer una app. ¿Qué podemos hacer para que sea el usuario quien publicite nuestra app?
    En la actualidad existe un gran número de ofertas de apps. Una gran cantidad de ellas no triunfan debido a que no son conocidas por los usuarios. Por ello, es importante que las aplicaciones se conozcan. Uno de los mecanismos que más éxito tienen es el boca a boca o la publicidad a través de redes sociales. Por ejemplo, un usuario que ha utilizado una app se lo cuenta a un amigo o conocido para que se la descargue, siempre y cuando haya tenido una buena experiencia.
    A
    Incluir publicidad en nuestra aplicación.
    Utilizar redes sociales.
    C
    Monitorizar al usuario.
    D
    Incluir gamificación.

    Pregunta 3
    Si queremos consultar los ingresos conseguidos por descarga en nuestra aplicación Android hoy, ¿dónde debemos mirar?
    Es importante que a la hora de crear una app tengamos en cuenta que deberemos llevar un análisis continuo de esta app. Existen diferentes plataformas donde podremos consultar, por ejemplo, los ingresos de nuestra app, pero la mejor opción es recurrir a la plataforma de desarrollo, (por ejemplo, Google Play en el caso de Android).
    Google Play.
    B
    Google.
    C
    Google Analytics.
    D
    Cualquier herramienta de Business Inteligence.

    Pregunta 4
    ¿Cuáles de las siguientes opciones no son herramientas de Business Inteligence que permitan trazar eventos personalizados?
    Existen diferentes herramientas que se utilizan para explotar el Business Inteligence o la Inteligencia de Negocio, pero Google Play no es una de ellas, ya que es una plataforma de descarga de apps y puede, por ejemplo, ayudarnos a conocer los ingresos que ha adquirido nuestra app.
    A
    Flurry.
    Google Play
    C
    Localytics.
    D
    Google Analytics.

    ResponderBorrar
  8. examen modulo 87 (RESPUESTAS 1A/2B/3B/4C)
    Pregunta 1
    ¿En qué consiste el modelo freemium de juegos para el móvil?
    A la hora de desarrollar un juego es importante tener en cuanta si con ese juego queremos conseguir algún beneficio económico o no. Existen diferentes modelos al desarrollar juegos, siendo uno de ellos el modelo freemium. El modelo freemium consiste en conseguir los primeros niveles de un juego de forma gratuita y tener que pagar para poder acceder a los siguientes niveles.
    Los primeros niveles del juego son gratuitos; el resto, de pago.
    Pregunta 2
    ¿Qué diferencia a las apps de salud y bienestar de las médicas?
    En los últimos años se han creado una gran cantidad de aplicaciones móviles nuevas, muchas de estas relacionadas con el ámbito de la salud. Dentro de este ámbito existen aplicaciones de salud y aplicaciones enfocadas a bienestar. La principal diferencia que existe entre estas aplicaciones es que las apps médicas están avaladas científicamente, mientras que las de salud y bienestar están pensadas para orientarnos en hábitos saludables, pero no están necesariamente avaladas.
    B
    Las apps médicas están avaladas científicamente, mientras que las de salud y bienestar están pensadas para orientarnos en hábitos saludables, pero no están necesariamente avaladas.

    Pregunta 3
    ¿Es recomnedable firmar un Contrato de Confidencialidad (NDA) antes de presentar nuestro proyecto a posibles colaboradores e inversores?
    Hoy en día existe una mayor cantidad de desarrolladores web y de emprendedores que tienen ideas similares de productos y de proyectos, por ello es importante proteger nuestras ideas ante cualquier persona. En la mayoría de los casos firmar un NDA o Contrato de Confidencialidad no es lo más recomendable ya que puede incomodar a la otra parte. Suele ser preferible omitir ciertos detalles de nuestros proyectos y trabajar de manera ágil para ser los primeros en llegar al mercado y, de esta manera, situarnos por delante de la competencia.

    B
    En la mayoría de los casos no es lo más recomendable. Es preferible omitir detalles clave de nuestro proyecto y trabajar rápido para ser los primeros en llegar al mercado y, de esta manera, situarnos por delante de la competencia.

    Pregunta 4
    El planteamiento de un Producto Mínimo Viable (MPV)...
    A la hora de crear una aplicación lo principal es identificar qué problema o necesidad de los usuarios queremos resolver. Una vez hayamos identificado esto, lo siguiente será crear la app. Para hacer la app podemos llevar a cabo el planteamiento de un Producto Mínimo Viable, que supone el planteamiento de una primera versión de funcionalidad estrictamente necesaria para generar un producto con sentido y que nos permita ir mejorando sus funcionalidades a través del feedback de los usuarios que la utilizan.
    C
    ...incluye en su primera versión la funcionalidad estrictamente necesaria para generar un producto con sentido y que nos permita iterar sobre él a partir del feedback de los usuarios.

    ResponderBorrar