Acabo de empezar a aprender la codificación. Aproximadamente, ¿cuánto tiempo tengo para aprenderlo para poder hacer mi primera aplicación decente?

Aprender a programar es un proceso iterativo, se acumula, comienza con un documento vacío y lo llena con código. Luego agrega más documentos llenos de código.

Entonces, cuanto más código escriba, no podrá evitarlo, pero para mejorar, haga bucles más rápidos, funciones que funcionen y, luego, se asegure de que cada función tenga una forma de salir con elegancia, proporcione comentarios significativos y más escriba. su código anterior se verá como un montón de turd, lo que hace que desee volver a escribirlo, sucede muy a menudo que tenemos una palabra que suena aterradora para el proceso, llamada REFACTOR porque ningún jefe aprobará la ESCRITURA y solo unos pocos jefes entenderán el refactorización de palabras, pero eso es más o menos lo que es, y lo aprobará.

Por ejemplo, tengo un proyecto de 4 años que mantengo, el código más antiguo es malo en mi opinión, hace 4 años pensé que era una obra maestra o al menos algo parecido. Mi último código es considerado una obra maestra por mí, sé que lo odiaré en 2 años. Y el proyecto es demasiado grande para reescribirlo.

Entonces, ¿cuánto tiempo te llevará escribir una APLICACIÓN, no tanto tiempo? Simplemente póngase al frente de las herramientas de desarrollo de su elección, decida escribir una aplicación, ya sea una aplicación para compartir fotos, nómina, registro de tiempo o lo que decida, no decida que quiere escribir un nuevo facebook o algo así, una pieza a la vez. Y luego te decides por las características. Luego escribes la aplicación, es tan simple como eso.

La primera APLICACIÓN real que escribí para el iPhone fue solo una lista de continentes, que si eligió uno, mostró una lista de países con una bandera y luego, al hacer clic en un país, aparece otra vista con información básica. Todo estaba codificado, lo que significa que todos los datos estaban dentro de la aplicación. Sencillo. Pero ver tu primera aplicación ejecutándose en un dispositivo real fue una sensación increíble , a pesar de que la aplicación fue una completa mierda. Mi 4ª o 5ª aplicación era una aplicación financiera que hacía conversiones de moneda basadas en datos en vivo tomados de una fuente bancaria, tenía monedas favoritas para una lista corta de la que podía editar y eliminar. Unos meses más tarde, 2 tal vez, estaba trabajando como desarrollador de iOS a tiempo completo.

Eso fue en 2008. Por supuesto que no estaba empezando, conocía algunos otros lenguajes de programación.

Fui programador, pero renuncié en 2000 y me convertí en administrador de sistemas de Unix / Linux. Pero alrededor de 2005 decidí volver a la programación, y básicamente tuve que empezar desde cero, todo había cambiado en solo 5 años. Pascal se había convertido en el idioma principal que todos querían que nadie utilizara, solo pregúntele a alguien que tenga entre 20 y 25 años sobre Delphi, y no sabrá de qué está hablando. Compré lo que entonces se llamaba Real Basic (Nativo, multiplataforma) y ahora se llama Xojo, no estoy seguro de lo que pienso del nombre, pero las herramientas son excelentes. Decidí que dentro de unos meses tendría una aplicación shareware para la venta. Me tomó más tiempo de lo que pensaba, pero lo hice, hice algunas aplicaciones que puse a la venta y, en breve, gané cerca de $ 1000 por mes. Para el año 2008 volví a ser desarrollador profesional. Por supuesto que tenía que contar con el apoyo de mi esposa, y ella no siempre estaba contenta con el tiempo que había dedicado a esto.

Solo haga una aplicación pequeña que lo pruebe todo, como una guía telefónica, una guía de direcciones. Entonces sigue haciéndolo mejor. Aprenda a guardar datos en la base de datos de Sqlite, use más de 1 tabla para sus datos.

En resumen, nunca escribirá una aplicación con la que esté perfectamente satisfecho. Al final de su proyecto, será mucho mejor que cuando comenzó, habrá aprendido algunas cosas. Pero los grandes artistas envían. Necesitas terminar. Entonces empieza algo más.

¡Bien, felicitaciones a usted por recoger lo que es correcto para usted!

Ahora la respuesta.

La programación en sí no es suficiente para producir una aplicación decente. El diseño de software es un proceso iterativo y aburrido, y tiene que ensuciarse las manos haciendo algunas aplicaciones de prueba para al menos obtener la idea de lo que está haciendo. Es bueno que hayas empezado a aprender codificación.

Si quieres hacer apps,

  • elige un idioma
  • Estudíalo dentro y fuera por un mes o dos. No vayas demasiado profundo. Eso no se requiere en absoluto.
  • consígase una plataforma como Android, iOS, Windows, AWS
  • obtener un IDE adecuado (respondo por VisualStudio Code de Microsoft, es excelente!). Para Android y iOS, tienes Android Studio por intelliJ y xcode respectivamente.
  • Ahora, sumérgete en ello.

Oh, sí, para una buena curva de aprendizaje, debes asegurarte de hacer un montón de aplicaciones de mierda antes de hacer una decente.

Según mis experiencias pasadas, diría que puedes hacerlo en 2 meses, 3 máx.

Una aplicación decente es la que simplemente funciona y cumple una o dos funciones sin hickups ni bloqueos, cada vez.

Una aplicación decente NO es que tiene gráficos impresionantes y mil características. Tratar de hacer eso es una recepción para el fracaso. Muchos programadores principiantes tratan exactamente de hacer eso. Por favor no hagas esto.

En cuanto a la duración de esta aplicación decente, siempre aprendí a codificar mientras trabajaba en un proyecto real. Así que durante la fase de aprendizaje, una aplicación ya fue completada. No está escrito en el mejor código, pero funcionó. Nunca pude aprender de los libros o cursos de programación en seco.

Aprender a programar por separado y luego tratar de escribir una aplicación no es el mejor enfoque en mi opinión. Nunca funciono para mi. Siempre me aburrí solo durante el aprendizaje en seco, y conozco a muchos otros que sentían lo mismo y, como resultado, abandonaron la programación.

Una vez más, una aplicación decente es la que funciona. No necesita tener código estelar. ¿Alguna vez has mirado el código fuente de Android? Es justo lo contrario de estelar, es horrible en muchos lugares. Pero funciona. Y funciona en millones de dispositivos. Lo mismo es cierto para la mayoría del código que hay. No hay tal cosa como código perfecto. Entonces, si escribes un código que está lejos de ser perfecto pero funciona, estás en el camino correcto. Con el tiempo, aprenderá a mejorarlo, pero no tendrá que preocuparse por eso el primer día.

Elige un proyecto, alguna idea de aplicación en tu mente. Luego redúzcalo a una sola característica. Intenta escribir código para ello. Es posible que su conocimiento actual no sea suficiente para escribirlo, y tendrá que buscar en línea para codificarlo. Esto pondrá tu mente a un trabajo real. Tarde o temprano, su aplicación con una sola característica estará completa.

Pruébelo para detectar errores en múltiples dispositivos, dispositivos de sus amigos, hasta que esté seguro de que no se bloquea y funciona como se esperaba.

Luego continúe para agregar otra característica. Aquí aprenderá si su arquitectura original fue buena para acomodar nuevas características o si está reescribiendo todo el código nuevamente. No se preocupe, esta es una parte importante del aprendizaje y le enseñará cómo diseñar su código para la modularidad y la escala. Y este ciclo se repetirá mientras esté en la profesión de programación y con cada iteración lo convertirá en un mejor programador.

Hay un error común cuando la codificación de “aprendizaje”.

Aprender a codificar es diferente a aprender un lenguaje de programación. El aprendizaje de un lenguaje de programación está lleno de sintaxis, elementos primarios y otros datos e información diferentes. Estás aprendiendo cómo funciona el idioma, pero no cómo se usa.

Aprender a codificar requiere una mentalidad analítica y la aplicación de sus conocimientos de programación. La resolución de problemas y las lógicas son necesarias para resolver muchos problemas de programación, y conocer el idioma es la parte fácil. Descubrir cómo resolver el problema y luego usar el lenguaje, sin embargo, es más difícil.

No tengo un tiempo establecido para cuando harás tu primera aplicación decente. Siento que si practicas y aplicas diariamente, continúas aprendiendo y haciendo problemas, e intentas hacer tus propias aplicaciones, llegarás dentro de meses o un año.

Sus aplicaciones iniciales probablemente apestarán, pero es una experiencia de aprendizaje. Buena suerte.

Comencé a aprender C en 1986 y había escrito una aplicación de DOS Mandelbrot set en dos meses, y podía ampliar cualquier región que quisiera.

Obtuve mi primer trabajo menos de un año después de comenzar en C, y estuve en Microsoft un año más tarde, un desarrollador allí después de cinco meses.

Por lo general, la parte más difícil de una aplicación GUI es la interfaz de usuario. Ahora se ha vuelto más fácil con numerosos marcos para hacer las partes difíciles para usted, pero si entiende cómo escribir su propia función de mensaje y todo sin ningún marco, estará por delante de muchas personas nominalmente más experimentadas.

Ayer. Ya deberías poder escribir una aplicación de “¡Hola, mundo!”

Después de eso, define “decente”. ¿Un manejador de base de datos completo como aplicación web, incluida la programación del servidor? Años.

Y aun así no se ha acabado. La programación no es “aquí, lo has aprendido, así que puedes dejar de aprender”, es “aquí, has aprendido esta parte, ahora puedes continuar con esa parte”. Y siempre habrá una “esa parte” para aprender. Programación significa educación hasta que saques tu último aliento de programación. (He estado retirado durante casi 6 años, pero no he dejado de estudiar. Node.js apenas había salido de la cuna cuando me retiré. ¿Debería detenerme y negarme a aprenderlo? O al siguiente idioma, el que todavía ¿No se ha lanzado? No, si no estás preparado para seguir estudiando por el resto de tu vida, estarás escribiendo programas para 2017 en 2037. (Y ya tenemos suficientes sitios web de 1998 todos los días. )

Entonces, ¿cuándo terminarás de estudiar? Cuando hayas terminado de vivir. Hasta entonces, siempre habrá “aplicaciones” que no puedes crear, porque aún no has aprendido alguna técnica que la aplicación particular necesita. (Pero si sigues estudiando toda tu vida, estarás al día con los métodos actuales).

Entonces, “cuánto tiempo” depende de lo que usted considera una aplicación “decente”, ya sea que esté aprendiendo programación (suena como si no lo estuviera haciendo, simplemente está aprendiendo codificación), la programación está desarrollando el flujo del programa, no escribiendo código), y si estás dispuesto a seguir estudiando por el resto de tu carrera.

Depende de lo que “decente” sea para ti. Para hacer una aplicación “decente”, primero debe tener las habilidades de codificación y la capacitación necesaria para intentar un proyecto de este tipo. Nunca comience a lo grande, siempre empiece poco a poco al iniciar un proyecto. Al principio, intente crear programas pequeños que realicen tareas sencillas y luego proceda a realizar dicha aplicación. Intenta hacer fragmentos de la aplicación, uniéndolos más tarde.

La cantidad de tiempo requerido hasta que pueda iniciar y finalizar la aplicación depende de sus habilidades de codificación y de su tiempo asignado para esto. Puede tomar una semana, un mes o más. No importa cuánto tome, siempre mejore y continúe codificando.

Nadie puede responder eso.

No tenemos idea de lo rápido o eficaz que aprendes.

Tampoco tenemos idea de lo bien que podrá aplicar su aprendizaje en la codificación de algún programa de aplicación.

Tampoco tenemos idea de lo que podría considerar un programa de aplicación decente.

Sin embargo, esto no va a ser algo de la noche a la mañana, donde pasas una o dos horas mirando un libro, y de repente tienes la habilidad de escribir algún programa que aturdirá a tus amigos. Aprender a codificar cualquier cosa puede durar semanas o meses. Aprender lo suficiente para crear su propia aplicación imaginativa podría llevar años, como lo ha hecho para muchas otras personas.

¿Qué es una aplicación decente? Hay más en cualquier software de lo que parece.

¿Será una aplicación de calculadora una aplicación decente? ¿Qué plataforma estás buscando para desarrollar (iOS o Android)?