Las aplicaciones son increíbles, y cuando tienes una idea, es fácil sumergirse directamente en un IDE y comenzar a piratear. Para un profesional experimentado, este enfoque es desaconsejable (sin mencionar que es poco probable …), pero para un principiante puede ser una forma realmente rápida de destruir cualquier entusiasmo que tenga que aprender, y eso simplemente no lo hará.
Aquí hay cinco consejos para ayudar a facilitar el aprendizaje del desarrollo de software móvil Android:
- ¿El uso de bases de datos SQL / SQLite requiere una conexión a Internet?
- ¿Debería centrarme en aprender a construir aplicaciones móviles híbridas o aprender el desarrollo nativo?
- Cómo adjuntar el botón de inicio de sesión de Google en mi aplicación de Android
- ¿Es Kotlin el idioma oficial de Android?
- Cómo construir una aplicación de Android si no tengo conocimiento de desarrollo de software
Brandon Car
1. Haz tu trabajo de base
Una cosa que los que rastrean a través de tutoriales web rápidos y sucios se pierden por completo es que, para desarrollar aplicaciones de Android, no se aprende “Android” en sí. Es un sistema operativo y una plataforma, es decir, es una colección de lenguajes y herramientas que funcionan en conjunto. Para ilustrar, en su proyecto promedio de desarrollo de aplicaciones está viendo:
- Lógica de programación (Java)
- Componentes de la interfaz de usuario (XML y Java)
- Almacenamiento de datos (SQLite, HTTP)
- Conectividad (HTTP, XML-RPC)
- Compilación (Gradle, ANT)
… y algunos otros que probablemente me he perdido, por lo que debes hacer algunos deberes, solo saber que Java no es suficiente. Sin embargo, no es aconsejable aprender a codificar en Java haciendo una aplicación de Android, ya que encontrará problemas que no tienen nada que ver con el código Java que acaba de escribir. En cambio, desglosarlo:
- Si no conoce Java, comience con los tutoriales oficiales de Oracle Java.
- Si no conoce XML, W3Schools tiene una excelente y completa sección de tutoriales.
- Si desea hacer una aplicación de Google Maps como su primer proyecto, aprenda cómo funciona la API por sí sola, antes de comenzar a integrarla en una aplicación
Una vez que tenga una idea de los conceptos individuales, puede reunirlos de una manera mucho más fluida que si estuviera pirateando tratando de averiguar si está viendo un error de sintaxis XML o una excepción real de Java.
2. Conozca sus herramientas
Android es una plataforma madura en estos días, y hay muchas herramientas disponibles para ayudarlo. Sin embargo, se sorprendería (o tal vez no) de cuántos desarrolladores profesionales de Android no usan o ni siquiera conocen todas las herramientas disponibles para ellos.
Puede aprender mucho del código roto, pero no si no sabe cómo leer las señales. Familiarícese con el Android Debugging Bridge (ADB), el Dalkvik Debug Monitor Server (DDMS) en primer lugar, luego pase a las características más avanzadas de Traceview y dmtracedump cuando esté buscando aprender cómo hacer que sus aplicaciones funcionen sin problemas y hacer Uso eficiente de los recursos del sistema.
También es importante asegurarse de que su IDE esté configurado correctamente, ya que los mensajes de Fuente no encontrada no son útiles cuando intenta llegar al fondo de una situación de Cierre forzado. Android Studio es simple e integrado en cuanto a instalación, y echa un vistazo al excelente tutorial de Vogella si decides seguir la ruta más complicada de Eclipse.
3. Aprende a buscar
John Karakatsanis ( licencia )
Al igual que con cualquier tarea de desarrollo de software, saber dónde encontrar la información que necesita es la habilidad más importante para desarrollar. Aprender a encontrar las respuestas correctas a sus preguntas rápidamente suavizará la curva de aprendizaje sin fin. Aquí hay algunos puntos de partida para algunas preguntas generales que tal vez desee hacer a medida que avanza:
- ¿Cómo funciona este componente específico? Consulte la documentación oficial del desarrollador de Android y use el cuadro de búsqueda. Todos los componentes disponibles listos para usar se describen en los documentos, y generalmente hay ejemplos de código.
- Tengo un error, ¿qué significa? StackOverflow es un recurso tan útil para encontrar respuestas a este tipo de preguntas que se ha convertido en una broma corriente en la industria del software. Copie y pegue el error, y probablemente alguien ya haya encontrado la causa. Nota: A medida que aprenda más, es mejor tratar de hacer de SO un último recurso en lugar de uno primero; aprenderá más sobre lo que está sucediendo en el software si usa sus herramientas para tratar de rastrear la falla usted mismo.
- Me gusta esa lista en expansión, ¿qué es eso? ¿Por dónde empiezo y cuál es la mejor manera de usarlo? ¡Mira algunos tutoriales en video del equipo real de Android! Si no conocen la mejor manera de lograr algo en Android, ¿quién lo sabe?
- Parece que hay más cosas aquí que lo que estoy viendo … ¿Qué es un Dalvik? ¿Debería tener uno de esos? El sistema operativo Android es una bestia compleja, y la capa en la que normalmente trabajas se abstrae muy lejos de los bits y bytes centrales. Si realmente quiere ir por el agujero del conejo y aprender cómo funciona el sistema operativo, consulte el código fuente en sí; GrepCode le permite navegar por la base de código en línea, por versión de Android, para que pueda ver exactamente por qué no puede poner ese Double directamente en un TextView. Para una vista más histórica del Android, asegúrese de leer la historia completa de la plataforma de ArsTechnica .
4. Sé social
Tom Sundström ( licencia )
Regístrese en un foro de desarrolladores o grupo de interés en las redes sociales. Es una excelente manera de mantenerse al día con los últimos desarrollos dentro de Android, y generalmente hay un subgrupo de “principiantes” al que puede unirse para ponerse en contacto con otros novatos de Android para compartir consejos, frustraciones y enlaces. La comunidad de desarrolladores de Android Google+ siempre está ocupada, y otros foros como CodeProject, DevShed y CodeCall tienen secciones para debates específicos de Android. También regístrese en el canal de Desarrolladores de Android en YouTube, tiene algunos excelentes tutoriales en video que explican los conceptos: es un gran recurso para cuando recién comienza. ¡Incluso puedes unirte a los hangouts de Android Developer Office Hours para preguntarle al equipo directamente!
Aprender a buscar está deliberadamente por encima de este punto en este artículo, ya que hacer una pregunta que se ha hecho cientos de veces antes en el mismo foro, y para la cual la respuesta es fácil de encontrar, es la mejor manera # 1 de obtener una mala reputación con tu primer post …
Alguien por ahí probablemente ya ha hecho la pregunta que le está causando dificultades. Del mismo modo, si encuentra un problema que cree que nadie más tiene, haga la pregunta: las respuestas que obtenga ayudarán a la siguiente persona en sus zapatos que está tratando de resolver ese mismo problema.
Si su objetivo es convertirse en un desarrollador profesional, tendrá que trabajar en un equipo en algún momento, incluso si es solo con un diseñador gráfico o un equipo de marketing, por lo que acostumbrarse a trabajar en una base de código compartida es una habilidad útil, y trabajar con desarrolladores que ya tienen experiencia es una excelente manera de aprender. Participe en un proyecto comunitario de código abierto; echa un vistazo a GitHub y encuentra un proyecto de código abierto que te interese.
5. Tener un proyecto
Mejor aún: ¡ten muchos proyectos! Nada es mejor motivador que tener un objetivo que alcanzar. Podrías pasar días, semanas, meses revisando tutoriales y lograr muy poco que sea útil en el día a día. Peor aún, podría intentar crear una plataforma de medios sociales completamente preparada para múltiples idiomas, teléfonos y tabletas en un fin de semana para su primera aplicación. Fracasarás y sentirás que has fallado.
En cambio, encuentre un problema que pueda resolver con una aplicación, no tiene que ser nuevo. ¿Desea una calculadora personalizada que pueda enviar el resultado a su dirección de correo electrónico? ¿Quieres una aplicación de Tweet de una sola vez? ¿Una caja de resonancia de ruidos de pedos? Sea lo que sea, no necesita ser un producto viable o una aplicación innovadora cuando haya terminado, solo debe ser un proyecto en el que pueda trabajar.
Una vez que haya decidido sobre eso, divídalo en secciones más pequeñas; una aplicación que reproduce un solo archivo MP3, un botón que cambia de color cuando lo presiona o un descargador de imágenes asíncrono. Haga que cada uno de estos trabaje antes de intentarlo y conviértalo en su proyecto más grande.
De esta manera, le enseñará cómo trabajar de manera modular, una habilidad invaluable si nunca antes ha trabajado en un verdadero proyecto de OO, y le dará un mini proyecto terminado al final de cada sesión de codificación para ver y decir: ” Yo hice eso “