¿Qué recursos usaste para aprender conceptos de programación?

Lo he dicho muchas veces antes, pero cualquiera puede publicar un sitio web. Profesionales escriben libros.

En general, los libros están dirigidos a programadores más antiguos que desean aprender un nuevo idioma, por lo que cubren los temas de principio a fin, desde escribir “Hello World” hasta crear rastreadores del mercado de valores e IU complejas. Sin embargo, la mayoría de los sitios web de “aprender a programar” son más para audiencias más jóvenes y no son tan rigurosos y completos. Es más como “OK, ahora sabes lo básico de JavaScript, puedes continuar y vivir tu vida ahora”, mientras que los libros son como “OK, ahora conoces JavaScript y lo que puede hacer. ¡Así que úsalo! ”.

Google es mi mejor amigo cuando se trata de buscar un nuevo concepto de programación. Por lo general, cuando necesito un código (¡y rápido!), Me dirijo a Stack Overflow y al código de copiar y pegar (asegurándome de dejar un aviso sobre de dónde vino). A veces, leo la documentación oficial (ejemplo: LLVM Language Reference Manual). Pero tenga cuidado, parte de la documentación no es tan buena (Formato de archivo de código de bits LLVM).

Por cierto, ¿alguien sabe cómo se codifica el formato de archivo de código de bits? (La pregunta: ¿Existe una especificación clara sobre el código de bits LLVM? ¡ Está disponible para aquellos que lo hacen!)

Solo recuerde, solo necesita una búsqueda rápida en Google para encontrar la respuesta a su problema, ya que probablemente otras personas también los tengan. SIN EMBARGO , si no lo encuentras, abre los documentos y comienza a leer.

Según los libros, leo Las computadoras son tu futuro.
Las computadoras son su futuro completo (12ª edición): Catherine Laberta: 8581909999999: Amazon.com: Libros.

Según los cursos en línea, tomé CS50: Introducción a la informática:
Introducción a la informática
En línea y en la universidad.

Después de eso, llegué a ser lo suficientemente bueno, tenía una buena imagen simple de las cosas y sabía sobre el pensamiento algorítmico, el pseudocódigo y los diagramas de flujo, así que comencé con un curso de C ++:
Tutoriales de programación en C ++ Playlist
y un libro: Programación orientada a objetos en C ++ (4ª edición) 4ª edición por Robert Lafore:
Amazon.com: Programación Orientada a Objetos en C ++ (4ª Edición) (9780672323089): Robert Lafore: Libros

A partir de ese momento, puedes considerar que Google se convirtió en mi maestro para todo lo que necesito.

EDITAR:

Según cómo desbloquearte:

por supuesto, no sabrá todo, y estará atascado por minutos, horas o incluso días por algunos problemas, es algo muy habitual.

De acuerdo con cómo puedo desbloquearme, eso es fácil, tengo mi propio Bloqueo de tareas para mí mismo, Algo que hago:

Hola joshua

Para aprender los conceptos de programación, necesitaría un curso o un libro, si está empezando desde cero. Un buen recurso sería geeks para geeks. Simplemente elija un lenguaje de programación y comience a leer las complejidades del lenguaje. También tienen pequeños desafíos intermedios que puedes codificar en su editor.
El siguiente paso sería Hackerrank. Puede seleccionar un tema, es decir, matrices / listas enlazadas / árboles, etc. y comenzar a resolver los desafíos de programación relacionados con la misma. Esto te ayudará a entender las implementaciones a fondo.
Para los algoritmos, sugeriría leer primero la sección de algoritmos en “Estructuras de datos y algoritmos” de Goodrich y Tamassia en el lenguaje de programación que prefiera. (Para un aprendizaje más avanzado, recomiendo el libro ‘The Algorithm Design Manual’ de Steven Skiena, como mencioné en mis publicaciones anteriores). Después de esto, puedes comenzar a resolver nuevamente Hackerrank o LeetCode.
Una vez que empiezas a programar de forma regular, tengo un sitio en particular que me gusta para entender conceptos específicos:
Jenkov.com
Esto es realmente bueno para aprender conceptos con la ayuda de ejemplos.
¡Espero que esto ayude!

Estos días – Google.

De vuelta en el día – la biblioteca universitaria.

Los libros están subestimados en estos días. Aprendí conceptos de sistemas operativos y conceptos de redes de los libros de Tanenbaum. Para estructuras de datos, ya sea el Arte de la Programación Computacional de Knuth o la Introducción a los Algoritmos de Cormen.

Hay muchos otros libros. Un curso impartido para algo específico también puede ser útil, pero es difícil encontrar cursos (individuales) a los que pueda acceder fuera de un entorno universitario.

Bien…. En primer lugar, no son “conceptos de programación”, son conceptos computacionales.

En general, empiezo con un título que me proporcionó un fondo bastante amplio para empezar.

Luego, cuando encuentro algo nuevo, generalmente comienzo con Google y slideshare. Por lo general, es bastante fácil encontrar algo que describa el concepto, como un curso académico, una presentación de conferencia o notas del curso, idealmente, del creador del concepto. , si es algo nuevo, o de un buen escritor, si es algo que es nuevo para mí.

A partir de ahí, para la implementación, primero busco las bibliotecas, luego miro hacia Knuth o google.