Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/02/2008, 04:51
Avatar de firewind
firewind
 
Fecha de Ingreso: noviembre-2003
Ubicación: Cabra-Córdoba-Andalucia-España
Mensajes: 62
Antigüedad: 20 años, 6 meses
Puntos: 2
Pregunta Jerarquia de clases

Hola.

Llevo un tiempo programando unas clases y como todo empezo por aprender, pues ya han llegado a un punto donde tengo que tomar unas reglas para que no sea un caos.

El caso es que tengo la siguiente jerarquía :
- Clase SYSTEM (envia emails, genera claves y poco mas)
- Clase HTML hereda de SYSTEM (para escribir paginas HTML)
- Clase MYSQL hereda de HTML (para todo el tema de MySQL)
- Clase BROWSER hereda de MYSQL ( es un browser de mantenimiento de tablas)

El tema es que con el siguiente codigo :
Código PHP:
<?php
session_start
();
include(
"inc/seguridad.inc.php");

    
// incluimos la clase base y creamos el objeto
include('clases/jcrMtBrowser.php');

// Iniciamos el Objeto
$oPage = new jcrMtBrowser();
$oPage->Conectar();

// .... agunas cosillas que he quitado

$oPage->Inicializa();

// quitamos la ayuda
$oPage->setOpcionAyuda(false);

// solo pueder clonar el super-admin
if ($_SESSION['nNivel'] < 9) { $oPage->setOpcionClonar(false); }


// -----------------------------------------------------------------------------------------------------------------
//
// INICIO HTML    
//
// -----------------------------------------------------------------------------------------------------------------

$oPage->HtmlIni(1,false);
    
// HEAD
$oPage->HEAD($_SESSION['EMPRESA'].' - Intranet');
$oPage->CSS('templates/default/css/intranet.css');
$oPage->JS('js/stmenu.js');
$oPage->endHEAD();
    
//BODY
$oPage->BODY();
$oPage->TABLE('principal','width="100%" height="100%"  border="0" align="center" cellpadding="0" cellspacing="0"');
$oPage->TR();
$oPage->TD('valign="top"');
    
    
// cabecera
    
include("inc/cabecera.inc.php");

$oPage->TR();
$oPage->TD('valign="top" height="100%"');
        
    
// cuerpo
    
$oPage->TABLE('cuerpo','width="100%"  border="0" align="center" cellpadding="0" cellspacing="0"');
    
$oPage->TR();
    
$oPage->TD('valign="top" align="center"');
    
        
$oPage->Ejecutar('sys_tablas_mt.php?tabla='.$LocalTablaID,$LocalTablaID); 

    
$oPage->endTABLE();
        
$oPage->TR();
$oPage->TD('valign="bottom"');
        
    
// pie
    
include("inc/pie.inc.php");
        
// fin de la tabla principal
$oPage->endTABLE();

// fin del html
$oPage->endBODY();
    
//mostramos la pagina
$oPage->Show();
?>
Con este codigo tengo un mantenimiento completo, con inserciones, edicion, borrados controlados por clave, filtros, etc.

Una captura:


Mi pregunta, ¿Es correcto lo que hago, o debo crear una clase que use instancias de las otras ?

No se si me he explicado bien.
Espero opiniones

Un saludo.