Experiencias con SQLObject y el ORM en general

Josu Oyanguren josu en ubera.net
Jue Feb 24 17:27:01 CET 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Yo llevo unos meses usando SQLObject.

Aunque he tenido que retocar ciertos aspectos, estoy francamente
contento con él.

Estas son algunas de las ventajas que le veo (muchas de ellas aplicables
también a otros ORM):

* Te olvidas (casi siempre) del SQL. Las consultas y las acciones sobre
la base de datos se hacen mediante código python.

* Los objetos persistentes se tratan como clases de python. Sin archivos
intermedios de definición ni nada parecido.

* Al soportar varias bases de datos, la decisión sobre cuál elegir es
menos problemática.

* SQLObject admite SQLite, lo que me permite trabajar en desarrollo sin
un motor de base de datos, y poner el entorno en producción contra una
base de datos más potente (cuando uno tiene unos cientos de tests de
unidad es una ventaja considerable, de hecho es la que me decidió
finalmente a usar SQLObject frente a otros ORM).

Por supuesto, también tiene algunos inconvenientes. Los fundamentales
son los derivados de trabajar con bases de datos relacionales:

* Los tipos de las variables no son tan dinámicos como a uno le gustaría.

* Las relaciones entre objetos, y entre clases se deben a atener a
ciertas normas relativamente estrictas.

* La herencia ... bueno, yo no uso herencia en los objetos persistentes
y me alegro de ello.

* He tenido que extender el SQLObject "puro" para aguantar ciertos
elementos que necesitaba y no soportaba la librería.

En resumen, yo te recomiendo que uses un ORM (y entre ellos, el
SQLObject). Yo sí he notado un incremento de productividad, fundamentado
en la mayor rapidez a la hora de desarrollar código y el menor número de
errores por la simplificación que han dado a mis programas.

Un saludo,

Josu.


Jose escribió:
| Hola a todos,
|
| Para una aplicación en la que participo (y que implica el soporte de, al
| menos, 2 SGBDR diferentes), estoy estudiando la posibilidad de
| implementar el acceso a datos mediante un ORM en vez de acceso directo
| (lo típico, via driver DB-API).
|
| ¿Tenéis experiencia con SQLObject o con algún otro ORM Python?
|
| ¿Realmente reducen/simplifican/abstraen el código de acceso a datos
| hasta el punto de que, a pesar de sus limitaciones (que todos tienen),
| valgan la pena usarlos?
|
| Saludos,
| Jose
|
|
|
| ------------------------------------------------------------------------
|
| _______________________________________________
| Python-es mailing list
| Python-es en aditel.org
| http://listas.aditel.org/listinfo/python-es


- --



-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCHgBV5ju4HVxhuqQRAi62AJ9syJHJ8jaQNveqnLn+bI/x3OW1QwCfdMS4
eb7cpa+Quyw9PzwBJ0NaxLk=
=AGxK
-----END PGP SIGNATURE-----
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es