¿Cómo entender a un principiante, qué idioma elegir para la profesión deseada?

Descargo de responsabilidad: este texto no se recomienda para leer a niños menores de 13 años (deben establecer una política de privacidad por separado), personas mayores, de mediana edad, personas con una mentalidad débil, amantes del lenguaje VBA y ALGOL, así como mujeres embarazadas. Todo lo anterior es la opinión personal del autor inadecuado y no se establece aquí con el objetivo de sembrar la discordia entre los partidarios de la tipificación estática y dinámica. Vamos: nuevo hilo (). Inicio ()



Honestamente, este artículo ha estado madurando durante mucho tiempo, porque últimamente me he encontrado con discusiones, holivars y artículos similares, donde los autores y los participantes presentaron varias hipótesis a su mejor comprensión como respuesta a la pregunta del título. Y todo su significado se reduce a la misma argumentación confusa que la ornamentada oración escrita anteriormente.

He recorrido un largo camino desde el esperma hasta un programador, desde un adolescente que ama pascal y windows 3.11, hasta un hombre al que no le gusta nada más que rollos y terminal. Así que ahora te explicaré todo e incluso, quizás, te muestre algunas fotos. Vamos.

Entonces, ¿qué lenguaje de programación elegir?


La estupidez de todas esas preguntas es que no puedes convertirte en un programador esférico condicional en el vacío. Un programador ahora no es un matemático discreto del pasado, para quien el software y el hardware son secundarios. En la mayoría de los casos, el programador es ahora un artesano que trabaja en el marco de la "ventana" actual de la tecnología. Además, esta es la "ventana" de un automóvil en movimiento, para el cual está corriendo. La tecnología cambia constantemente y nos vemos obligados, como Alice Carroll, a huir para permanecer en su lugar. Si toma mi Google favorito al menos, no tendrá tiempo para comprender una API de Android, y ya que hay la mitad de las funciones obsoletas, también aprietan los tornillos ...
Ejem, sí, sí, un artículo para principiantes, bueno, vamos a resolverlo. Para empezar, ¿todavía tiene que determinar qué es exactamente lo que quiere hacer? Área, bueno, al menos aproximadamente?

¿No entiendes nada en absoluto?


Comienza a aprender construcciones algorítmicas. Ramas, bucles, estructuras de datos, diagramas de bloques. Ayuda mucho transferir (¡transferir, no copiar y pegar de Wikipedia!) Algoritmos y diagramas de bloques a un lenguaje de programación real.

¿Con qué idioma comenzar si quieres sentar las bases?


En principio, cualquiera. Dado que solo necesita aprender a escribir programas simples, comprender qué variables, operadores son, explorar algoritmos clásicos, como búsqueda máxima, clasificación, búsqueda binaria, etc. Luego, vaya a OOP y estructuras de datos, porque se le preguntará en la entrevista, ¡Cómo el vector es diferente de la lista!

Pero, ¿y si necesita un idioma para las tareas aplicadas ?
Sí, y no quieres convertirte en programador. Tal vez usted sea un científico que necesita analizar archivos de texto con cadenas de ADN, o un inversor con la idea de escribir un robot comercial. Aquí aconsejaría a Python, que los adeptos de otros idiomas me perdonen. Python es un lenguaje con capacidades vertiginosas y un umbral de entrada bajo. Al principio, incluso al principio les parece a los principiantes que este es un tipo de lenguaje fácil, "educativo" (hasta que comienzas a meterlos en corutinas y funcional).

Bueno, dices, pero ¿a dónde ir después ? ¿Ni una sola pitón ...? Por supuesto no. ¿A dónde te está atrayendo? ¿La web? ¿Escritorio? ¿Guiones? Nivel del sistema ¿Teléfono móvil? Tú, querido, decide, ¡no hay soluciones universales!

Me gusta la construcción del sitio? Bueno, vamos a escribir como un loro aquí: html, javascript y otros similares (todavía hay python con django y otros silenciosamente acechando allí)

¿Quieres servicios web hostiles? PHP, node.js, ruby, Java y el mismo Python.

¿Quieres estar más cerca del hardware y los sistemas operativos? Agarre C / C ++ (simplemente no se dispare una pierna y se corte, aunque todos fueron allí con un yeso). Por cierto, recomendaría a todos los programadores que al menos se ocupen de los conceptos básicos de C / C ++ y las clases base de STL, ya sabes, es útil mirar el GC con otros ojos. Si una pieza de hierro cae sobre tu cabeza, aprende ensamblador.

¿Desea escribir, analizar, extraer, trabajar con grandes datos, construir modelos, escribir bots, administrar el sistema operativo y mucho más?Tome Python3 + ya expresado. Si trabaja más con datos, aún puede tomar R.

¿Sueña con escribir una aplicación de escritorio? Aquí en cualquier cosa! ¡Aunque Delphi lo tome! Una broma, por supuesto. Aquí debe ver para qué sistema escribir y si se necesita multiplataforma. Por ejemplo, el código Python o Java será portátil. C / C ++ deberá construirse por separado para cada plataforma.

¿Quieres saber java core? Entonces ya sabes por qué necesitas Java. ¿No lo sé? ¿Cómo explicarías ahora por qué lo necesitas? ¿Has visto el aire? Sin embargo, uno no puede vivir sin él. :)

Por supuesto, hay cosas elegantes, Kotlin, por ejemplo. Lo bueno, este lenguaje mató a mi viejo amigo, apodado NPE, bueno, como mató, ¡se lastimó! ¿Simplemente no entendí cómo estudiarlo normalmente para personas que no conocen Java? No, "Hola mundo" está escrito en él fácilmente y sin Java, pero no sé nada más.

¿Quizás decidiste escribir juegos? Hay muchos diseñadores listos para usar, el mismo Unity3D, así como motores bidimensionales, usualmente inmediatamente bajo un montón de plataformas. Ya lo mira usted mismo: C #, Java, etc. Y todo esto se pule desde arriba por el conocimiento de varios protocolos de transferencia de datos, sistemas operativos, marcos, cifrado y criptografía, autorización y autenticación, XML, JSON, tecnologías de bases de datos, protección de aplicaciones, sistemas de control de versiones y mucho, mucho más.

Ahora voy a abrir el mayor secreto sobre cómo convertirse en programador: ¡programa! ¡Cualquier cosa! Escriba programas incluso cuando nadie lo necesite. Escribe porque lo necesitas, no alguien más. Descansa constantemente contra la incompetencia, llena estos vacíos y nuevamente descansa contra los nuevos. Y siempre y cuando haya suficiente memoria en todas las cachés posibles de su cabeza.

¿De qué otra manera puede responder la pregunta: "¿Qué idioma aprender?". Obviamente con el que vas a hablar.

Atentamente, Edward Koch,
profesor de la Escuela Internacional de Informática y Ciberseguridad HackerU

All Articles