¿Qué tipo de programa de estudios, videos de conferencias, guías en línea, libros electrónicos, libros de algoritmos, etc. se recomienda para la programación de autoaprendizaje?

Aquí hay un punto de partida, pero la habilidad número uno que tendrá que aprender es cómo aprender las cosas usted mismo (mientras hace preguntas cuando sea necesario). Si no puede hacer eso, no sobrevivirá como desarrollador profesional. Así que busca, busca, estudia, estudia, estudia, practica, practica, practica. Y pregunte / busque Quora / StackExchange / su foro de elección cuando se quede atascado.

Coursera: aprender a programar o programar para todos son excelentes presentaciones. Tienen cursos avanzados más tarde también. Todo gratis.
Lynda.com es pagado pero es excelente para muchos tutoriales introductorios.
MIT OpenCourseWare
edX
Google para tutoriales sobre todo lo que estás aprendiendo.

Programa Básico:

  • Java o Python: conceptos básicos de lenguaje y conceptos básicos de programación (relativamente fácil de comenzar en cualquier computadora, menos “problemas” que C ++ para comenzar).
  • C – aprender punteros. estudiarlos hasta que realmente entiendas. Si no puede entender, también aprenda el lenguaje ensamblador MIPS o ARM (aprender a manipular direcciones directamente quemará punteros en su alma … en el buen sentido, supongo).
  • Matemática discreta: conteo, permutaciones / combinaciones, probabilidad básica, teoría de conjuntos, teoría de grafos
  • Estructuras de datos: el capítulo de estructuras de datos del Manual de diseño de algoritmos, las Estructuras de datos abiertos, los recursos anteriores (realmente los estudio realmente)
  • Algoritmos (incluyendo notación / análisis Big-O) – Manual de diseño de algoritmos, Introducción a los algoritmos (el libro “CLRS”)
  • SQL: aprenda sobre bases de datos relacionales, consultas SQL, inserción, eliminación, uniones / uniones (muchos tutoriales geniales, MySQL es fácil de configurar y usar en Java o Python, o cualquier lenguaje de alto nivel).
  • Tecnología web: conceptos básicos de HTTP, HTML / CSS, Javascript (aprenda los conceptos básicos, luego lea Javascript: las partes buenas).

Luego, aprenda la parte profesional / de ingeniería.
Código limpio (por Bob Martin)
Aprenda las pruebas unitarias (con burla) para el idioma elegido (ahora todos los idiomas tienen marcos)
Patrones de diseño (prefiero el libro de Patrones de diseño de Head First al clásico libro de Patrones de diseño “pandilla de cuatro”). Esto es importante para cualquier lenguaje, pero está orientado a lenguajes orientados a objetos como Java y C ++.
Aprende nuevos idiomas y marcos para divertirte.

Elija la dirección de su carrera y sea realmente bueno en esa pila (ahora tiene herramientas más que suficientes para crear sus propios proyectos para divertirse, practicar y mostrar a los empleadores).

Recomendaré especialmente Coursera para ti. Tiene varios cursos que pueden interesarle, ya que está interesado en la programación de computadoras. Solo tiene que conocer el lenguaje de programación que le interesa aprender y muchas otras cosas. Coursera tiene un par de cursos útiles. [Coursera]
También puede probar MIT Open CourseWare para obtener más material de referencia. [Materiales gratuitos del curso en línea]
Estos dos serán extremadamente útiles.

¡Hola!

Soy un estudiante universitario estudiante de ciencias de la computación. Pensé que podía compartir lo que aprendí hasta ahora y lo que aprenderé en la universidad para darte una idea.

En primer lugar, las personas en la universidad generalmente comienzan con una clase introductoria a algún lenguaje de programación, el mío era C ++. Aunque muchos prefieren Java, algunos prefieren Python. Investigué un poco acerca de C ++ como lenguaje inicial y puedo decir fácilmente que si usted es realmente dedicado, es una de las mejores opciones, ya que le permite aprender muchas características detalladas de la codificación.

Después de aprender un lenguaje de programación de una forma bastante avanzada, debe aprender las estructuras de datos y los algoritmos. Tenga en cuenta que después de una conferencia avanzada de C ++, casi nadie podría escribir un software real, así que no se sienta incapaz 🙂

Si tiene tiempo para aprender varias cosas, puede comenzar a aprender sistemas de bases de datos después de haber aprendido algunas de las cosas avanzadas como punteros, herencia, etc. Aunque la teoría es un poco aburrida, siempre debe comenzar con las cosas teóricas, en mi humilde opinión al menos. Entonces puede comenzar a aprender consultas simples y luego formularios normales, etc. por un tiempo. Para comenzar con la codificación, recomendaría el servidor wamp, ya que es realmente fácil de usar y no necesita conocer el código MySql para crear la base de datos. Todo esta automatizado. PHP es una buena opción para escribir código del lado del cliente y se instala automáticamente con el servidor wamp. Es posible que desee aprender html, css y js básicos y usar su conocimiento de la base de datos para crear un sitio web simple. ¡La codificación web es realmente divertida y hay mucho por descubrir!

Después de comprender realmente un idioma, puede aprender a codificar en un nuevo idioma bastante fácil después de este punto. Lo que debe aprender a continuación depende totalmente de usted. Por ejemplo, aprender cómo se crea un software real será una buena idea. Sí, también hay mucho papeleo antes de escribir un software, al menos en teoría 🙂

Como también estoy tratando de definir mi camino de aprendizaje, no hay muchos más consejos que pueda darte. Quiero que sepas que todo esto apenas puede tomar un año, o un año y medio como máximo, si te vuelves realmente perezoso 🙂 y puedes obtener fácilmente pasantías con esto. ¡Espero que esto ayude!

“Syllabus” suena demasiado complicado. La programación autodidacta no funciona como un curso universitario.

Realmente, lo más importante es jugar mucho con código. Comience por obtener un libro sobre un tema que le interese; en este momento, ese tema podría ser Swift, por ejemplo. ¡Entonces solo juega con él! En el caso de Swift, la última versión beta de Xcode proporciona Playgrounds para que pruebe el código Swift de forma interactiva.

Una vez que esté familiarizado con el funcionamiento de las cosas, piense en algún problema que le gustaría resolver, que se puede resolver con su teléfono o computadora. Luego intenta escribir un programa para resolverlo. Puede tomar varios intentos, porque resolver cualquier cosa útil requiere dividir el problema en partes pequeñas y fáciles de manejar, y su división inicial puede no ser viable. Sin embargo, está bien, es parte de la experiencia de aprendizaje.

Siempre, siempre, quieres tener algo de picor que te gustaría rascar con el software. Eso es lo que te mantiene motivado para seguir escribiendo código. Cuanto más código escriba, mejor obtendrá. No hay atajos para eso.

http://www.cprogramming.com/&nbsp ; Este amigo es un muy buen sitio … siga las cosas que le dice y comprenderá completamente la programación de cc, simplemente haga clic en las palabras resaltadas en rojo y lea y tómese su tiempo, ok 🙂 diviértase