Sei sulla pagina 1di 1

Bases de datos orientadas a objetos

(oodb)
Othoniel Molina Mora • 09.06.2008

Actualmente la programación orientada a objetos ha ganado terreno debido que


permite resolver el problema desde un enfoque conceptual hasta llevarlo a un
modelo en el que los elementos que lo integran son fragmentados y clasificados de
acuerdo a ciertas características similares, permitiendo así una mejor administración
del sistema. En la gestión y desarrollo de bases de datos ocurre algo distinto, las
bases de datos relacionales (db), siguen vigentes hoy en día y acaparan el mayor
porcentaje de ventas en el mercado (motores de bases datos relacionales “dbms”).

“Una base de datos es una recopilación de datos que puede organizarse


de forma que sus contenidos puedan accederse, gestionarse y
actualizarse fácilmente” [1]. Para cualquier empresa las acciones mencionadas
en el texto anterior son de suma trascendencia, ya que en la actualidad todos los
sistemas de información empresariales (me atrevo a mencionar un 95%) están
basados en este tipo de modelo de datos computacional. “Un modelo de base de
datos relacional es un conjunto de relaciones (frecuentemente llamadas tablas).
Cada tabla a su vez es un conjunto de registros, filas o tuplas. Y cada una de éstas es
un conjunto de campos, columnas o atributos” [2]. “En una base de datos
orientada a objetos, la información se representa mediante objetos como
los presentes en la programación orientada a objetos” [3] .

Por tanto al hacer uso de cualquier tipo de bd es necesario un gestor de bases de


datos que se encargue de realizar todas las operaciones estructurales y de
actualización de datos. El número de dbms(sistemas manejadores de bases de datos)
en comparación con los oodbms (sistemas manejadores de bases de datos orientadas
a objetos) es considerablemente mayor, esto podría ser una de las respuestas al
porque se sigue optando por este tipo de arquitectura de bases de datos, algunos de
éstos dbms son:

Microsoft Access
MySql
Sql Server
PostgreSql
Oracle

En el caso concreto de MySql y PostreSql son herramientas de uso libre y por lo


tanto no implican un costo de adquisición de licencia en ninguno de ellos.

Ahora, una oodb, requiere de manejadores de bases de datos que soporten éste tipo
de arquitecturas, y como se mencionó anteriormente éstos son menor en número a
comparación de los dbms. Algunos de los pocos oodbms que existen son:

Db4o
Informix
Bdoviedo3

Quizá esta sea una de las causas por las cuales las oodb aún no tengan ese
crecimiento que en algún momento tantas expectativas generaron.

Un desarrollador que tenga en sus manos la posibilidad de realizar un proyecto para


alguna organización y que tenga en consideración que cualquier empresa que
deposita gran parte de su estabilidad económica y funcional en un modelo de base de
datos busca con esto ahorrar tiempos y costos, optaría en primera instancia por
utilizar un modelo relacional, las razones son diversas, ¿Qué pasaría si dicha bdd
es desarrollada bajo un paradigma orientado a objetos y no cuente con
un respaldo fuerte por parte de la compañía proveedora de cualquier
oodbms que haya sido elegido?, ¿Qué beneficios reales tendría un usuario al
operar un sistema realizado con oodb?. Las respuestas a éstas preguntas se inclinan
en primera instancia a rechazar el uso de oodb, sin embargo, una de las principales
ventajas que los sistemas orientados a objetos ofrecen es un menor costo en el
desarrollo del proyecto así como “su flexibilidad, y soporte para el manejo de tipos
de datos complejos en forma ágil y rápida” [4].

Recordemos que cualquier sistema de cómputo es tan poderoso como el


desarrollador mismo, por lo tanto si la persona encargada del proyecto posee un
conocimiento amplio sobre oodb, no debería tener problema en llevarlo a cabo bajo
éste paradigma, sin embargo, la información aún es “un tanto escaza” y lo son aún
más los “expertos del tema”.

Desde el punto de vista informático, un paradigma orientado a objetos obliga a


utilizar una lógica diferente al momento de plantear un posible modelo de solución;
clases, herencia, encapsulamiento, son solo algunos de los conceptos básicos con los
que habremos de familiarizarnos si es que queremos adoptar este paradigma como
nuestra herramienta de trabajo, esperando que los resultados al desarrollar,
almacenar y recuperar datos, entro otros, sean positivos, al menos así está escrito en
teoría.

El modelo relacional supone “quizá” como mayor complejidad, el llegar a una forma
de normalización adecuada y establecer las relaciones y cardinalidad correctas que
nos permitan tener un funcionamiento eficiente en nuestra bdd.

Cabe hacer mención que actualmente existe un estándar para el manejo de bases
relacionales, el estándar SQL. Éste lenguaje de consultas ha venido a darle un
impacto aún mayor a éste paradigma relacional y ha hecho de éste modelo el más
usado hasta el momento por casi todos los desarrolladores. Cada dbms tiene una
versión propia de SQL pero la esencia del lenguaje es la misma, y sigue
manteniéndose como una herramienta única en su género y con aún bastante vida
por delante.

Los oodb no se han quedado atrás y recientemente se ha dado a conocer una


herramienta equivalente a SQL, el OQL que “no es computacionalmente completo,
sin embargo, las consultas pueden invocar métodos, e inversamente los métodos
escritos en cualquier lenguaje de programación pueden incluir consultas” [5] . Con
éste lenguaje vienen también ODL y OML que son los lenguajes para definición y
manipulación de datos respectivamente, ambos equivalentes a DDL y DML de SQL.

Conclusión

Considero que las bases orientadas a objetos aún no han madurado lo


suficiente como para que supongan una primera alternativa de solución,
sin embargo las ventajas que ofrecen son amplias, y en algún momento quizá no muy
lejano pasen a la cabeza en cuanto al desarrollo de bases de datos se refiere, sin
embargo, los modelos de datos relacionales siguen siendo una muy buena opción,
incluso se piensa en mejoras a este paradigma que podrían en un futuro reafirmarlo
como el modelo de bases de datos más utilizado.

[1]www.linksys.com.mx/linksyswebsitepages/linksyscentroaprendizaje/glosario/

[2] https://es.wikipedia.org/wiki/Base_de_datos_relacional

[3] https://es.wikipedia.org/wiki/Base_de_datos_orientada_a_objetos

[4] http://html.rincondelvago.com/base-de-datos-relacional.html

[5] http://www.monografias.com/trabajos5/tipbases/tipbases.shtml#capIII321