Necesito algo de luz para empezar

Ninja-Killer

Muy buenas foro,

soy 'nuevo' visitando este foro e imagino que a partir de hoy seré asiduo. El caso es que tras 2 años en el dique seco me gustaría volver a programar y qué mejor campo que el de móvil. Pero las dudas me asaltan y ando más perdido que un hijoputa el día del padre... He trabajado con Basic, C, PHP, HTML4, Javascript (con jQuery tb)

  • ¿Como se encuentra actualmente el mercado para desarrolladores móvil? ¿Vale la pena?

  • ¿Que conocimientos previos debería tener para la programación móvil?

  • La principal pregunta ¿Que herramientas utilizo? Empecé a estudiar Java, pero claro, solo vale para Android. Así que he pensado mejor en una herramienta multiplataforma y he visto por internet que existen varias, sobretodo basadas en HTML5 ¿Cual recomendáis? ¿Por qué? ¿Que tecnologías utiliza? ¿Pros y contras?

  • Hay muchísima información en internet y lo más difícil es filtrar la buena información para documentarse. ¿Que página/guia/tutorial me recomendáis para empezar? De información general sobre programación y basándoos en la respuesta de la primera pregunta.

Seguro que me surgen más dudas que las que he puesto, si eso las añadiré después.

Estoy un poco desesperado y confundido. Si me podéis ayudar estaría eternamente agradecido :)

B

#1 Desarrollar el que? Porque claro, diseñar un sitio web con su correspondiente versión para mobil, creo que lo podrías hacer con ruby on rails.

Si lo que quieres es desatollar aplicaciones para móviles, aprende java para android, y objetive C para iPhone. Si tienes nociones de java, objetive C será un paseo, ya que son calcados. Yo aprendí Objective C sobre la marcha, quise hacer una app, pues cualquier duda la postraba en stackoverflow y de ahí iba aprendiendo.

Antes de empezar me leí un libro sobre objective C que te lo buscare a ver si lo encuentro.
Este es el oficial de apple: https://developer.apple.com/library/ios/documentation/cocoa/Conceptual/OOP_ObjC/OOP_ObjC.pdf

Este es el que me leí: http://www.openboxer.260mb.com/pdf/mac/objective-C.pdf

1 respuesta
Thanat0s

Las recomendaciones que te ha dado Caranavo están bien.

Decirte que eso de que Java sólo vale para Android suena muy mal, es más, muchas veces se utiliza Java para hacer portales web.

1 respuesta
zoeshadow

El mercado para desarrolladores móviles está en alza, actualmente hay muchas empresas buscando gente para hacer las aplicaciones, tanto nativas ( Java / Objective C ) , como Hibridas ( PhoneGap + HTML5 ).

Si has hecho ya cosas en Java te recomiendo que te centres en Android, ya que en España es lo que más hay con diferencia ( aunque los programadores de Obj-C está bien valorados ), intentar abarcar todas las plataformas sin dominar ninguna no te va a ayudar mucho, y con las aplicaciones hibridas vas a estar compitiendo con gente que lleva años haciendo cosas en Javascript...

Si te decides por empezar con Android, te recomiendo seguir los tutoriales de la página oficial de desarrolladores de Google, y seguir algún libro ( este está muy bien ).

1 respuesta
Ninja-Killer

#2 #4 Gracias por vuestras respuestas. Después de buscar bastante información creo que para empezar me voy a decantar por el HTML5+CSS3+JS y en un futuro profundizar más en aplicaciones nativas. Después de decidirme me surgen nuevas dudas.. :/

HTML5 no lo he tocado, por lo que me tocaría empezar a mirarme ese lenguaje que parece que tiene muchas diferencias con HTML4. El Javascript parece que también ha pegado un salto espectacular ¿no? Se habla maravillas

  • No he visto por ahí que se mencione ninguna tecnología con HTML5 para acceder a BDD. ¿Cual sería recomendable utilizar (siempre hablando de aplicaciones móvil)? ¿PHP?

  • Que framework utilizar para entre otras cosas utilizar las funcionalidades del móvil: PhoneGap, jQuery Mobile, Sencha, Kendo... De algunas echan bastantes pestes, sobretodo de jQuery.

  • ¿Algún sitio con buena y completa documentación?

#3 Hombre no, me refería en cuanto a programacióm móvil ya que el resto de de SO utilizan otros lenguajes .P

2 respuestas
Thanat0s

#5 Si tienes pensado meter vídeos, que sepas que cada versión de Android es un mundo en cuanto a reproductor web y que lo más fiable es bajar a aplicaciones nativas desarrolladas en Java.

Y sí, php sigue siendo lo más usado junto con mysql y postgres.

jQuery lo piden en muchos sitios.

zoeshadow

#5 Estas mezclando frameworks que sirven para cosas totalmente distintas:

  • PhoneGap es un framework que te provee de una capa intermedia entre tu aplicación HTML5 y la parte nativa, permitiendote usar caracteristicas como la geolocalización o el almacenamiento del móvil. Simplemente es una serie de clases que te proveen de un API.

  • jQuery Mobile, Sencha y Kendo son Frameworks UI, por lo que irían por encima de PhoneGap ( en caso de que necesitases acceder a esas características ), y te facilitan cosas como diferentes "widgets" adaptados a pantallas móviles, eventos táctiles e incluso te proveen de una estructura MVC para tu aplicación.

  • Respecto a lo de acceder a la BBDD no entiendo muy bien a que te refieres, los propios móviles llevan BBDD incluidas ( SQLite ), si a lo que te refieres es que lenguaje usar en la parte servidor y que tenga acceso a una BD para poder guardar y cargar datos que luego usen las aplicaciones móviles, entonces PHP es una buena opción ( Usando algún framework como Silex y Laravel para hacer rutas Rest y que sea todavía más fácil )

  • En cuanto a la documentación, yo no conozco ningún sitio que engloben toda la documentación de como hacer las apps de 0 a completas, lo mejor que puedes hacer es ir por pasos, primero aprender a montarte un proyecto en PhoneGap + jQuery Mobile ( o los que hayas decidido usar ), y después ir buscando tutoriales de como hacer las cosas más básicas con jQuery Mobile ( mostrar listas, moverte entre pantallas, poner un menú... ).

Por ultimo si tienes la oportunidad de desarrollar en un Mac, serás más feliz si empiezas desarrollando tu aplicación Hibrida en un simulador de iPhone, van muuucho más rápidos que los de Android... Sino bájate Genymotion ( unos emuladores de Android ) que van bastante mejor que los que trae por defecto la SDK de Android...

2