¿Cómo trataría alguien que ya sabe de programación aprender un nuevo idioma?

> ¿Cómo trataría alguien que ya sabe de programación aprender un nuevo idioma?

Normalmente, lo primero que hace es ir a la especificación de idioma o al sitio central dedicado a ese idioma. Por ejemplo, si alguien estuviera tratando de elegir python, iría a Python.org. Escudriña referencias de idioma, dedica un par de minutos a captar la sintaxis y trata de obtener la sensación del idioma. Luego intenta aplicarlo a un problema en el que estás trabajando.

Si el idioma es increíblemente diferente de su idioma principal (por ejemplo, después de trabajar en C ++, decidió darle un giro a Prolog), en este caso, intente encontrar tutoriales escritos o libros, preferiblemente libros en línea. Los libros le permiten saltear la información que ya conoce y escanear el texto en busca de algo que no sabe. En este caso, revisa los libros hasta que aprendas lo básico para comenzar a aplicarlo en la práctica.

Si ya conoce un lenguaje similar, entonces debería poder captar la sintaxis (o la mayor parte de ella) en minutos, aplicarla (o intentar) aplicarla al problema en cuestión y aprender las diferencias sobre el curso. De trabajos futuros (semanas).

Youtube nunca es parte del curso de aprendizaje, porque los videos no te permiten saltar hacia adelante, no te permiten escanearlos en busca de información que ya conoces, además las personas tartamudean o comienzan a hablar sobre temas no relacionados.

Ya que estás buscando PHP, la mejor idea en este caso sería aumentar el servidor web local y escribir una página de PHP para él. Creo que Apache te permite hacer eso, pero lo mismo se puede decir acerca de muchos otros servidores de software. Recuerdo haber escrito PHP script hace muchos años, pero como nunca he invertido mucho en el lenguaje, en este momento no recuerdo de qué se trataba el script.

Los tutoriales en video son en gran medida una pérdida de tiempo, a menos que sea un tema con el que no estoy completamente familiarizado Y requiere habilidades manuales (como la limpieza de derrames químicos). a la gente – en la década de 1980.

Trabajo en varios niveles, dependiendo de lo que esté disponible para mí.

(1) Obtenga un entorno de desarrollo, idealmente con código de ejemplo. Esto es muy fácil con la mayoría de las distribuciones de Linux: la mayoría de los idiomas ya están disponibles como paquetes (incluso si el paquete no está en el nivel más alto y más reciente).

(2) Encontrar documentación sobre el idioma. Prefiero los libros SHORT (como el libro K&R C), pero son raros. La mayoría de los idiomas se clasifican en una de las pocas categorías (como los lenguajes derivados de Algol: C, Pascal, Java, PHP o lenguajes funcionales como LISP, etc.) Descubra cómo se expresan los tipos de datos. Descubre cómo se expresan los algoritmos.

(3) Encuentra algún código de ejemplo para examinar. Después de suficientes idiomas, puedes sentirte solo con mirar el código. Ignore los programas “Hola mundo”, o al menos no pierda tiempo en ellos. Están allí solo para asegurarse de que pueda lograr que su entorno de desarrollo funcione.

(4) No te enredes en el IDE. Los IDE van y vienen, “vi” y “emacs” son para siempre. He visto docenas de IDE y varias versiones de cada uno, y ninguna ha valido la pena dedicarme a aprender cuando “vi” y “emacs” están ahí y no requieren un nuevo aprendizaje porque el proveedor decidió que los unicornios eran mejores que las hadas o algo así.

Pero con todo esto viene una advertencia: PHP es típicamente la programación web del lado del servidor, y hay tres estilos diferentes:

  • CGI – donde se ejecuta como un programa separado del servidor web.
  • incrustado (mod_php) – con código en el documento HTML
  • incrustado (mod_php) – con el texto producido como parte del script PHP.

(El modelo de tres vías también se aplica a los scripts web de Perl y Python, pero esos lenguajes son mucho más útiles fuera del contexto web que PHP).

PHP tiene MUCHOS enganches para la administración de recursos en el servidor web, y es posible que deban ajustarse si el código del lado del servidor está haciendo mucho trabajo.

Por ‘un nuevo idioma’ estoy asumiendo que te refieres al lenguaje de programación y no al lenguaje hablado.

El primer lenguaje de programación suele ser el más difícil de aprender; a partir de ahí, se vuelve increíblemente fácil de aprender un nuevo lenguaje, ya que todos los lenguajes de programación tienen la misma estructura: variables, bucles, condicionales, etc.

Los lenguajes de programación solo difieren en su sintaxis, una vez que tenga los fundamentos de la programación, todo lo que necesita es familiarizarse con la sintaxis del nuevo lenguaje y estará listo.

Todo programador con una buena base pasa por el mismo aburrimiento cuando aprende nuevos idiomas.

Hace poco estaba aprendiendo Python porque mi objetivo era aprender Aprendizaje automático . Sentí el mismo aburrimiento mientras aprendía lo básico: aa Python tiene las mismas variables, estructuras de control, etc. Así que decidí omitir lo básico que ya conocía y saltar a la máquina principal, lo cual temía que sería complicado, pero mi decisión fue correcta para omitir lo básico.

Así que diré, la solución es omitir lo básico, como Estructuras de control, si, de lo contrario, bla, bla y Entra directamente en los conceptos principales y obtén un desafío. Los desafíos de Atlast hacen cosas interesantes

Gracias por A2A!

Por lo general, elijo algo que me gustaría hacer, y voy a hacerlo.

Suena simplista, pero si tu objetivo es un proyecto adecuado, tendrás que descubrir toneladas de cosas.

Los tutoriales son buenos, pero es mejor resolver problemas reales.

Recientemente recogí Scala y Clojure.

Primero, leí lo básico en Scenic Programming Language Tours, aquí es donde trato de recordar lo que PUEDES hacer en el idioma. Realmente no me enfoco en “cómo” aquí. Y sigue usando este sitio como una referencia rápida para lo básico.

(En mi humilde opinión es un recurso increíble al punto. No me gustan los tutoriales detallados)

Luego miro el código existente, y trato de compilarlo y ejecutarlo. Luego haga pequeños ajustes aquí y allá, para ver cómo cambia el programa.

Una vez que tengo una confianza razonable en lo que se puede hacer en el idioma, contengo la respiración y me lanzo a un proyecto que usa ese idioma. Busco en Google todos los “cómo” o pregunto a los compañeros de equipo, y procedo con cautela, asumiendo que cada cambio que haga romperá las cosas. Con el tiempo, construyo confianza.

En este punto puedo afirmar que soy FAMILIAR con el lenguaje. No me atrevería a afirmar que conozco el idioma.

SABER que el idioma es cuando entiende cosas como la administración de memoria para idiomas administrados, conoce la mayoría de los marcos comunes y sus compromisos, conoce las estructuras de datos comunes y no necesita buscar en qué espacio de nombres está HashMap, y sabe no se llama Diccionario, etc., etc. Esto puede tomar muchos años para dominarlo. Y puede quedarse atrás dentro de un año.

Solía ​​CONOCER C # hace 3 años, ahora he vuelto a familiarizarme con eso.

Simplemente comienza a escribir código para ejercicios simples y pequeños programas. A medida que avanza hacia programas más grandes, gradualmente irá adquiriendo características más avanzadas y API de bibliotecas, etc. No veo el problema. Esto siempre me ha funcionado.

PHP es realmente fácil. No es un lenguaje con muchas palabras clave ni tiene una gran librería estándar. Solo obtenga un libro de tutoría y haga una prueba utilizando un host local. En Windows, obtienes WAMP (LAMP en Linux y XAMP en Apple) de forma gratuita.