¿Cuándo debo comenzar a construir una aplicación mientras estoy aprendiendo el código?

En teoría, sé cómo cambiar el aceite de mi coche. Como si supiera que debo levantarlo, colocar los soportes debajo de él, encontrar el cárter de aceite, colocar el colector debajo de él, quitar el tornillo de drenaje, etc. etc. etc.

¿Puedo realmente cambiar el aceite en mi coche? Sí. Al pagarle a alguien más para que lo haga porque nunca lo he hecho y no tengo idea de qué demonios estoy haciendo debajo de mi auto.

Entender lo que estás viendo / oyendo es increíble , no me malinterpretes. Pero la programación es una de esas cosas que aprendes mucho al hacer algo.

Así que en cambio les ofrezco algunos retos:

  1. Construye un juego de tic-tac-toe. La versión inicial debe asegurarse de alternar entre X y O y calcular correctamente si ocurre un ganador.
    1. Modo difícil: crea una IA que SIEMPRE te empate o te gane.
  2. Crear un juego parecido a Boggle (google)
    1. Modo difícil: agregue una IA que use sus mismas letras para determinar si un usuario ha encontrado todas las palabras disponibles.
  3. Nave de batalla Una cuadrícula donde se obtiene una conjetura o un golpe. Incluye tantas piezas como quieras.
    1. Modo difícil: intente descubrir cómo conectar la información que se muestra a través de Internet para poder jugar contra alguien.
    2. Modo difícil (alt): hacer una IA. No tiene que ser bueno, solo que alguien te esté llamando.

Tan pronto como sea posible. Es importante comenzar a resolver problemas reales lo antes posible.

Los ejemplos de juguetes son excelentes para entender la sintaxis, pero eso es una pequeña parte del proceso de codificación.

La mejor manera de aprender a codificar es construyendo cosas. Encuentre algo de lo que disfrute o tenga curiosidad y construya algo alrededor de eso mientras aprende a codificar. Aprende a codificar construyendo una aplicación. Puede que no lo sea, y lo más probable es que no sea lo mejor que hayas construido, pero está bien. El único objetivo en este punto es aprender y nada más.