¿Porqué ADO.NET no soporta programación orientada a objetos?

08/06/2006 - 16:40 por Vyacheslav Popov | Informe spam
C# es un lenguaje de programación moderno, completamente orientado a objetos
y el que más me gusta...
pero ¿porqué ADO.NET no soporta programación orientada a objetos?

Preguntas similare

Leer las respuestas

#26 Alfredo Novoa
09/06/2006 - 08:59 | Informe spam
On Fri, 9 Jun 2006 05:30:21 +0200, "Vyacheslav Popov"
wrote:

Mostrar la cita
Estás mezclando el tocino con la velocidad.

Las aplicaciones sirven precisamente para que los usuarios no tengan
que teclear instrucciones SQL en la consola.

Las aplicaciones son un sustituto amigable de la consola, y la lógica
de negocio debe de seguir siendo asegurada por el SGBD.

Mostrar la cita
Yo no estoy de acuerdo. Las dos cosas no se pueden comparar.

Es como decir (tocino < velocidad).

Pero cuando hay un conflicto entre lo que dice la OO y la teoría de
bases de datos hay que hacer caso a la teoría de bases de datos por
que tiene una base mucho más sólida.

Mira lo que opina el creador de la STL de la OO

I find OOP technically unsound. It attempts to decompose the world in
terms of interfaces that vary on a single type. To deal with the real
problems you need multisorted algebras - families of interfaces that
span multiple types. I find OOP philosophically unsound. It claims
that everything is an object. Even if it is true it is not very
interesting - saying that everything is an object is saying nothing at
all. I find OOP methodologically wrong.

http://www.stlport.org/resources/StepanovUSA.html

Te recomiendo leer la entrevista entera.


Saludos
#27 Alfredo Novoa
09/06/2006 - 10:47 | Informe spam
On Fri, 9 Jun 2006 05:18:42 +0200, "Vyacheslav Popov"
wrote:

Mostrar la cita
Los modelos cada uno los representa como le da la gana. Los diagramas
de clases UML son casi iguales a los diagramas E-R, y ambos no son más
que dibujitos que proporcionan poca información y que son
completamente prescindibles.

Mostrar la cita
Nunca es obligatorio usar patrones de diseño, y también existen
patrones de diseño para diseñar bases de datos relacionales. Pero es
cierto que no hay nada parecido al álgebra relacional en el mundo OO.
Por eso el Modelo Relacional es una forma mucho más potente de
gestionar datos. Fíjate en lo que dice Stepanov:

"I find OOP technically unsound. It attempts to decompose the world in
terms of interfaces that vary on a single type. To deal with the real
problems you need multisorted algebras - families of interfaces that
span multiple types."

El álgebra relacional es un ejemplo perfecto de este tipo de algebras
que se necesitan.

Mostrar la cita
Y también se aplican otras técnicas que dan muchísimo mejor resultado.

Mostrar la cita
A esto se le llama una definición circular. No sirve para nada. Además
de que es muy floja.

Has escrito que un objeto es un ejemplar de una descripción de un
conjunto de objetos. No hay por donde cogerlo. Lo de la semántica es
otra tontería que no se de donde la habrás copiado.

Mostrar la cita
Si un objeto es un ejemplar de una clase (un valor) entonces no ocupa
lugar ni en el tiempo ni en el espacio, por lo tanto no se puede crear
ni destruir.

Lo que pasa es que "objeto" es la confusión de dos de los conceptos
clave de la programación imperativa: valor y variable. Aunque muchas
veces también se confunde con el concepto de tipo como cuando se dice
que un objeto tiene operaciones.

Los resultados de confundir dos cosas tan diferentes y tan importantes
nunca son buenos. Una parte muy importante de las tonterías que se
dicen sobre la OO vienen de no tener claros los conceptos clave de la
programación imperativa: tipo, valor, variable y operador.

Mostrar la cita
Esto no está mal del todo.

Un Sistema de Información está formado por un conjunto de aplicaciones
que interactuan. Dentro de un Sistema de Información bien diseñado hay
un subsistema que se ocupa de gestionar los datos garantizando toda la
lógica de negocio (SGBD). Por lo tanto las aplicaciones se deben de
encargar de la presentación y la comunicación con los usuarios. Las
aplicaciones son un puente entre los usuarios y el subsistema de
gestión de bases de datos. Las aplicaciones deben de transformar las
acciones de los usuarios en órdenes para el SGBD y presentar las
respuestas de forma cómoda.

Las aplicaciones forman el subsistema de presentación y comunicación
de un Sistema de Información.

SI = Subsistema de presentación + Subsistema de gestión de datos aplicaciones + SGBD.

Responsabilidades:

-Aplicaciones: comunicación con los usuarios
-SGBD: gestión de los datos incluyendo en mantenimiento de su
integridad y la derivación de nuevos datos.

Mostrar la cita
La uso desde hace 16 años y tiene sus cosas buenas, pero no es ni
mucho menos la panacea y tiene una base teórica muy débil. Casi todo
lo que se escribe sobre POO son tonterías.

Mostrar la cita
El nivel de abstracción de la POO es solo un poco mejor que el de la
programación clásica y muy inferior al del Modelo Relacional.

Mostrar la cita
Si Google tuviese algo parecido sería desde luego muchísimo más
potente de lo que es.

Igual que WinFS es mucho más potente que los sistemas de archivos
jerárquicos.


Saludos
#28 Carolina Alvarez
09/06/2006 - 14:35 | Informe spam
La de este hilo es como un tema para un articulo y tal vez muy avanzado para
nosotros simples mortales de este foro. ;-)


"Vyacheslav Popov" escribió en el
mensaje news:
Mostrar la cita
#29 Yamil Bracho
09/06/2006 - 15:31 | Informe spam
No se a lo que llamás "quedar más limpio", pero lo que es seguro es
Mostrar la cita
R. Con limpio me refiero a que no tienes tanto codigo "plomeria". (Abrir la
conexion, crear el objeto Command, exejcutar la consultar,
Abrir el DataSet, etc). Esto quizas lo puedes minimizar con una buena clase
como los Application Blocks o usando algun patron de diseno pero
efectivamente no creo que sea el camino mas facil...
La mejora del Hardware mejora cualquier cosa pero si debo hacer un
mantenimiento prefiero algo donde tengo que invertirle menos tiempo..

Mostrar la cita
R. Si Hibernate no fuera un buen proyecto no fuese casi un estandard, no te
parece ? Ademas no tiene un marketing detras de ello
ya que es un proyecto gratis..

Mostrar la cita
R. Si tienes un codigo "limpio" cualquiera que conozca el ORM lo puede
tomar. Coincido contigo conque el tiempo de desarrollo es mayor porque
tienes la curva de aprendizaje de la herramienta pero una vez que le agarras
el hilo pues incluso puedes decrementar el tiempo de desarrollo. Al llevar
al minimo el codigo de plomeria pues te reduces el tiempo de desarrollo, te
facilitas los mantenimientos y si tienes problemas los puedes identificar
rapidamente.
#30 Robert Barreiro
09/06/2006 - 16:19 | Informe spam
Para eso usas NHibernate y listo, no te complicas mas la vida. Hay que dejar
un poco de trabajo para los demas, tampoco podemos pretender que Microsoft
nos de todo en la mano, sino la programacion se puede volver un poco
monotona.


Saludos


"Vyacheslav Popov" wrote in message
news:
Mostrar la cita
Ads by Google
Search Busqueda sugerida