4 votos

¿Cuál es una buena ruta para que un estudiante de matemáticas estudie ciencias de la computación de manera sistemática y eficiente?

Soy consciente de que este tipo de pregunta debe hacerse en Ciencias de la computación de Intercambio de la Pila. Pero decidí preguntar aquí porque no debe ser más eficaces respuestas aquí con gente con más experiencia, con sólida experiencia en las matemáticas que podría haber enseñado a sí mismos algunos ciencias de la computación.

Me decidí a hacer esta pregunta después de ser atraídos por cuánto se puede hacer con el conocimiento en ciencias de la computación, incluyendo el desarrollo de aplicaciones iOS, juego(o mods) el desarrollo, la creación de sitio web, etc., pero tiene problemas con la coincidencia de lo que he aprendido con lo que realmente me entiende.

Al darse cuenta de la falta de conocimiento en programación, una vez me decidí a aprender a programar en un lenguaje específico, como Objective-C y Swift. Después traté de cada libro de texto sobre OC de programación, me encontré de perder el tiempo en la "explicación" de la parte y perderse con el real de la parte "teórica". A mí me parece que los libros de texto prefieren un largo y suelto explicación en la descripción de un concepto sin decirme exactamente qué es(Como la noción de "Objeto" y "Puntero") y olvidese de la real importante "pensar" antes de la aplicación del código. Aunque después de muchas veces de la lectura, podría crear una aplicación muy sencilla(como una simple calculadora), yo estaba muy perdido en cómo funciona realmente.

Eso me recuerda a cómo empecé a aprender matemáticas. En la escuela media "función" es sólo "$y=f(x)$", donde $f(x)$ puede $x^2$, $\sin(x)$, y otras operaciones sobre los $x$. Sin embargo, ahora me $f$ es un conjunto de tuplas en la satisfacción de la asignación exclusiva de la propiedad, o una flecha con dominio y codominio. De manera más general, me puede dar una respuesta afirmativa a cada pregunta como "¿qué es (la definición de ésta?(en matemáticas frase.)" Así que me pregunté, "¿qué es más básica entre todos los sujetos en ciencias de la computación"?

Basado en la creencia de que el sistema de computación y la programación puede ser completamente teórico, me decidí a aprender desde lo mas básico. Donde es el código de mi entorno de programación?(Para mí, Xcode) y cómo puedo entender? ¿Qué es una computadora hecha de (hasta el transistores), y cómo ellos trabajan juntos? Pero luego me enteré de que no hay un libro con el nombre similar a "¿cómo funciona una computadora" que llegan a mi satisfacción, que pensé es que mi vocabulario problema.

Espero que en el libro que estoy buscando, cada palabra clave es rigurosamente definido, y sin ningún desperdicio de tiempo en la explicación de lo que la noción de "medio" o de cómo se desarrolló la etapa por etapa históricamente. Espero que se da sólo de los objetivos(como la máquina calculadora) y la forma de construir de las definiciones(un gráfico con los nodos de valor "0" o "1"). Todos los libros de texto de matemáticas(como el GTM serie) alcanzar este objetivo, y para mí, que es MUCHO más fácil de leer y entender. Creo que la mayoría de la estudiante de matemáticas como yo prefieren este estilo de aprendizaje.

¿Qué es una buena (libro de ruta para un estudiante de matemáticas para el auto estudio ciencias de la computación, desde los más básicos? Deseo que hay algunos teóricos de los libros de texto que construir el conjunto de la operación del sistema, compilador, o algo de este tipo, que sea legible para los estudiantes de matemáticas. Cualquier respuesta sería muy apreciada. Gracias.

3voto

kimchi lover Puntos 361

Si usted está en una universidad que ofrece los grados de la informática, se podría averiguar los nombres de algunos cursos que son necesarios para la 2ª o 3d año los estudiantes, obtener una copia de el libro de texto de uno de ellos, y tratar de leerlo.

Una cosa que hacer su tarea más difícil es que la informática es un área muy amplia, y no un libro cubre todo lo importante. En parte, porque "la informática" es una amalgama de ingeniería informática, de equipo de práctica, de las matemáticas aplicadas, y así sucesivamente: a diferencia de (por ejemplo) álgebra lineal, no hay ningún pequeño conjunto de axiomas básicos que pueden ser perfectamente explicado y explotados en un par de cientos de páginas. Más bien, imagina que quería de forma sistemática y eficiente de aprender de automóviles de la ciencia. Usted puede encontrar un libro que explica los motores de los automóviles y los relacionados con la química de la combustión y control de la contaminación, pero no dice nada acerca del movimiento de la planificación o de un automóvil sistema de climatización, etc.

Añadió, después de un par de minutos. Los comentarios siguientes Henning Makholm completamente una respuesta razonable a mí me parecen para ilustrar el punto que hice referencia anteriormente: la informática es un tema tan complejo que es difícil de acuerdo en lo que hay de más esencial.

Permítanme añadir una recomendación específica: he notado que algunos de mis colegas no saben acerca de la conexión entre los DFAs y regulares de idiomas. Esto me parece fundamental en un resultado teórico de CS como (por ejemplo) el teorema de Pitágoras es en la geometría, o como integración por partes en el cálculo. Y más importante que muchos de hardware del equipo detalles de implementación. Si usted no sabe queusted no sabe en cuclillas. Así que su objetivo podría ser, leído lo suficiente de Aho, Hopcroft y Ullman (o el equivalente de los libros de texto) para entender este importante resultado.

3voto

sewo Puntos 58

Basado en la creencia de que el sistema de computación y la programación puede ser completamente teórico, me decidí a aprender desde lo mas básico.

Es un poco arrogante pegarse demasiado bien a tal creencia cuando todavía está aprendiendo el campo no'tcha pensar?

Algunas de las áreas de ciencias de la computación puede ser llamado "completamente teórico". La teoría de la computabilidad y la teoría de la complejidad se acercan, como hacen algunas de las más disparatadas ramas de lenguaje de programación de la investigación. Se mezcla en partes de la lógica y la categoría de la teoría de que podrían ser llamadas "ciencias de la computación por la conquista" porque los ordenadores los científicos están interesados en ellos, aunque en el mejor de los congresos a los que también se encuentran personas con el Dept. de las Matemáticas afiliaciones, y algunos incluso utilizar pizarras para sus conversaciones!

Sin embargo, en la mayoría de los de ciencias de la computación como un campo, que son el alma de la ciencia es la tensión entre niza modelos teóricos, por un lado, y la necesidad de construir sistemas que funcionan en dispositivos físicos que puede ser producido económicamente en el otro lado. Insistir en estudiar solo el lado teórico equivale a lanzar a cabo no sólo en la mitad del campo, pero todo el crujiente de la media.

En su posición, usted probablemente debería empezar por un equipo de arquitectura de libros de texto y, a continuación, aprender (aprender) un bajo nivel de lenguaje de programación, tales como C. a Pesar de que este le ofrece una abundante oportunidad para disparar en el pie, también podría ser la única manera de satisfacer su (en sí loable) deseo de comprender la totalidad de la pila de abstracciones todo el camino hacia abajo. Y los errores que voy a hacer con C podría ayudar a entender el punto de que el más abstracto de los conceptos de más lenguas modernas.

2voto

littleO Puntos 12894

Deseo que hay algunos teóricos de los libros de texto que construir toda la la operación del sistema, compilador, o algo de este tipo, que es legible para los estudiantes de matemáticas.

Te recomiendo la lectura de Los Elementos de los Sistemas de Computación por parte de Nisan y Schocken, y haciendo todos los proyectos. Hacer un equipo desde cero, comenzando con compuertas NAND. A lo largo de la forma de hacer que un compilador y un simple sistema operativo. En el final se puede hacer un simple video juego como Tetris que puede ejecutar en el equipo que usted ha diseñado. El libro del compañero sitio web es www.nand2tetris.org.

Es mi favorito de los libros de texto sobre cualquier tema.

Usted también podría estar interesado en Knuth es El Arte de la Programación de ordenadores, aunque yo no lo he leído yo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X