Código spaghetti

Código spaghetti

El código spaghetti es un término peyorativo para los programas de computación que tienen una estructura de control de flujo compleja e incomprensible. Su nombre deriva del hecho que este tipo de código parece asemejarse a un plato de espaguetis, es decir, un montón de hilos intrincados y anudados.

Tradicionalmente suele asociarse este estilo de programación con lenguajes básicos y antiguos, donde el flujo se controlaba mediante sentencias de control muy primitivas como goto y utilizando números de línea. Un ejemplo de lenguaje que invitaba al uso de código spaghetti es el QBasic de Microsoft en sus primeras versiones.

Sin embargo, se debe tener en cuenta que hoy, con lenguajes modernos como PHP, SQL, Javascript (su última versión) junto con HTML (incluyendo su última versión), el código spaghetti es cada vez más utilizado ya que muchas veces estos lenguajes deben quedar entrelazados, aunque es perfectamente posible que un programador experimentado evite esto aunque se requiera para ello de un poco más de esfuerzo de programación que al final viene a ser recompensado con una programación más limpia, fácilmente entendible que le beneficia incluso a él mismo a la hora de dar mantenimiento a los sistemas.

Un ejemplo sencillo sería:

<?php
$a=1;
$b=2;
echo '<html>';
echo '<head>';
echo '</head>';
echo '<body>';
echo '<form action="pr2.php">';
if($a+$b==1)
{
   echo'       <p>Nombre<input type="text" name="nombre" value="" /></p>';
   echo'       <p>Apellido <input type="text" name="apellido" value="" /></p>';
}
else
{
   echo'       <p>Telefono<input type="text" name="telefono" value="" /></p>';
   echo'       <p>Direccion <input type="text" name="direccion" value="" /></p>';
}
echo' </FORM> ';
echo '  </body>';
echo '</html>';
?>

Wikimedia foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Mira otros diccionarios:

  • Objective-C — Información general Paradigma orientado a objetos Apareció en 1980 Diseñado por Brad Cox Tipo de dato …   Wikipedia Español

  • GOTO — o GO TO (ir a en inglés) es una instrucción muy común en los lenguajes de programación con el objetivo de controlar el flujo del programa. El efecto de su versión más simple es transferir sin condiciones la ejecución del programa a la etiqueta o… …   Wikipedia Español

  • Espaguetización — Saltar a navegación, búsqueda Para término informático, véase Código spaghetti. En astrofísica, la espaguetización es el estrechamiento de objetos en formas finas y delgadas (como un espagueti) dentro de un campo gravitatorio muy fuerte, debido a …   Wikipedia Español

  • Espagueti — Para el género cinematográfico, véase spaghetti western. Spaghetti Industriales …   Wikipedia Español

  • Pastafarismo — Fundador Bobby Henderson Deidad Monstruo de Espagueti Volador …   Wikipedia Español

  • Cincinnati chili — Plato de Skyline 4 way. Contiene spaghetti, Skyline chili, queso cheddar en hilos, cebollas picadas, y oyster crackers. Cincinnati chili (o también Cincinnati style chili ) es una variante regional del chili que emplea spaghetti o salsa coney. Se …   Wikipedia Español

  • Antipatrón de diseño — Saltar a navegación, búsqueda Un antipatrón de diseño es un patrón de diseño que invariablemente conduce a una mala solución para un problema. Al documentarse los antipatrones, además de los patrones de diseño, se dan argumentos a los diseñadores …   Wikipedia Español

  • Nápoles — Para otros usos del término Nápoles o Napoli , véase Nápoles (desambiguación). Nápoles …   Wikipedia Español

  • Andalusia — For the more extensive Muslim era region, see Al Andalus. For other uses, see Andalusia (disambiguation). Andalusia Andalucía (Spanish)   Autonomous Community   …   Wikipedia

  • SF — puede hacer referencia a: Siglas San Francisco ciudad de California (EE. UU.) Alguna división administrativa llamada Santa Fe. Schweizer Fernsehen emisora televisiva suiza. Abreviatura de Science Fiction (ciencia ficción). Scuderia Ferrari… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”