Вы находитесь на странице: 1из 5

Plataformas emergentes – 2019 B

Actualmente los dispositivos móviles se emplean en diversos dominios como entretenimiento,


laboral, entre otros usos. De otro lado, tenemos diversas opciones de plataformas de desarrollo
móvil. La Universidad no cuenta con un aplicativo móvil para los estudiantes donde puedan realizar
matriculas, ver sus notas, entre otras funciones. Entonces, usted deberá de proponer un aplicativo
que inicialmente permite realizar matriculas de laboratorio. Teniendo en cuenta lo siguiente:

 Los estudiantes tienen diversos marcas y modelos de teléfono móvil.


 El número de vacantes de los grupos de los laboratorios se actualiza constantemente. El
aplicativo debe de mostrar al estudiante en tiempo real el número de vacantes disponibles.
 El aplicativo móvil ira incorporando periódicamente nuevas funcionalidades y
actualizaciones de sus funcionalidades actuales.
CUADRO 1

PREGUNTAS A RESOLVER
a) Presentar un cuadro comparativo de las tecnologías [1] de desarrollo según los siguientes criterios
(16 puntos)
Criterios:
 Diseño de interface de usuario
 Facilidad de desarrollo: Tiempo desarrollo de módulos, IDE, información disponible, etc.
 Mantenibilidad: actualización de módulos
 Escalabilidad: equipos grandes de desarrollo puedan trabajar en conjunto.
Nota: Incluir referencias para justificar.

b) Seleccionar la tecnología [1] a emplear para el desarrollo del aplicativo, considerando el cuadro
realizado en la pregunta anterior. Comentar de qué manera la tecnología seleccionada resuelve o
afronta el “CUADRO 1” (4 puntos)

Tomar como base el siguiente artículo:


[1] Approaches to Mobile Application Development: Comparative Performance Analysis
[2] Evaluating Cross-Platform Development: Approaches for Mobile Applications
Criterio \ Native Applications Web Applications Hybrid Applications Interpreted Applications Generated
Tecnología Applications by Cross-Compilation
•Diseño de Para crear el diseño de Las interfaces web tienen Las aplicaciones Una de las principales Para desarrollar las
interface de una aplicación nativa, se ciertas limitaciones en las híbridas tienen un ventajas de este tipo aplicaciones nativas para
usuario debe tener en cuenta las funcionalidades que se diseño visual que no de aplicaciones es que cada plataforma,
diferencias entre las ofrecen al usuario. Hay se identifica en gran se obtienen. Xamarin ofrece dos
plataformas iOS y funcionalidades comunes medida con el del interfaces de usuario estrategias
Android. Estas en las aplicaciones de sistema operativo. Sin totalmente nativas. La primera es crear
plataformas difieren no escritorio como dibujar en embargo, hay formas Sin embargo, los aplicaciones específicas
solo en términos del la pantalla o arrastrar-y- de usar controles y desarrolladores para cada plataforma por
aspecto de las soltar que no están botones nativos de experimentan ejemplo utilizando
aplicaciones nativas; soportadas por las cada plataforma para una dependencia total Xamarin.iOS y
También difieren en tecnologías web estándar. apegarse más a la con el entorno de Xamarin.Android,
términos de estructura y Y más aún si nos referimos estética propia de desarrollo elegido. dependiendo del caso.
flujo. Se debe tener en a las aplicaciones móviles. cada una. Esto permite aprovechar
cuenta estas diferencias Los desarrolladores web Es decir similar a lo los elementos de UI
para proporcionar la generalmente utilizan Existen algunas que es una aplicación específicos de cada
mejor experiencia de lenguajes interpretados herramientas para nativa, dependiendo plataforma y construir así
usuario a través del (scripts) en el lado del desarrollar este tipo en que entorno se interfaces de usuario
diseño de la aplicación cliente para añadir más de aplicaciones. vaya a desarrollar el avanzadas y
nativa. funcionalidades, Apache Cordova es desarrollador se ver personalizadas para cada
En pocas palabras optar especialmente para ofrecer una de las más acostumbrado a una.
por este camino supone una experiencia interactiva populares, pero hay usarlo, siendo difícil La segunda estrategia es
elegir por lo menos dos que no requiera recargar la otras, como Icenium, que pueda migrar de Xamarin.Forms. Una
caminos más, tanto para página cada vez (lo que que tienen la misma entorno a entorno serie de componentes
diseñar interfaces para suele resultar molesto a los finalidad. [2] que permite definir
IOS como para Android usuarios). interfaces de usuario
[1]. para distintas
plataformas desde una
misma base de código.[3]
•Facilidad de La facilidad de desarrollo EL tiempo de desarrollo de Después de colocar a Una aplicación A pesar de las grandes
desarrollo: de app nativa varía según una aplicación web quizás un app web como la interpretada al no ventajas de usar este tipo
Tiempo el SO a desarrollar, ya sea el menor de todos, más sencilla y fácil de depender mucho de de tecnología, el tiempo
desarrollo de que como se sabe, comparándolo con los implementar, una librerías de terceros de desarrollo no es una
módulos, IDE, actualmente existen dos otros tipos de tecnología aplicación hibrida como el caso de de ellas, claro si lo
información grandes SO que abarcan disponible, ya que si lo podría decirse que es apache cordova, seria comparamos con las
disponible, etc. el mercado, sin embargo medimos en función de la segunda más rápida la segunda más rápida anteriores a excepción de
la existencia de un solo el tiempo empleado en ser implementada, en ser desarrollada, las apps nativas.
tercero como Windows para elaborar un módulo, sin embargo, esto no solo superada por el
pone dificulta el tiempo así como el IDE y la siempre se cumplirá, tiempo de desarrollo Este tipo de tecnología
de desarrollo si se quiere información disponible debido a las de una app web, a tiene una curva de
cumplir con el punto de para desarrollar un app de dependencias que diferencia de que con aprendizaje un poco mas
una aplicación disponible este tipo, esta tecnología estas requieren para esta tecnología larga que el de una
para cualquier tipo de saca demasiada ventaja al su desarrollo, es decir podemos crear una aplicación hibrida o
celular. resto. las librerías, app mucho mas interpretada y ni que
necesarias para cercana a la decir de una aplicación
elaborar una app de experiencia que ofrece web normal
este tipo de una app nativa.
tecnología.
•Mantenibilidad: Al ser una aplicación En una aplicación web el Una aplicación hibrida Similar a una Al igual que en el caso de
actualización de nativa se cierran en el SO mantenimiento siempre es la ideal para dar aplicación hibrida, las aplicaciones hibridas,
módulos a desarrollar, es decir la será un tema sencillo de mantenimiento, ya seria sencillo la la mayoría de
actualización de realizar debido a la que solo se realizaría mantenibilidad y aplicaciones Generadas
cualquiera de sus familiaridad del código , sin una sola vez y estos actualización de por Compilación Cruzada
modulo es sencilla de embargo la actualización serian aplicados para módulos, sin embargo tienen el defecto de
realizar, pero en general de los módulos serán cualquier SO, al igual debido a que es mas depender de su
implica un mayor costo complicados a medida que que la actualización de cerrado en cuanto a la fabricante el poder dar
de mantenimiento si se el usuario desee una módulos, gracias a la disponibilidad del uso soporte a los
trata de hacer lo mismo experiencia cercana al de facilidad de poder de librería de terceros, desarrolladores, tal es el
para cada SO a dar una app nativa añadir librerías puede que algunas caso de Xamarin que está
mantenimiento necesarias para cosas como aquellas sujeto a Microsoft y las
lograrlo que aun no son decisiones que estos
soportadas, no se tomen con respecto a la
logren realizar. tecnología.
•Escalabilidad: Actualmente es una de Al igual que las aplicaciones A diferencia de las A diferencia de las En el caso de esta
equipos grandes las tecnologías en donde nativas, el poder trabajar a apps nativas, tanto las apps nativas, tanto las tecnología debido a su
de desarrollo mayor gente trabaja en gran escala con aplicaciones hibridas aplicaciones hibridas origen y tomando somo
puedan trabajar conjunto, debido a la aplicaciones web, no como las como las ejemplo el tipo mas
en conjunto antigüedad de la supone un problema interpretadas, podrían interpretadas, podrían popular de esta
tecnología y la masiva suponer una suponer una tecnología (Xamarin),
demanda de apps desventaja al desventaja al podría decirse que
nativas existente. momento de querer momento de querer Microsoft ofrece la
ser desarrolladas por ser desarrolladas por posibilidad de desarrollo
equipos grandes, ya equipos grandes, ya de proyectos por parte
que estas son muy que estas son muy de un gran numero de
populares para ser populares para ser personas, ofreciendo
usadas de manera usadas de manera herramientas para el
individual o por individual o por caso.
grupos reducidos. grupos reducidos.

c) Seleccionar la tecnología [1] a emplear para el desarrollo del aplicativo, considerando el cuadro realizado en la pregunta anterior. Comentar de qué manera
la tecnología seleccionada resuelve o afronta el “CUADRO 1” (4 puntos)

Las aplicaciones híbridas ofrecen grandes ventajas permitiendo la reutilización de código en las distintas plataformas, el acceso al hardware del dispositivo,
y la distribución a través de las tiendas de aplicaciones.
Yo en lo particular elegiría el desarrollar la aplicación móvil requerida por medio de una tecnología hibrida, esto por los siguientes motivos:

 La reutilización de código: no es necesario desarrollar mas de una vez el código necesario para crear una determinada aplicación que se ajuste y
funcione para cualquier tipo de celular independientemente del SO que este, este usando.
 El tiempo de desarrollo es relativamente corto debido a la curva de experiencia y su familiaridad con las aplicaciones web, es sencillo de aprender
y fácil de implantar o instalar las herramientas necesarias para poder lograrlo.
 La mantenibilidad del proyecto y tener que aumentar nuevos módulos no supone un problema, debido a la facilidad y disponibilidad de un sinfín
de librerías de terceros fáciles de encontrar e instalar según se requieran.
 El equipo de desarrollo, no se especifica la cantidad necesaria de personas para desarrollar el aplicativo, suponiendo que solo yo estoy a cargo del
mismo, lo que hace más fácil la elección de tecnología en cuestión ya que esta no demanda el tener que trabajar con un gran numero de personas
en el proyecto.
Referencias:

[1] Differences between Designing Native iOS Apps and Native Android Apps, https://medium.muz.li/differences-between-designing-native-ios-apps-and-
native-android-apps-e71256dfa1ca

[2] Las aplicaciones, http://appdesignbook.com/es/contenidos/las-aplicaciones/

[3] Desarrollo de Apps Cross-Platform con Xamarin.Forms, https://sg.com.mx/revista/47/desarrollo-apps-cross-platform-xamarinforms

Вам также может понравиться