For faster navigation, this Iframe is preloading the Wikiwand page for Codificación rígida.

Codificación rígida

La codificación rígida,[1][2]​ más conocida por el anglicismo hard code[nota 1][nota 2]​ término del mundo de la informática que hace referencia a una práctica en el desarrollo de software que consiste en incrustar datos directamente en el código fuente del programa, en lugar de obtener esos datos de una fuente externa como un archivo de configuración o parámetros de la línea de comandos, o un archivo de recursos.

Esta práctica tiene limitaciones, ya que requiere la modificación del código fuente cada vez que cambian los datos, cuando lo conveniente sería que el usuario final pudiera cambiar estos detalles fuera del código fuente del programa.

Por ejemplo, una referencia a un fichero codificada rígidamente tendría escrito el nombre y la ruta al fichero en un lugar específico del disco. Si la localización del fichero cambia, el programador ha de cambiar el código fuente para que apunte a la nueva localización. Una solución a este problema sería tener una variable interna llamada «nombreDeFichero», que podría ser asignada mediante una ventana de diálogo de navegación de ficheros, de esta manera no sería necesario cambiar el programa por un cambio en los datos.

Otro ejemplo de las limitaciones de la codificación rígida puede producirse durante el desarrollo de una API, con la adición o generación de datos de forma dinámica que no se encuentran persistidos en almacén alguno ni especificados en archivos de configuración. Delegar en el código fuente la generación de esta información, en un principio no mutable, consumida muy habitualmente por un cliente de la API, provocará problemas de mantenimiento a medio y largo plazo, a pesar de sus aparentes ventajas a corto plazo, además de introducir un diseño blackbox del sistema.

El abuso de esta práctica es muy extendido entre programadores noveles, básicamente debido a su poco conocimiento de los estándares de programación, aunque también puede darse en programadores de experiencia contrastada; en este caso algunos autores consideran que se trata de un síntoma de agotamiento que puede llevar al programador a abandonar prácticas correctas en favor de otras más rápidas, aun sabiendo que son incorrectas.

Un caso del uso correcto de está práctica es en sistemas embebidos que jamás tendrán interacción con ningún usuario y que tienen que mantener unos parámetros de funcionamiento mínimos a lo largo de toda su vida, de manera que en caso de perder los parámetros configurados siempre pueda seguir funcionando. Esos parámetros mínimos deben indicarse explícitamente. Otro caso correcto de la codificación rígida es definir los pines físicos de un microcontrolador a los que tiene conectado los periféricos, por lo general estos valores son propios del sistema y jamás deberían poder ser modificados externamente al desarrollo.

Notas

  1. Otras grafías alternativas en inglés son hard-code (con guion) y hardcode (como una sola palabra). El verbo se conjuga de la forma habitual, siendo el pasado simple y el participio pasado hard coded, y el participio presente y gerundio hard coding.
  2. Frecuentemente se verbaliza en español como hardcodear,[3]​ pronunciado «jarcodear».

Referencias

{{bottomLinkPreText}} {{bottomLinkText}}
Codificación rígida
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?