Cómo desarrollar una aplicación desde cero

Gracias por el A2A, Pato Yassir! Como siempre, mis respuestas gravitan hacia lo poco convencional, y espero que esta no decepcione.

No cree una aplicación desde cero, o en absoluto

Miles de aplicaciones se sientan silenciosamente en Play Store y mercados de aplicaciones en todo el mundo. ¿Sabes qué aplicaciones fallan más, lector? Aplicaciones de chat Mire a fondo sus bancos de memoria y piense en la última vez que cambió a una aplicación de chat diferente.

Si eres como yo, acabas de tener un recuerdo de esas aplicaciones de mensajería que combinaban MSN, AIM y una docena de otros proveedores de chat en un cliente nativo de Windows XP. Te permite hablar con todos tus amigos desde una aplicación: asesino.

¿Por qué volví a eso? Porque la gente realmente no cambia las aplicaciones de chat. Pueden cambiar las aplicaciones de SMS, pero incluso eso se está volviendo más difícil ya que Android ofrece una excelente experiencia de SMS con la aplicación Messenger. Luego también tienes Hangouts y Facebook Messenger que también manejan SMS / MMS, esos son los titulares difíciles de vencer.

¿Sabes qué otra empresa joven e innovadora está tratando de hacer una aplicación de chat única, como tú, y está en medio de un fracaso espectacular? Una pequeña tienda de mamá y pop que se hace llamar “Google, Inc.”

“Google?” Eso nunca se dará cuenta.

Ahora pregúntese lo siguiente: ¿puedo igualar el presupuesto, la innovación, la tecnología y el dominio del mercado de Google? Si es así, ¡tú también puedes construir una aplicación de chat que falla!

Pero es una muy, muy, muy buena idea

¿Cómo lo sabes? Digamos que crees que tu idea es genial. Tan inteligente, de hecho, que requiere una tecnología única que WhatsApp no ​​puede clonar en una semana y hacerlo 1000 veces mejor también. Y digamos que ya ha creado esta tecnología o aspecto único y es solo cuestión de ponerla en su aplicación de chat.

¿A quien le importa?

Probablemente parezco pesimista y estoy tratando de aplastar tus sueños y haciendo un trabajo de primer nivel. Eso termina con esta oración. Si realmente crees en tu idea, no te sumerjas cientos de horas en aprender Android o cualquier otro tipo de desarrollo para darle vida.

Antes de hacer nada: prueba tu idea .

¿Cómo?

Trabajo ambulante. Montones y montones de trabajo preliminar. Sal y entrevista a las personas. Si su aplicación está dirigida a un grupo demográfico único (recomiendo súper único como una aplicación para conserjes solitarios de acuarios en sus 40 años), entonces encuentre a esas personas y póngalas en la aplicación.

Cree una página de destino para su idea y pruebe la tasa de conversión. ¿Las personas se registran para obtener más información al respecto? Use anuncios para enviar personas a su página de destino y recopile sus correos electrónicos. Si miles de personas aparecen en su página, pero no se registran, cambie la copia.

Refactorice y modifique hasta que las personas resuenen con su idea. Si puede recopilar más de 100 correos electrónicos de calidad, puede comenzar a rascar esa barbilla de desarrollo.

La gente literalmente me ruega que construya esto

¡Excelente! No, en serio, no hay sarcasmo, ¡estas son buenas noticias! Y aquí están las mejores noticias, acabo de responder una pregunta súper relevante para esta parte:

¿Podemos crear aplicaciones de Android de pila completa sin conocer el código?

No aprendas a codificar, no tienes que hacerlo. Más importante aún, si esta es su primera aplicación, desea construir un prototipo lo más rápido posible. El objetivo es fallar y fallar rápidamente.

Es doloroso pasar un año aprendiendo Android, luego otro año construyendo su aplicación, luego un año más llorando por los dos años que se sienten desperdiciados. Maldición, ¡ahora son tres años!

Use una herramienta multiplataforma de código bajo como OutSystems o AppGyver. Aprenderá estas herramientas mucho más rápido de lo que aprenderá el desarrollo completo, confíe en mí. O construya su back-end con una herramienta como Bubble y su front-end con Jasonette.

Este camino reducirá su tiempo de aprendizaje y desarrollo a meses en comparación con años. Entonces, si todas esas personas descargan tu aplicación y les encanta, has ganado. Ahí está tu aplicación de chat, bebé.


Espero que esto no haya sido demasiado duro, pero el amor duro es el mejor tipo de amor, siempre dice mi padre. Vota por favor si esta respuesta llenó el sentimiento vacío en tu corazón.

Contáctame para más cosas, proyectos de Android o simplemente por diversión. Me encanta saber de los lectores.

Como usted dijo que es un novato, voy a suponer que nunca antes ha realizado la programación, en cuyo caso le recomendaría que primero aprenda los conceptos básicos. Querrá hacer esto en Java como Android y el SDK está escrito en Java. Te recomendaría que recojas un libro en Java. Si eres un estudiante de secundaria, diría que el plan de estudios de Ciencias de la Computación AP es un buen lugar para comenzar y, como beneficio adicional, si dominas el material y tomas el examen, puedes obtener crédito para cuando te dirijas a la universidad.

Los temas mínimos que definitivamente debe comprender son los tipos primitivos básicos, el flujo de control, la mutabilidad y, lo más importante, la programación orientada a objetos y sus conceptos relacionados (encapsulación, polimorfismo, abstracción y herencia). Sin lo básico, no tendrá la oportunidad en el infierno de comprender la documentación del SDK, con lo básico, será mucho mejor, incluso si aún no comprende la mayor parte.

En términos de tiempo, el señor lo sabe. Actualmente estoy trabajando en mi primera aplicación también, aunque en iOS y con Objective-C y Swift. Mi propio proyecto personal ha tomado mucho tiempo y en este punto he aprendido mucho mientras aún estoy muy lejos de completarlo.

Yendo más allá de los recursos concretos, tengo algunos consejos.

  1. Primero, antes de escribir una sola línea de código, siéntese y divida su aplicación en varios problemas menores. Incluso si su conjunto de características cambia más adelante, sigue siendo útil planificar lo que necesita. Fuera de mi cabeza, sé que necesitaré hacer redes, ya que me estoy comunicando entre dos usuarios, probablemente necesitaré algún tipo de persistencia.
  2. Utilice un sistema de control de versiones como Github o, al menos, la copia de seguridad a menudo. Sí, es un poco detallado, no es lo más intuitivo que existe, pero cuando te das cuenta de que te equivocaste masivamente, es bueno recurrir a una versión anterior y comenzar de nuevo. Personalmente guardo el código en Github, Dropbox y dos medios separados, pero estoy siendo paranoico. La regla mínima que debe seguir es 3–2–1: 3 copias, 2 copias locales en diferentes dispositivos y 1 copia fuera del sitio. Esto le dará la mejor posibilidad de que su código sobreviva a un acto de Dios.
  3. Esté preparado para reescribir el código con frecuencia. Regresé innumerables veces y reescribí el código para que se ajuste mejor a las necesidades de la aplicación en ese momento. He extraído grandes cantidades de código para que la aplicación en su conjunto funcione mejor. No tengas miedo de reescribir el código.
  4. Prueba a menudo. Lo último que desea hacer es escribir unos cientos de líneas solo para descubrir que no funciona debido a algún error que cometió al comienzo del nuevo código. Como beneficio adicional, intente aprender a escribir pruebas unitarias con JUnit. Nuevamente, es tedioso y la prueba de la unidad puede tener más líneas de código que la que está probando, pero créanme, vale la pena si la dominan.
  5. Se persistente. Este es un maratón, no un sprint. Te encontrarás con obstáculos. Tendrá días en los que una sola línea de código no funciona como espera. Encontrarás cosas y soluciones que simplemente no entiendes. Sea persistente, esfuércese por comprender las cosas que no entiende y por resolver los problemas difíciles a medida que surjan. Después de todo, si el desarrollo de la aplicación fuera fácil, todos y su abuela lo harían. Cuando persista y finalmente lo consiga, celebre la victoria y continúe hacia adelante. Y en una nota final …
  6. Estar bien con el fracaso. De acuerdo, esto suena un poco cínico y pesimista, pero deberíamos abordarlo. Es posible que nunca termine su aplicación y eso está bien. Demonios, tengo bastantes ideas y proyectos que comencé pero que nunca terminé o terminé en mi imagen original. Pero eso está bien siempre y cuando hayas aprendido algo. Tengo toneladas de libros de programación en mi estante, pero las lecciones más interesantes o importantes que aprendí fueron aprendidas mientras realizaba un proyecto. Para citar a CS Lewis, “Experiencia: el más brutal de los maestros. Pero tú aprendes, Dios mío, ¿aprendes?

¡Hola!

Recientemente escribimos un artículo sobre este tema y queremos compartirlo con usted. Descubrirá las etapas de la creación del proyecto, por qué estos pasos son importantes y por qué el resultado positivo es imposible sin la observancia de este proceso:

Los pasos más importantes:

  1. PREPARACIÓN (Reúna los requisitos)
  2. MARCOS Y DOCUMENTACIÓN
  3. DESARROLLO (diseño de interfaz de usuario)
  4. DESARROLLO FRONTEND + BACKEND
  5. PRUEBAS
  6. LIBERACIÓN Y APOYO

    Artículo completo: Cómo creamos un proyecto desde cero.

Hay un término medio en su caso: cree una aplicación utilizando una plataforma de aplicación móvil. Algunos pueden involucrar codificación, otros emplean editores de arrastrar y soltar y muchas opciones / características para ayudar a cualquiera a crear una aplicación única sin habilidades de codificación requeridas.
Recuerdo Mobile Roadie, su plataforma ha existido por más de 5 años, y los usuarios de la plataforma incluyen muchos nombres famosos. Pero los precios no son tan altos. Aquí está el sitio web. No debería tener problemas para crear su propia aplicación de mensajería única (e incluso ir un poco más allá si lo desea).

Aquí hay algunos enlaces útiles para aprender el desarrollo de aplicaciones de Android

Gratis:

Conviértete en un desarrollador de Android desde cero – Udemy

Tutorial de Android para principiantes – Aprender haciendo – Udemy

Pagado:

El curso completo para desarrolladores de Android: ¡principiante a avanzado!

Aprenda desarrollo de Android: curso completo para desarrolladores de Android

Espero eso ayude

Sigue a udacity