No hay suficiente información en la pregunta para proporcionarle la mejor respuesta posible.
¿Por qué quieres aprender programación?
- ¿Quieres participar en programación competitiva , por ejemplo, ACM ICPC?
- ¿Quieres construir sitios web y aplicaciones web ?
- ¿Quieres construir aplicaciones de escritorio ?
- ¿Quieres construir aplicaciones móviles ?
- ¿Quieres construir un sistema operativo ?
La respuesta a su pregunta depende de la respuesta de las preguntas mencionadas anteriormente. Déjame intentar guiarte hacia cada posibilidad. Para todas las cosas mencionadas anteriormente, debe aprender uno o más lenguajes de programación . Entonces tienes que practicar ese idioma todos los días para que sea fluido. Debes poder transferir tus pensamientos a tu código .
- “Quiero participar en programación competitiva”.
- Aprende un lenguaje de programación como C / C ++ o Java . Estos dos son aceptados en todas las plataformas de programación competitiva. Para un principiante, aprender lo hará cualquiera. Aprende el idioma leyendo libros como “Teach Yourself C ++” de Herbert Schildt. Escriba todos los códigos por usted mismo y ejecute los programas que se dan en el libro.
- Después de terminar el libro, comience a resolver problemas en las plataformas UVaOJ, LightOJ, Topcoder, Codeforces, Codechef, Hackerrank, etc. Hay muchos de ellos. Simplemente comienza a practicar en algún lugar. La sección de principiantes de LightOJ es buena. Sigue practicando
- Como ha estado practicando durante alrededor de 6 meses, ahora debería ir a aprender algoritmos y estructuras de datos . Hay muchos de ellos para aprender. La sección de tutoriales de topcoder te va a ayudar mucho. Sin embargo, si los encuentra difíciles de entender, solo busque el tema en google y encuentre los tutoriales que le gusten. Geeksforgeeks también es un gran lugar lleno de cientos de artículos. Aquí hay dos respuestas que te ayudarán.
- La respuesta de Bidhan Roy a ¿Qué es una lista de estructuras de datos que un programador competitivo debe conocer?
- La respuesta de Bidhan Roy a ¿Cuáles son algunos buenos sitios web para aprender estructuras de datos y algoritmos?
- La última fase es seguir practicando, aprendiendo cosas nuevas y participando en concursos con regularidad. Asiste a Topcoder, Codeforces, Codechef, Hackerrank de forma regular. ¡Continúa creciendo!
- “Quiero construir sitios web y aplicaciones web”.
- Hay dos partes principales en el desarrollo web. El front-end y el back-end. El front-end es la “página web” que ves en el navegador de tu computadora. El back-end es el programa que se ejecuta en el servidor que no se ve directamente.
- Para el desarrollo de front-end , necesita aprender HTML, CSS, JavaScript, etc., que se utilizan para construir la página web.
- Para el desarrollo de back-end , hay muchos lenguajes de programación del lado del servidor. Puedes aprender PHP, Java, Python, Ruby, JavaScript, etc.
- Utiliza HTML, CSS, JavaScript para construir las páginas web. Hay marcos frontales como bootstrap, angularJS, etc. que te ayudarán.
- Utilice el lenguaje del lado del servidor para codificar el back-end. Más adelante puede usar frameworks como Django, Spring, Laravel, etc.
- Dependiendo de si usa un marco o no, y del marco que use, es posible que necesite aprender sobre el lenguaje de consulta y la base de datos. Incluso si no necesita aprender el lenguaje de consulta, si el marco hace todas las cosas buenas por usted, aún debe considerar buscar en la base de datos y el lenguaje de consulta. Definitivamente ayudará.
- ¡Así que aprende y comienza a construir algo! Hay muchos recursos gratis.
- “Quiero construir aplicaciones de escritorio”.
- Para aplicaciones de escritorio, puede utilizar Java, Python, C ++, C #, etc.
- Aprende el idioma de algún libro o sitio web. ¡Construye la aplicación!
- “Quiero construir aplicaciones móviles”.
- Para Android, tienes que aprender Java .
- Google tiene sus propios tutoriales de Android que son lo suficientemente ricos. También puedes encontrar muchos tutoriales en youtube.
- Para ios, tienes que aprender Objective-C .
- ¡También hay muchos tutoriales disponibles en Internet para iOS!
- “Quiero construir un sistema operativo”.
- Esto es mucho más complicado que cualquiera de los anteriores. Tienes que estudiar muchas áreas de la informática para construir una. Entonces, por ahora, supongamos que no va a construir un sistema operativo.
- Sin embargo, aquí hay una idea aproximada de las cosas que necesitas saber si quieres construir un sistema operativo.
- Programación del sistema (muy probablemente utilizando C / C ++)
- Programación en lenguaje ensamblador
- Arquitectura de hardware
- Sistemas de archivos
- Gestión de la memoria
- Procesos
- ¡Mucho más!
Aquí hay una confesión sincera, sin embargo, no tengo mucha experiencia sobre las últimas 3 partes de esta respuesta. Así que solo traté de dar una idea basada en el poco conocimiento que tengo. También podría haber perdido cosas importantes. Hay muchos otros aspectos de la programación que no he mencionado aquí. Estos son los más populares.
- ¿Por qué tantas chicas adolescentes dicen ser sociópatas cuando obviamente no lo son? Es insultante en mi opinión.
- ¿Cuáles son los mejores clubes para mayores de 18 años en San Diego?
- ¿Prefieres ser un adolescente en los 70 o un adolescente en los 00?
- Si no tienes éxito con las chicas cuando eres adolescente, ¿serás así para siempre?
- ¿Debo dejar que mi hijo de 15 años vea Deadpool?
¡Comience a realizar búsquedas en Google, comience a aprender, siga practicando y siga creciendo!