¿Cuánta experiencia se necesita para programar una aplicación?

No piense que necesita experiencia para programar la aplicación. Piensa que la experiencia proviene de hacer una aplicación. Asi que ,

Si quieres hacer una aplicación de Android

  1. Descargar eclipse IDE
  2. Descargue una aplicación de Android de muestra y aprenda su estructura
  3. Busque en Google los componentes secundarios de la interfaz de usuario de la aplicación y la conectividad de la base de datos
  4. Aprenda los conceptos básicos (java + android) para modificar la aplicación (clase, función, intención, ciclo de vida de la actividad, etc.)
  5. Comience a modificar la aplicación de acuerdo a sus requerimientos
  6. Aprende tu mismo

Si quieres hacer una aplicación de iOS

  1. Descargar Xcode IDE (Need OSX)
  2. Descargue programas de muestra y compruebe cómo está escrito
  3. Verifique el diseño de la interfaz de usuario y sus conexiones de código
  4. Aprenda los conceptos básicos del objetivo c (clase, llamadas a funciones, delegados, etc.)
  5. Comience a modificar la aplicación por usted
  6. Aprende tu mismo

La respuesta fácil es que necesitas poder leer y escribir y saber cómo usar Google.

La respuesta más complicada es que también depende de su perseverancia, su capacidad para ver patrones y resolver problemas y su imaginación. Algún nivel de pensamiento crítico es esencial para progresar realmente. Muchos programadores piensan: ‘Bueno, cualquier mono puede codificar mientras lo intente’, pero eso sobreestima a la persona promedio no orientada a la tecnología. Por un lado, generalmente tiene que seguir las instrucciones exactamente, excepto todas las veces que hay un error tipográfico, o el código está desactualizado, o el autor simplemente se equivocó, y esa es la parte fácil que muchas personas ni siquiera pueden pasar.

Cualquiera puede buscar ‘cómo programar’ y seguir la guía a ciegas, eliminando el código de acuerdo con los ejemplos dados y leyendo las explicaciones. Eso no significa que haya aprendido a codificar, pero ciertamente se sentirá así después de escribir cientos de líneas, leer las explicaciones paso a paso y ver que el código se ejecuta perfectamente, porque obviamente todo ha sido probado por El autor, por supuesto.

Entonces, después de que se haya convencido, con lo que sabe, intente armar programas para resolver problemas simples por su cuenta . Puede encontrarse con errores y funciones que no funcionan como pensaba que lo harían. Depurar con cuidado. Es posible que ni siquiera vea inicialmente cómo comenzar a resolver algunos de ellos: tome uno común y fácil como ordenar una matriz; Si no se les enseña, muchas personas ni siquiera podrían articular claramente cómo comenzar, y mucho menos ponerlo en código. Puede darse cuenta de que la programación no se trata tanto de conocer la sintaxis como de la resolución real de problemas, y darse cuenta de que las personas en los foros no solo soplaban aire caliente mientras hablaban sobre zen e intuición y otras cosas. Algunas personas se rinden por este punto. Intenta abordarlo en serio; Está bien si fallas. La clave es participar en el proceso en lugar de simplemente levantar las manos en la línea de partida.

Después de haber hecho bastantes, probablemente tenga una idea de cómo es generalmente la resolución de problemas en la programación. También pueden darle una idea de dónde es débil sintácticamente. Si llega al punto en que está completamente aburrido de estos problemas de programación aparentemente no prácticos, sumérjase y comience a tratar de programar la aplicación deseada con la ayuda de Google. Te encontrarás rápidamente con más problemas de los que podrías sacudir. De repente, encuentra errores de enlazador y bibliotecas arcanas y fragmentos de código indocumentados con símbolos extraños y dobles asteriscos. De repente, todas esas páginas irrelevantes sobre punteros y directivas de preprocesador se vuelven mucho más importantes, incluso si aún no te importan.

Hacer frente a la documentación arcana será una de sus principales tareas. No todos los programadores que escriben tutoriales comprenden el enorme abismo de conocimiento y las ideas preconcebidas para principiantes que tuvieron que cruzar en el camino hacia el desarrollo de aplicaciones ‘serias’. Sigue buscando en Google, crea enlaces entre conceptos, no tires un tutorial por completo solo porque parecía demasiado complejo la primera vez. Aprenda que las API son bestias complicadas que ni siquiera sus propios desarrolladores comprenden por completo, y esté bien, al menos al principio, con solo juntar cosas que no comprende completamente y hacer que funcionen. Google todo: mensajes de error, términos desconocidos, diez variaciones sobre ‘¿cómo / por qué hago X?’ Algunas cosas parecen nunca explicarse correctamente en términos realmente útiles : mi ejemplo personal es Delegación (OOP) en Wikipedia. Si todo lo demás falla, haga preguntas en los foros. Puede ser algo grosero, pero he descubierto que las preguntas que suponen un conocimiento deliberadamente incorrecto como un hecho conducen a la mayoría de las respuestas: a las personas les encanta corregir a los demás. ¿No sabes para qué sirven los punteros y no puedes entender nada en la web sobre ellos? “Los punteros son inútiles! ¡Puedo codificar cualquier cosa sin ellos! ¿Por qué debería usarlos alguna vez? ”Diablos, a veces el simple encuadre de la pregunta rencorosa puede llevarlo a pensar en una respuesta incluso antes de presionar enviar.

Por lo tanto, todo esto requiere experiencia, en cierto sentido: cómo usar Google correctamente, cómo aprender y mejorar de manera efectiva, y cómo encontrar las preguntas para preguntar dónde inicialmente parece que no hay ninguna. A la gente le gusta decir, ‘no hay preguntas estúpidas’. Eso ciertamente no es cierto en las clases rodeadas de otros, si tienes algún sentimiento de vergüenza; pero para Google, realmente no hay preguntas estúpidas. Pregunta lejos y nunca dejes de preguntar.

Desde mi punto de vista, realmente no necesitas experiencia para programar una aplicación. Puede aprender eso a lo largo del camino, cuanto más programe, más experiencia obtendrá de él. Solo conozca los conceptos básicos de Java, si planea programar una aplicación de Android y conozca los conceptos básicos de Objective-C y C para aplicaciones de iOS.