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.
- ¿Cuál es la mejor manera de aprender la unidad si no sé nada al respecto?
- ¿Cómo aprovecho a mi superior en la oficina para el aprendizaje y la productividad?
- Parece que solo puedo hacerlo bien si tengo interés en hacerlo, de lo contrario es muy difícil para mí aprender. ¿Por qué?
- Si está aprendiendo BJJ para la autodefensa, ¿cuáles son los conceptos básicos más importantes que necesita dominar? Planeo aprender BJJ, pero me gustaría entender qué habilidades o técnicas básicas debo dominar, lo que me serviría en un encuentro violento.
- ¿Cómo recuerdo / retengo algo que acabo de leer? Tengo una gran discapacidad de aprendizaje.
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