Foros del Web » Programando para Internet » Android »

Empezar a programar APPs

Estas en el tema de Empezar a programar APPs en el foro de Android en Foros del Web. Hola soy un programador de 41 años, hago programas en PHP contra bases de datos MySQL, se de HTML5 y CSS3, algo de JavaScript con ...
  #1 (permalink)  
Antiguo 03/05/2020, 08:22
 
Fecha de Ingreso: mayo-2003
Mensajes: 509
Antigüedad: 17 años
Puntos: 6
Empezar a programar APPs

Hola soy un programador de 41 años, hago programas en PHP contra bases de datos MySQL, se de HTML5 y CSS3, algo de JavaScript con Jquery y utilizo BootStrap para hacer páginas Web responsivas. Tengo educación formal en sistemas.

Necesito hacer una aplicación para Android e idealmente IOS también, aunque me conformaría con Adroid solo por ahora. La necesito hacer RAPIDO. Nunca hice una APP y no se ni por donde empezar. Es una APP para tomar pedidos, o sea que tiene que haber una base de datos de productos, clientes, pedidos, y los formularios correspondientes, sería como un carrito de compras pero simple, con las funcionalidades básicas.

¿Creen que puedo hacer esto en un tiempo razonable empezando de cero?
¿Por dónde empiezo?
¿Es muy ambicioso pretender abarcar tanto Android como IOS?

Orientación es lo que necesito por favor! Gracias!!
  #2 (permalink)  
Antiguo 03/05/2020, 12:19
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.692
Antigüedad: 12 años, 3 meses
Puntos: 1117
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.
  #3 (permalink)  
Antiguo 04/05/2020, 16:57
 
Fecha de Ingreso: mayo-2003
Mensajes: 509
Antigüedad: 17 años
Puntos: 6
Respuesta: Empezar a programar APPs

Muchas gracias ArturoGallegos que respuesta tan completa.
Creo que lo voy a intentar con cordova.
Quería hacerla en 1 mes jeje ¿es muy loco?

¿Si quisiera crear aplicaciones nativas más adelante, aunque sea para Android en un principio, cuál sería el camino de aprendizaje?

Y sí, lo que dices al último sobre lo difícil de vender APPS, tal cual, es lo que me viene pasando y por eso nunca me meto en el tema porque no veo suficiente mercado. Pero bueno me gustaría incursionar creando alguna APP.
  #4 (permalink)  
Antiguo 05/05/2020, 10:17
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.692
Antigüedad: 12 años, 3 meses
Puntos: 1117
Respuesta: Empezar a programar APPs

Quería hacerla en 1 mes jeje ¿es muy loco?
- Si es en cordova y no requieres interactuar mucho con el hadware del dispositivo no veo mucho problema., es viable.


- No soy un experto en cuestion de aplicaciones nativas, al igual que tu solo he incursionado por curiosidad y querer aprender

Te recomiendo tomar algún curso que enseñe las bases de Java y después pases a Kotlin

Incluso encontraras cursos que incluyen ambas cosas, yo personalmente tome este
https://www.udemy.com/course/android_kotlin/

Francamente la introducción a Java es una porqueria y tiene a querer hacerte abandonar, mas de una vez me vi tentado, pero una vez pasando esa sección veras que si bien no te agrado tanto, al menos te enseño lo necesario para poder lanzarte a Kotlin

En Udemy encuentro muchos cursos a costos accesibles, por ejemplo ahorita hay descuento en los cursos (muy seguido hay descuentos) están en $120 MXN , si eres de otro pais seria un aprox de 5 a 6 USD, no es mucho considerando el fin y uso que darás.



La zona horaria es GMT -6. Ahora son las 13:15.