¿Qué lenguaje de programación debo aprender como estudiante de secundaria?

¿Qué sistema tienes ya? Windows / Apple / Linux / algo más? Esto se debe a que algunas herramientas que utiliza para programar funcionan más fácilmente en ciertos sistemas que en otros. Alternativamente (y en realidad mejor) es no tener miedo de usar algo diferente (por ejemplo, instalar un Linux si tienes un Windows). La razón por la que digo que es “mejor” no se debe a que Linux sea “mejor” (o, para el caso, a cualquier sistema operativo), sino porque para ser un programador tiende a requerir la mentalidad de “probar algo”. Y hacer algo así es una buena práctica para las cosas que harás más tarde dentro de la programación también.

¿Hay algún otro programa que haya utilizado además de los juegos que le gustaría entender cómo funcionan bajo el capó? Incluso los juegos serían una muy buena opción, tal vez te gustaría hacer uno tú mismo, esa es una opción tan válida como cualquier otra cosa posible. Te recomiendo que elijas algún tipo de enfoque. Es muy difícil convertirse simplemente en un programador de “propósito general”. Es difícil evitar que su mente divague cuando los ejercicios hacen algo que le resulta bastante aburrido. Si tienes algún objetivo que te interese, es mucho más fácil pasar por los puntos donde la programación se vuelve difícil / aburrida / exasperante / etc.

Si realmente no puedes encontrar algo específico. Elija algo como los 10 idiomas principales en sitios como Tiobe. Escríbelos en pedazos de papel. Pégalos en un tablero de dardos. Lánzales un dardo. Comienza a aprender el que penetró el dardo. Es realmente tan irrelevante en cuanto al idioma que eliges.

La única forma de hacer una elección objetiva es conocer el destino deseado; de lo contrario, no hay otro criterio que la popularidad / disponibilidad de recursos de aprendizaje para elegir entre cualquier idioma. Y que la elección de los diez primeros (más o menos) ya lo hace para usted, después de lo cual no es realmente posible elegir, por lo que la elección aleatoria es tan buena como cualquier otro método.

Piénselo de esta manera: decir que quiere programar, pero no saber qué tipo de programación, es similar a decir: “Quiero ir a algún lado, no sé dónde y / o cómo, solo quiero irme”. Luego, preguntar qué idioma usar es como preguntar: “¿Qué tipo de transporte necesito para ir a ese lugar que no conozco?” Lo mismo se aplica aquí, nadie podría decirle si un autobús o un automóvil serían mejor, o un avión o barco: cualquiera de ellos podría ser la elección correcta, cualquiera podría ser igualmente la elección incorrecta. No hay forma de saberlo, ya que no hay conocimiento del destino (podría ser la casa de al lado y simplemente puedes caminar, luego otra vez podría ser la luna y necesitas un cohete) – nadie lo sabe, incluido tú, así que no- Uno realmente podría recomendar cualquier cosa.

Tan pronto como alguien (incluyéndome a mí) sugiera algún idioma, le estamos imponiendo nuestro destino elegido. Es como si te dijera, toma un avión e ir a Francia, ya que me gusta el país. Tal vez no, tal vez le gustaría más Chille, tal vez todo lo que realmente quería hacer era mudarse a la siguiente ciudad en su propio país / provincia / estado, y lo que le estoy diciendo que haga le hará infeliz. Entonces, tal vez un autobús se adapte mejor a su destino, y un avión simplemente no lo llevará a donde le gustaría ir. Por lo tanto, si te digo que vayas a aprender algo como Python, pero realmente quisieras hacer una aplicación de teléfono inteligente, encontrarías que el lenguaje es bastante difícil como herramienta para construir una aplicación (no es imposible, pero hay herramientas más fáciles de hacer). mismo). Si le digo que aprenda C, pero en realidad desea crear un sitio web, se aplica lo mismo. Si le digo que aprenda JavaScript, pero desea hacer un programa de modelado 3D, nuevamente se aplica lo mismo.

Todos y cada uno de los idiomas tienen puntos buenos y malos, no existe un único “increíble”. Esa es la razón por la que hay tantos. Alguien descubrió que las cosas existentes simplemente no eran suficientes para su “destino” elegido. Luego diseñó uno para que funcione mejor … para ellos. Incluso puede ser que algún otro programador tuviera en mente el mismo destino, pero descubrió que prefería ir allí utilizando otro tipo de transporte. Entonces obtienes muchos idiomas destinados a hacer lo mismo, simplemente haciéndolo de manera ligeramente diferente. Por ejemplo, hacer las cosas del lado del servidor para un sitio como Quora se podría hacer en Python (como se hace mucho), pero igualmente se podrían usar JavaScript, Ruby, PHP, Perl, C, C ++, Java, C #, etc., etc. utilizado exactamente para el mismo propósito. Algunos programadores preferirían uno sobre otro, pero es más subjetivo de lo que les gustaría admitir, generalmente porque se conocen mejor que otros, o se ven obligados a hacerlo porque los recursos existentes ya lo usan.

Si está utilizando Windows, recomendaría C # como lenguaje y puede obtener Visual Studio Community como editor de forma gratuita.

A continuación, recomendaría encontrar un objetivo relativamente modesto y para simplificar las cosas, sugeriría que encuentre un código que ya resuelva el objetivo parcialmente, por lo que solo necesita hacer algunas modificaciones.

Por ejemplo, encuentre código para tic-tac-toe. Objetivo → expandirlo a un 4 × 4 tic-tac-toe.

Debería poder encontrar algunos proyectos en Github u otros repositorios que, con suerte, simplemente funcionarán de inmediato y podrá comenzar a ajustar el código casi de inmediato y ver el efecto de los cambios que realice.

Si desea comenzar realmente lento, busque un ejemplo de “Hola mundo” y comience a modificarlo, por ejemplo

  • aceptar entrada y repetir la entrada
  • responda con diferentes mensajes según la entrada (si escribe “tiempo”, visualice la hora, si escribe “espacio libre en disco”, visualice la cantidad de espacio libre en disco, etc.)
  • implementar una IA que pueda tener una conversación en inglés que pase la prueba de Turing, es broma

Intente y mantenga sus objetivos desafiantes pero alcanzables, si se golpea la cabeza demasiado tiempo contra algo, intente dividirlo en objetivos más pequeños o archivarlo y elegir otra cosa.

También mire organizaciones como esta Code.org: cualquiera puede aprender

Hay algunos de ellos y pueden ayudar significativamente a superar algunos de los obstáculos iniciales y la curva de aprendizaje.

Debes elegir una idea que quieras convertir en realidad y ocuparte de eso.

¿Quieres escribir una aplicación de Android? Tendrás que aprender Java. ¿Una aplicación para iOS? Rápido y Objetivo-C.

¿Desarrollo web? JavaScript, PHP, HTML, CSS y un montón de otros marcos con nombres extraños que no puedo pensar en este momento …

Programación de bases de datos? SQL, combinado con otros lenguajes.

¿Quieres jugar con una máquina Linux? Aprende algunos scripts de Bash.

¿Quieres escribir un mod de Minecraft? Java. ¿Un nuevo modo de juego para Garry’s Mod? Creo que sería Lua. ¿Quieres comenzar a hacer juegos con el kit de desarrollo irreal? Comienza a aprender UnrealScript.

¿Ves cómo el lenguaje es en gran medida irrelevante? Todo se reduce a lo que realmente quieres hacer . Decide eso primero, y luego comienza a aprender. Es como preguntar: “Quiero comenzar la carpintería; ¿Qué debería aprender primero, un destornillador o una sierra para metales?

Los idiomas son herramientas. Usa la herramienta correcta para el trabajo correcto.

¡Aprende Python!

Es un lenguaje muy divertido y fácil de aprender. No me refiero a fácil en el sentido de que la programación es fácil, pero en el sentido de que Python permite mucha flexibilidad.

Con este lenguaje, puede implementar marcos web para crear sitios web, crear API para admitir aplicaciones web o incluso utilizar para escribir scripts para juegos.

Sin embargo, si desea codificar videojuegos, le recomiendo que aprenda C # a través de los motores de juegos de Unity.

Con python, puede escribir algo que no funciona, ver por qué, solucionarlo e intentarlo de nuevo rápidamente. Eso es lo que me encanta, ¡es como una caja de arena!

Casi cualquier lenguaje de propósito general servirá como punto de partida. Debes concentrarte en aprender a programar, en lugar de aprender un idioma específico. Si te tomas en serio esto, es probable que quieras aprender varios idiomas con el tiempo.

El proceso completo de programación consiste en lo siguiente:

  1. Encuentra una oportunidad o un problema para resolver.
  2. Obtenga una comprensión de la oportunidad o problema, y ​​los requisitos para abordar esa oportunidad o problema.
  3. Diseña una solución.
  4. Implementa esa solución.
  5. Probar y depurar esa implementación.
  6. Entregar el producto.

Tenga en cuenta que puede ser necesario volver a los pasos anteriores, refinando su comprensión o reelaborando su solución. Los requisitos pueden cambiar, puede tener problemas, puede tener mejores ideas. Eso es normal y de esperar; no te desanimes por eso.

Tenga en cuenta que la codificación es realmente 4 y algo de 5.

Será más fácil aprender esto realmente si se te ocurren proyectos para trabajar en lugar de deambular sin rumbo fijo. Comience con algo pequeño y simple, y vaya avanzando hacia ideas más complicadas. Un proyecto debería desafiar su nivel actual de comprensión.

Una pista importante: Google (o los motores de búsqueda en general) es tu amigo. No tienes que memorizar todo; de hecho, no puedes, porque hay demasiado por ahí. No te preocupes. Si no puedes recordar algo o te encuentras atascado, busca respuestas. Incluso aquellos de nosotros con muchos años de experiencia hacemos esto con frecuencia.

No puedo decirte qué debes aprender / qué te quedaría mejor, sin embargo, podría darte algunos consejos.

Es muy fácil comenzar a experimentar con HTML y CSS. Esto no te llevará mucho tiempo antes de que te acostumbres (no es necesario que lo domines). Si te gusta, puedes comenzar tu verdadero viaje explorando PHP un poco. Hay algunos webhosts gratuitos que admiten PHP si no quiere tomarse la molestia de configurar su propio servidor. (Nuevamente, no necesita dominarlo, solo aprenda cómo funcionan las cosas)

Después de no demasiado tiempo, le sugiero que aprenda sobre OOP (programación orientada a objetos). Realmente no puedo comparar con otros lenguajes de programación, pero según mi experiencia, Java sería un buen comienzo. Puedes encontrar muchos buenos tutoriales en la web. Si te gusta, podrías considerar comprar un buen libro.

Elige hacer un proyecto real y terminarlo. Por ejemplo, haga un CMS básico en PHP. Esto realmente acelerará su aprendizaje.

Fuente: Esto es básicamente cómo comencé en la programación.

Editar: Python también sería un buen comienzo. Definitivamente recomiendo aprenderlo, ahora o en el futuro.

Bueno, en general, ayuda tener una idea de lo que le gustaría escribir. La programación es mucho más sobre la resolución de problemas que sobre el lenguaje. Es como escribir. Claro, el vocabulario y la gramática son útiles, pero si desea hacer algo más que crucigramas, debe tener algo sobre lo que escribir, poder convertir una frase y construir un trabajo convincente (ensayo, informe, libro, lo que sea).

Si te gusta jugar, comienza a diseñar juegos simples y aprende sobre la programación de juegos. O únete a un equipo de robótica y aprende a hacer que un robot salte a través de los aros. O algo más que flota tu bote.

Realmente depende de lo que quieras hacer, solo elige algo que creas que es interesante y luego encuentra el idioma más adecuado. En mi caso, quería escribir un sistema operativo, así que fui con el ensamblaje C y x86.

Python Si tuviera la opción de elegir cualquier idioma y no tuviera un requisito de desarrollo específico, sería Python.

Prefiero Python porque es un lenguaje de propósito general con la menor cantidad de andamios para aprender.

Bebé de la vieja escuela! Creo que deberías aprender Pascal. No es algo que usará cuando trabaje afuera, pero es mejor para aprender a programar. Es un lenguaje de enseñanza. Todo es simple y puedes concentrarte en perfeccionar tu lógica. Después de eso, puedes seguir adelante y desviarte, experimentar con otros idiomas.

Recomiendo comenzar con un poco de codificación html básica, muy divertido meterse con los sitios web de los maestros, a partir de ahí trabajar en Java Script o C ++. Esos son dos divertidos, personalmente no soy tan bueno como un codificador que puedo usar en script html pero no tanto en java o c ++. Una vez que tenga los conceptos básicos, la codificación es súper fácil.

C ++ y Java! Ambos prevalecen en el mercado laboral y con Java, puede tomar el examen AP Computer Science A.