2013-01-24

Clases para un modelo de datos en PHP

Para los modelos de datos que presenté (Modelo de datos) presento el conjunto de clases que lo soportan haciendo uso de la herencia.

Primero un diagrama:

// TODO

Y ahora el código de las clases, junto con las 2 clases de ejemplo, MiClaseDesactivable y MiClaseHistoriable:

<?php
abstract class Desactivable {
 
 public $activo;
 public $alta;
 public $baja;
 
}
?>
<?php
abstract class Historiable extends Desactivable {
 
 public $inicio;
 public $fin;
 
}
?>
Como me gusta hacer borrados lógicos en vez de físicos en las tablas de datos, todas las clases de mis proyectos heredarán de una de éstas 2 clases abstractas, directamente de Desactivable, para los casos generales, o de Historiable, para tablas versionadas o históricas (Slowly Changing Dimension de tipo 2). Ver http://raulcad.blogspot.com.es/2013/01/modelo-de-datos.html
<?php
class MiClaseDesactivable extends Desactivable {
 
 // TODO añadir los campos propios
 
}
?>
<?php
class MiClaseHistoriable extends Historiable {
 
 // TODO añadir los campos propios
 
}
?>

No hay comentarios:

Publicar un comentario