Capítulo 16. Optimización prematura
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Los programadores pierden enormes cantidades de tiempo pensando o preocupándose por la velocidad de las partes no críticas de sus programas, y estos intentos de eficiencia tienen en realidad un fuerte impacto negativo cuando se tienen en cuenta la depuración y el mantenimiento. Deberíamos olvidarnos de las pequeñas eficiencias, digamos del 97% de las veces: la optimización prematura es la raíz de todos los males.
Donald Knuth, "Programación estructurada con declaraciones go to"
16.0 Introducción
La optimización prematura es un gran problema en la industria. A todo desarrollador le fascina la complejidad computacional y la belleza de los algoritmos más rápidos. Decidir dónde y cuándo hacer una optimización es una de las diferencias entre un desarrollador junior y uno senior. Las optimizaciones no son gratuitas, ya que añaden mucha complejidad accidental y debes aplicarlas con mucho cuidado. Las soluciones complejas alejan tu modelo del mundo real porque añaden muchas capas oscuras entre el modelo y los objetos de negocio, violando el principio de biyección. También perjudican la legibilidad. Sólo debes aplicarlas bajo fuertes evidencias fácticas.
Complejidad computacional
La complejidad computacional estudia los recursos necesarios para resolver problemas computacionales. Los más importantes son el tiempo y la memoria. Mide ...
Get Libro de cocina de código limpio now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.