En la programación de computadoras , el exceso de código es la producción de código de programa ( código fuente o código de máquina ) que se percibe como innecesariamente largo, lento o que desperdicia recursos. El exceso de código puede deberse a deficiencias en el lenguaje de programación en el que está escrito el código, el compilador utilizado para compilarlo o el programador que lo escribe. Por lo tanto, mientras que la hinchazón del código generalmente se refiere al tamaño del código fuente (según lo producido por el programador), se puede usar para referirse al tamaño del código generado o incluso al tamaño del archivo binario .
Ejemplos de
El siguiente algoritmo de JavaScript tiene una gran cantidad de variables redundantes , lógica innecesaria y concatenación de cadenas ineficiente.
// Función compleja TK2getImageHTML ( tamaño , zoom , sensor , marcadores ) { var strFinalImage = "" ; var strHTMLStart = '; var strHTMLEnd = '" alt = "El mapa" />' ; var strURL = "http://maps.google.com/maps/api/staticmap?center=" ; var strSize = '& size =' + tamaño ; var strZoom = '& zoom =' + zoom ; var strSensor = '& sensor =' + sensor ; strURL + = marcadores [ 0 ]. latitud ; strURL + = "," ; strURL + = marcadores [ 0 ]. longitud ; strURL + = strSize ; strURL + = strZoom ; strURL + = strSensor ; para ( var i = 0 ; i < marcadores . longitud ; i ++ ) { strURL + = marcadores [ i ]. addMarker (); } strFinalImage = strHTMLStart + strURL + strHTMLEnd ; return strFinalImage ; };
La misma lógica se puede establecer de manera más eficiente de la siguiente manera:
// simplificado const TK2getImageHTML = ( tamaño , zoom , sensores , marcadores ) => { const [ { latitud , longitud } ] = marcadores ; let url = `http://maps.google.com/maps/api/staticmap?center= $ { latitude } , $ { longitude } & size = $ { size } & zoom = $ { zoom } & sensor = $ { sensor } ` ; marcadores . forEach ( marcador => url + = marcador . addMarker ()); return `$ { url } "alt =" El mapa "/>` ; };
Densidad de código de diferentes idiomas
La diferencia en la densidad del código entre varios lenguajes de computadora es tan grande que a menudo se necesita menos memoria para contener tanto un programa escrito en un lenguaje "compacto" (como un lenguaje de programación específico de dominio , Microsoft P-Code o código enhebrado ), más un intérprete para ese lenguaje compacto (escrito en código nativo), que mantener ese programa escrito directamente en código nativo .
Reducir la hinchazón
Algunas técnicas para reducir el exceso de código incluyen: [1]
- Refactorizar el código en una subrutina y llamar a esa subrutina desde varias ubicaciones, en lugar de copiar y pegar el código en cada una de esas ubicaciones.
- Reutilizar subrutinas que ya se han escrito (quizás con parámetros adicionales), en lugar de volver a escribirlas desde cero como una nueva rutina.
Ver también
Referencias
- ^ "Código hinchado" . DocForge . Consultado el 30 de diciembre de 2009 . CS1 maint: parámetro desalentado ( enlace )