¿Debo aprender programación antes de aprender sobre organización de computadoras y arquitectura de computadoras?

Creo que, a través de los años, en mi experiencia algo pequeña en programación … saber cómo funciona la máquina y aprender sus limitaciones es lo más necesario para comprender cómo escribir programas de manera más eficiente.

Ciertamente puedes aprender primero a programar, absolutamente sí, puedes hacer eso. Sin embargo, si no entiende cómo funcionan las piezas mecánicas, ¿cómo puede entender la manera de hacer que funcionen con su máxima eficiencia?

Por ejemplo, un bucle programado de “hacer mientras …” puede ser funcionalmente equivalente a un bucle programado de “hacer hasta …”. Sin embargo, comprender el hardware subyacente y el software del sistema operativo puede hacer (a veces) una diferencia significativa en el rendimiento del tiempo de ejecución de un programa determinado al elegir entre estas dos opciones … incluso si son funcionalmente equivalentes en un sentido de programación.

Si el hardware básico de su computadora determinada almacena la información de manera secuencial o en un orden con claves, físicamente en los discos duros … la mayoría de las opciones al escribir las rutinas de software pueden hacer que todo el sistema informático se detenga de manera efectiva.

Las computadoras de hoy son rápidas y rápidas … a veces incluso increíblemente rápidas. A veces las técnicas de codificación más ineficientes parecen ser aceptables. Depende de usted saber las partes “mecánicas” subyacentes del sistema operativo. Una vez que entienda estas cosas, comprenderá por qué los problemas de rendimiento pueden relacionarse con las diferencias entre una forma de construcción de “hacer tiempo” y “hacer hasta”.

Entonces, sí, ambas áreas de tu pregunta son importantes. Los necesita para hacer su trabajo al crear programas que se ejecutan de manera eficiente … sin embargo, uno no es más importante que el otro. Solo asegúrate de que los aprendas a ambos. 🙂

¡Mis mejores deseos y buena suerte!

Fred Williams

Yo diría que sí, saber cómo funcionan sus programas es una habilidad necesaria para un programador. No podría programar sin una computadora, por lo que le conviene aprender primero sobre la computadora antes de comenzar la programación.

Sin embargo, nada le impide hacerlo juntos, siempre y cuando tenga los antecedentes de arquitectura / operaciones de la computadora necesarios para la programación que realiza.

Siempre ayuda si puede conectar los conocimientos de programación con los temas de hardware, pero no es esencial.

Pero si desea conectar un idioma, aprenda un lenguaje de ensamblaje de bajo nivel con los códigos de microprocesador asociados.

¡La mejor de las suertes!

No aprender cómo funciona la computadora primero o en paralelo a la programación de aprendizaje. Cuanto más sepa sobre una computadora y su hardware y sus recursos, más sabrá cómo usar esos recursos y programar el hardware para que funcione de la manera que desee.