Está en la página 1de 18

Universidad Simón Bolívar.

Departamento de Computación y Tecnología de la Información

Desafíos de ser Mobile

Ing. Patricia Zambrano


¿Qué opciones tenemos?

Nativo Híbrido

Fuente: https://www.mobileappdaily.com/best-hybrid-app-frameworks
¿Cuáles son las diferencias entre ellos?
Nativo Híbrido

● Alto rendimiento ● Menos costo


● Diseños de acuerdo al OS ● Menor tiempo de
● Amigable hacia el usuario construcción/desarrollo
Pro ● Funcionalidades adquiridas por el ● Mismo código para los OS
OS (Animaciones, geolocalización,
cámara, etc)
● Fácil mantenimiento

● Alto costo ● Bajo rendimiento


● Mayor tiempo de ● Accesibilidad limitada hacia
construcción/desarrollo componentes nativos
Contras ● A veces hay que hacer código en
el OS específico para alguna
funcionalidad
● Difícil mantenimiento
Desarrollo nativo
Android iOS

IDE

Lenguajes

Tiendas
Android vs iOS

Android iOS
● Mayor cantidad de dispositivos ● Sólo para dispositivos de marca Apple
● Sin restricción del OS para el desarrollo ● Se necesita un Mac para el desarrollo
● Menor costo ● Mayor costo
● Inclusivo ● Exclusivo
● Evento del año: Google I/O ● Evento del año: WWDC
● Web: https://developer.android.com/ ● Web: https://developer.apple.com/
¿Para qué nos sirven?

Movilidad Banca Social Domicilios


¿Para qué nos sirven?

Streaming Viajes Shopping Salud


So, There are many possibilities!
¿Qué necesitamos saber? (Materias)

Inglés

Sistemas operativos Traductores

Ingeniería del Software Mobile Interfaces con el Usuario

Lenguajes de Organizador del


Programación computador

Algoritmos Base de Datos


Lógica
¿Qué conceptos son relevantes?

GitFlow
Repositorios Concurrencia

Arquitecturas Threads (hilos)

Patrones de diseño Mobile Memory leak

Ciclo de vida de una app 3rd party libraries

OOP vs Functional Persistencia

API
Conceptos Importantes
Life cycle Android
Life cycle iOS
Pruebas técnicas
¿Cómo te plantean el problema?
¿Qué se obtiene con este tipo de pruebas?

● Saber los skills técnicos del candidato


● Asignar un nivel técnico (Trainee, Junior, Semi Senior, Senior)
● Conocer la experiencia que haya tenido
● Conocer cómo estructura el código
● Asignación de nombres (variables, funciones, clases, estructuras, etc)
¿Dónde aprender?

https://www.raywenderlich.com/
https://www.udemy.com/courses/development/
https://devslopes.thinkific.com/
https://platzi.com/
https://kotlinlang.org/
https://docs.swift.org/swift-book/
https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html
¿Preguntas?

Gracias por su atención

Contacto:
Correo: pazs1991@gmail.com
Github: https://github.com/pattyzamsal
LinkedIn: https://linkedin.com/in/pattyzamsal

También podría gustarte