Hoy estaba revisando información acerca de los breadcrumbs, el creador del post no parecía desinformado ni parecía que le faltasen habilidades de programación sin embargo me sorprende con esta simple clase de solo dos funciones:
class Trail
{
var $path = array();
function Trail($includeHome = true, $homeLabel = 'Home', $homeLink = '/')
{
if ($includeHome)
$this->addStep($homeLabel, $homeLink);
}
function addStep($title, $link = '')
{
$item = array('title' => $title);
if (strlen($link) > 0)
$item['link'] = $link;
$this->path[] = $item;
}
}
En esta clase llamada Trail tenemos dos métodos addstep y Trail.
Si nos fijamos la función Trail lo único que hace es que, si la variable $includeHome que por default es True… llame al segundo método para agregar un breadcrumb ‘Home’.
Por si fuera poco.. NUNCA se usa ese método en todo el artículo…
Que quiero dar a ver? que aveces grandes programadores con buenísimos conocimientos de la temática también son capaces de cometer errores garrafales de programación como este.
Deberíamos intentar mejorar nuestra visión de un programa antes de crearlo para evitar errores como ese en el futuro.
Bueno un despiste lo tiene cualquiera, o tal vez esta on tilt como dicen en el poker 😉