Ver Mensaje Individual
  #2 (permalink)  
Antiguo 03/05/2020, 12:19
Avatar de ArturoGallegos
ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 9 meses
Puntos: 1146
Respuesta: Empezar a programar APPs

Facil y rapido lo clásico de cuando uno va aprender o es el cliente final.

Si lo que buscas son aplicaciones nativas es demasiado ambicioso, no es facil y tampoco rapido.

ahora bien, que es rapido para ti? 1 mes, 1 semestre 1 año? 1 milenio?

-------

Dado que buscas abarcar ambos sistemas operativos yo me iria por dos opciones
1.- Cordova Apache
2.- React Native
3.- Flutter

La primera (Cordova) basta con que sepas trabajar javascript y html para conseguir tu aplicación, que no lo sera como tal, es más meter tu sitio web en un webview del dispositivo., similar a una PWA pero con instalador propio que puedes publicar en la Playstore

https://cordova.apache.org/
https://ionicframework.com/

Pros
- rápido de aprender y realizar
- múltiples plataformas como android e ios
- buena documentación en la mayoría de los casos
- tienes la posibilidad de usar ionic que a mi ver es como bootstrap en css pero para cordova

Contra
- no es una app como tal aunque le llamen app híbrida
- acceso limitado a las funciones del dispositivo o bien algo complejo
- menor rendimiento comparado con una app nativa


La segunda opción (React Native) si has trabajado con ReactJS seguro no tendras problemas en usar React Native, no es lo mismo pero trabajan internamente de forma similar., basta con tener buen conocimiento de Javascript sobre todo ES6

https://reactnative.dev/

Pros
- Fácil de aprender
- buena documentacion
- mejor rendimiento que una webview
- soporte de facebook
- hot reload
- multi plataforma

Contra
- Curva de aprendizaje no es tan corta como uno desearía o pensaria
- Ofrece 2 alternativas CLI y Expo, pero nadie te dice pros y contras ya hasta que estas aprendiendo (te lo dejo de tarea)
- uno que otro detalle cuando de formularios se trata y te tocara aprenderlo sobre la marcha.


Y la tercera opción (Flutter), esto es lo mas cercano a una app nativa a mi parecer o tal vez pueda considerarse una app nativa, aun lo estoy aprendiendo ya te dire en un futuro. Es fácil de aprender, tiene buen soporte, no me he topado con bugs y lo mejor permite una personalización de diseños y efectos bastante sorprendentes.

https://flutter.dev/

Pros:
- El mejor soporte y rendimiento en cuanto a aplicaciones multiplataforma
- Documentación de lujo
- Personalización muy buena
- animaciones
- hot reload

Contra
- Curva de aprendizaje larga si no conoces Dart o Kotlin
- Tendrás que aprender Dart


--------------------------
Como nota final, aun aprendiendo Cordova, Ionic, React Native, Flutter y Kotlin, vale madres y no siempre encuentras buen trabajo
No es tan fácil vender aplicaciones., vale más seguir como desarrollador frontend o backend que emocionarte y querer aprender un chingo sobre aplicaciones móviles.