Programacion Orientada al Objeto

17/08/2004 - 22:00 por knito | Informe spam
Hola Listeros.

Estoy empesando recien en C# y me sería de mucha utilidad si alguien me
pudiera dar una mano con el tema de POO. estoy modelando una pequeña
aplicación que en términos simples maneje los datos de, por ejemplo, paises,
ciudades, comunas o barrios, pero vistos como objetos para utilizar los
conceptos de herencia.

Necesito diseñar un modelo orientado a objetos donde éstos en su conjunto
compongan un sistema en ASP.NET.

Les pido ayuda, llevo 1 año y medio en VB.Net pero no había explorado las
potencialidades de éste tipo de programación.

Gracias de antemano.

Knito
Chile.

Preguntas similare

Leer las respuestas

#36 Alfredo Novoa
22/08/2004 - 14:38 | Informe spam
On Thu, 19 Aug 2004 22:30:10 -0400, "Melissa Ruiz"
wrote:

Disculpa, viendo tus posts veo que manejas los conceptos de la oop. Donde
puedo obtener info. para aprender con la claridad que expones esos conceptos
y no confundirme con documentacion "mala" como la llamas. ?



Pues desgraciadamente no es cosa fácil.

Para desarrollar sistemas de gestión es más importante saber de bases
de datos que saber sobre POO. Sobre bases de datos si hay muy buenos
libros.La mejor introducción al tema es sin duda:

"Introducción a los Sistemas de Bases de Datos" de C. J. Date.

La 7ª edición está en español y la 8º no está traducida.

En general los libros que recomiendan en esta página: www.dbdebunk.com
son todos muy buenos y bastante fáciles de leer excepto el "Tercer
Manifiesto" que ya está un poco más especializado.

Después de estos libros hay otro que también está muy bien:

"Foundations of Databases" de Serge Abiteboul, Richard Hull, Victor
Vianu

http://www.amazon.com/exec/obidos/t...0?v=glance

Pero es mucho más dificil de leer y yo no lo recomendaría para
empezar.

Hay otras introducciones bastante conocidas como la de Korth y
Silverschatz y la de Elmasri y Navathe que tratan con bastante más
detalle la implementación de los SGBD, y sus ejemplos se ajustan más a
los productos del mercado. Pero para entender de verdad los
fundamentos, el libro de Date es casi imprescindible.

Respecto a la parte de las aplicaciones donde la OO es relevante, hace
mucho tiempo que no leo textos introductorios así que no te puedo
ayudar mucho.

El único libro sobre OO que me ha dejado totalmente satisfecho en
términos de calidad es: "Design Patterns" de la banda de los 4

http://www.amazon.com/exec/obidos/t...6?v=glance

Pero no es un libro introductorio y es algo dificil de leer.

Yo creo que lo mejor es tener primero una buena base sobre lenguajes
de programación en general, y conocer bien los conceptos de
pogramación imperativa, procedimental, funcional, declarativa, lógica,
etc. Con una buena base te será mucho más facil entender bien los
conceptos y verás que la mayoría de los conceptos de la OO son
simplemente los conceptos clásicos renombrados, pero con una
terminología mucho más descuidada.

Un buen libro sobre conceptos de lenguajes de programación es:

"Concepts of Programming Languages", de Robert W. Sebesta

Dominando los fundamentos puedes leer textos de introducción a la OO
sin mucho peligro de que la poca precisión o falta de calidad de los
mismos pueda confundirte.

¡Suerte!

Saludos.
Respuesta Responder a este mensaje
#37 Melissa Ruiz
22/08/2004 - 19:18 | Informe spam
Gracias por la información tan valiosa.



"Alfredo Novoa" wrote in message
news:
On Thu, 19 Aug 2004 22:30:10 -0400, "Melissa Ruiz"
wrote:

>Disculpa, viendo tus posts veo que manejas los conceptos de la oop.


Donde
>puedo obtener info. para aprender con la claridad que expones esos


conceptos
>y no confundirme con documentacion "mala" como la llamas. ?

Pues desgraciadamente no es cosa fácil.

Para desarrollar sistemas de gestión es más importante saber de bases
de datos que saber sobre POO. Sobre bases de datos si hay muy buenos
libros.La mejor introducción al tema es sin duda:

"Introducción a los Sistemas de Bases de Datos" de C. J. Date.

La 7ª edición está en español y la 8º no está traducida.

En general los libros que recomiendan en esta página: www.dbdebunk.com
son todos muy buenos y bastante fáciles de leer excepto el "Tercer
Manifiesto" que ya está un poco más especializado.

Después de estos libros hay otro que también está muy bien:

"Foundations of Databases" de Serge Abiteboul, Richard Hull, Victor
Vianu




http://www.amazon.com/exec/obidos/t...0?v=glance

Pero es mucho más dificil de leer y yo no lo recomendaría para
empezar.

Hay otras introducciones bastante conocidas como la de Korth y
Silverschatz y la de Elmasri y Navathe que tratan con bastante más
detalle la implementación de los SGBD, y sus ejemplos se ajustan más a
los productos del mercado. Pero para entender de verdad los
fundamentos, el libro de Date es casi imprescindible.

Respecto a la parte de las aplicaciones donde la OO es relevante, hace
mucho tiempo que no leo textos introductorios así que no te puedo
ayudar mucho.

El único libro sobre OO que me ha dejado totalmente satisfecho en
términos de calidad es: "Design Patterns" de la banda de los 4




http://www.amazon.com/exec/obidos/t...6?v=glance

Pero no es un libro introductorio y es algo dificil de leer.

Yo creo que lo mejor es tener primero una buena base sobre lenguajes
de programación en general, y conocer bien los conceptos de
pogramación imperativa, procedimental, funcional, declarativa, lógica,
etc. Con una buena base te será mucho más facil entender bien los
conceptos y verás que la mayoría de los conceptos de la OO son
simplemente los conceptos clásicos renombrados, pero con una
terminología mucho más descuidada.

Un buen libro sobre conceptos de lenguajes de programación es:

"Concepts of Programming Languages", de Robert W. Sebesta

Dominando los fundamentos puedes leer textos de introducción a la OO
sin mucho peligro de que la poca precisión o falta de calidad de los
mismos pueda confundirte.

¡Suerte!

Saludos.


Respuesta Responder a este mensaje
#38 knito
23/08/2004 - 16:30 | Informe spam
Si les interesa... éste es un artículo publicado en la MSDN, creo que es una
"fuente confiable" y es donde hablan en otros términos lo mismo que
implementa un motor de persistencia.

http://www.microsoft.com/spanish/ms...art140.asp

Algunos sitios donde pueden conseguir información confiable sobre éste tema
es en http://orm.net y si quieren soporte de éste tema, busquen la palabra
"persist" en
http://www.asp.net/ControlGallery/d...tabindex=1 y lean
un rato las descripciones de los controles que ofrecen (es el sitio oficial
de asp.net que tiene microsoft).

Saludos y buena lectura...

Knito (Chile)

PD: La discución siempre es buena cuando es nutrida de referencias...
gracias por el debate.
Respuesta Responder a este mensaje
#39 Alfredo Novoa
23/08/2004 - 18:39 | Informe spam
On Mon, 23 Aug 2004 10:30:25 -0400, "knito" <knito~@~chile~.~com>
wrote:

Si les interesa... éste es un artículo publicado en la MSDN, creo que es una
"fuente confiable"



Desgraciadamente el que un articulo se publique en la MSDN no es
ninguna garantía de calidad, y la referencia que das es un ejemplo
perfecto.

Aunque de todas formas poco importa que la fuente sea confiable o no
si vemos claramente que el artículo es pobre como en este caso. Si
dicen que dos más dos son cinco me da igual quien firme el artículo
que yo no me lo voy a creer.

El artículo propone implementar la lógica de negocio en la aplicación,
es decir gestionar los datos directamente desde la aplicación, y eso
es un error de principiante. También propone modelar como objetos
entidades que se deberían modelar como relaciones (tablas).

La lógica de negocio debe de estar centralizada y ser gestionada por
el DBMS, eso lo aprendes en la primera lección de cualquier curso de
bases de datos. Desgraciadamente muchos programadores de aplicaciones
carecen de los conocimientos más elementales sobre teoría de bases de
datos y no piensan que saber sobre base de datos sea importante para
desarrollar sistemas de bases de datos.

En resumen, para crear sistemas de información no basta con saber
sobre programación de aplicaciones, también hay que saber de bases de
datos o trabajar mano a mano con expertos en bases de datos.

y es donde hablan en otros términos lo mismo que
implementa un motor de persistencia.

http://www.microsoft.com/spanish/ms...art140.asp




No habla en ningún momento sobre motores de persistencia, pero si que
cae en algunos de los mismos errores.

Algunos sitios donde pueden conseguir información confiable sobre éste tema
es en http://orm.net y si quieren soporte de éste tema



Pues me dejas bastante sorprendido por que yo no encuentro ninguna
relación entre ORM y los "motores de persistencia".

ORM es una técnica para crear diseños conceptuales de bases de datos.
Es decir algo como los diagramas ER pero con mucha más riqueza
expresiva.

ORM permite especificar muchas más reglas de negocio que los diagramas
ER, pero las reglas de negocio especificadas usando ORM se deben de
implementar de manera centralizada en la base de datos como cualquier
otra regla de negocio, y a ser posible de forma declarativa.

ORM es independiente de la implementación, aunque yo personalmente no
lo encuentro útil.

, busquen la palabra
"persist" en
http://www.asp.net/ControlGallery/d...tabindex=1 y lean
un rato las descripciones de los controles que ofrecen (es el sitio oficial
de asp.net que tiene microsoft).



Son productos creados por gente sin preparación en bases de datos y
que no saben que la preparación en bases de datos es necesaria para
crear sistemas de bases de datos decentes.

De todas formas no son controles creados por Microsoft, y aunque lo
fuesen seguirían sin ser recomendables.


Saludos
Respuesta Responder a este mensaje
#40 Antonio Andrés Avila Moreno
25/08/2004 - 04:12 | Informe spam
Alfredo,
Con todo el respeto que te merece, yo creo que deberias de contratar a un
consultoria experta en soluciones y dejar de sufrir con toda la problematica
que implica desarrollar un sistema, dado que te gustaria que si dejar la
cama, todo el mundo sea feliz y no cueste nada de trabajo. Esto es todo lo
que voy a decirte, no voy a entrar en tu juego de discusion sin razon.
Ademas que yo creo que no tiene ningun sentido que este en un grupo de
noticia, siendo un rebelde sin causa, que solo quiere criticar.
Pero como dicen un comentarista, no estoy criticando, solo estoy diciendo.
=)


Saludos desde Mexico ...




"Alfredo Novoa" escribió en el mensaje
news:
On Wed, 18 Aug 2004 17:36:38 +0200, "Vyacheslav Popov"
wrote:

>Hola Melissa,
>yo vengo de Delphi y C++ Builder (Borland) y en mi opinión C# es


totalmente
>orientado a objetos y además el acceso a datos es mucho más amable.
>
>La felosofía de tres capas de ADO.NET no es novedosa pero bastante
>presentable.

Pues yo también vengo de Delphi (que tampoco es para echar cohetes), y
ADO.NET me ha parecido un gran paso atrás en facilidad de uso y
cantidad de código que hay que escribir.

Conozco a mucha gente que se resiste a pasar de ADO a ADO.NET por el
mismo motivo.

Saludos

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida