06.09.2014 Views

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

© FUOC • 71Z799014MO 10 <strong>Bases</strong> <strong>de</strong> <strong>datos</strong> en PostgreSQL<br />

Sin embargo, este mo<strong>de</strong>lo no existe, lo que provoca inconsistencias incluso en<br />

el tratamiento <strong>de</strong> los principios y conceptos básicos <strong>de</strong> la OO. Por eso, es frecuente<br />

encontrar errores graves en el <strong>de</strong>sarrollo <strong>de</strong> sistemas OO y, lo que es<br />

aún peor, se implementan soluciones <strong>de</strong> dudosa vali<strong>de</strong>z en herramientas <strong>de</strong><br />

<strong>de</strong>sarrollo que se dicen orientadas a objetos.<br />

Aun sin haber alcanzado la madurez, la orientación a objetos es el paradigma<br />

que mejor permite solucionar los muchos y variados problemas que existen en<br />

el <strong>de</strong>sarrollo <strong>de</strong> software. En los próximos apartados analizaremos los conceptos<br />

básicos <strong>de</strong> este mo<strong>de</strong>lo para i<strong>de</strong>ntificar algunos <strong>de</strong> los problemas que aún<br />

<strong>de</strong>be resolver, lo que facilitará la comprensión y evaluación <strong>de</strong> métodos y herramientas<br />

OO.<br />

2.2. Objetos: clase frente a instancia<br />

Los objetos son abstracciones que realizamos <strong>de</strong>l mundo que nos ro<strong>de</strong>a y que<br />

i<strong>de</strong>ntificamos por sus propieda<strong>de</strong>s. Para la OO todo es un objeto.<br />

Cada objeto tiene una existencia un tanto in<strong>de</strong>pendiente <strong>de</strong> los <strong>de</strong>más objetos;<br />

es <strong>de</strong>cir, tiene i<strong>de</strong>ntidad propia. Aunque dos objetos tengan exactamente<br />

los mismos valores, no por eso serán el mismo objeto, seguirán siendo entida<strong>de</strong>s<br />

diferentes. En los mo<strong>de</strong>los OO, la i<strong>de</strong>ntidad se representa con el i<strong>de</strong>ntificador<br />

<strong>de</strong> objeto, IDO (OID en inglés, <strong>de</strong> object i<strong>de</strong>ntifier). Teóricamente, el IDO<br />

<strong>de</strong> un objeto es único e irrepetible en el tiempo y el espacio.<br />

Los IDO son el mecanismo que permite hacer referencia a un objeto <strong>de</strong>s<strong>de</strong><br />

otro. De esta manera las referencias tejen las relaciones entre objetos.<br />

Todos los objetos que comparten las mismas propieda<strong>de</strong>s se dice que pertenecen<br />

a la misma clase. En los mo<strong>de</strong>los OO, las clases le roban el papel central a<br />

los objetos, ya que es a través <strong>de</strong> ellas como se <strong>de</strong>finen las propieda<strong>de</strong>s <strong>de</strong> éstos<br />

y a<strong>de</strong>más se utilizan como plantillas para crear objetos.<br />

Función <strong>de</strong>l IDO<br />

El IDO permite que dos objetos<br />

idénticos puedan diferenciarse,<br />

no es importante que el usuario<br />

conozca los IDO, lo importante<br />

es que los diferencie<br />

el sistema.<br />

Elementos fundamentales en OO<br />

objeto<br />

clase<br />

Al crear un objeto utilizando la <strong>de</strong>finición dada por una clase, obtenemos un valor<br />

para él, es lo que se llama una instancia <strong>de</strong>l objeto. Durante la ejecución <strong>de</strong><br />

los programas se trabaja con instancias. Como concepto, la instancia es equivalente<br />

a una tupla (fila) concreta en una tabla <strong>de</strong> una base <strong>de</strong> <strong>datos</strong>.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!