Descargo de responsabilidad: NO SOY UN EXPERTO EN CS O NINGUNA ÁREA DENTRO DE ESTE.
No puede ser un experto en CS porque tiene demasiadas áreas, cada una de las cuales es muy profunda . Aunque aprecio tu entusiasmo. Bien 🙂 Si desea obtener una visión general amplia, puede consultar el plan de estudios de CS de pregrado. Mira las referencias. Elige un área y luego profundiza en ella.
Solo estudié lo que me interesa y solo puedo hablar de eso. No soy un estudiante de CS y todavía estoy estudiando bases de datos y redes.
- ¿Por qué prefieres estudiar en el campo de la tecnología educativa?
- ¿Cómo es ser parte de un estudio / experimento científico como sujeto?
- ¿Qué tipo de ecuación es esta y ha sido estudiada antes?
- ¿Cómo debo estudiar para sst?
- ¿Cuál debería ser el horario de estudio para el estudiante de clase 11?
Algoritmos y estructuras de datos : creo que he escrito muchas respuestas en este caso. Así que sugiero que revise la respuesta del usuario de Quora a ¿Cuál es el mejor recurso para estructuras de datos y algoritmos?
Aprendí los conceptos del sistema operativo del podcast de UC Berkeley. No fui demasiado lejos aquí.
Estoy más interesado en la programación de conceptos de lenguaje y diseño. Entonces leí (y sigo leyendo) “ Estructura e interpretación de programas de computadora ” (SICP) . También tomé algunos cursos en línea en Coursera sobre conceptos del lenguaje de programación. (No como “Learn language-X”).
En este momento, estoy tratando de construir un compilador para un poco de lenguaje. Para los compiladores, aquí hay una buena lista para comenzar: la respuesta de Basile Starynkevitch a ¿Qué son los libros de texto muy buenos sobre compiladores? Me gustaría agregar “Implementación de compilador moderno en ” (donde X = C, ML o Java) o “el libro de Tiger”.
Actualmente estoy leyendo la versión C y es accesible para principiantes. Construir un pequeño compilador desde cero requiere mucho esfuerzo. Le enseña cómo se traducen los programas que escribe al lenguaje comprendido por la máquina de destino (o una máquina virtual en el caso de Java).