Pregunta para Alfredo Novoa

06/03/2007 - 22:30 por Eugenio Serrano | Informe spam
Voy a olvidar por un momento los insultos de los cuales he sigo objeto y
propongo un debate de arquitectura en donde todos podamos aprender. Voy a
plantear un caso simple para que todas las personas que leen esta lista
puedan seguirnos.

Imaginate que tienes 4 tablas en tu base de datos:

Clientes
Productos
Orden
DetalleOrden

Supongo que todo el mundo puede imaginarse la relacion entre dichas tablas.

Alfredo: En que lenguaje o como programarias el proceso de emision de una
nueva orden
de pedido ?


Regards / Saludos,
Eugenio Serrano
Microsoft MVP (ASP/ASP.Net)
Solid Quality Mentors
http://www.eugenioserrano.com.ar
if (me.today == me.yesterday) me.tomorrow = null;

Preguntas similare

Leer las respuestas

#41 ANT1
08/03/2007 - 16:33 | Informe spam
>Cualquier dia de estos dejo el trabajo y estudio por mi cuenta.

No creo que sea buena idea.



Estar sin trabajar no es buena idea nunca. Pero no lo hago solo por
estudiar programacion y BD, no confundirse. Hay muchas mas cosas de
transfondo. Motivos personales que no tienen nada que ver con este
hilo.

Pero gracias por preocuparse por mi estado laboral.

Un saludo.
Respuesta Responder a este mensaje
#42 Alfredo Novoa
08/03/2007 - 21:01 | Informe spam
On Wed, 7 Mar 2007 23:21:25 -0300, "Eugenio Serrano"
wrote:

Otra contradiccion:

En varios mails te llenas la boca hablando de LinQ, por lo bueno que es,
etc...

Ahora dices esto:

Sigo sin verle utilidad a todo esto, pero por lo menos no lo usas para
hacer las típicas atrocidades del OR Mapping. La gestión de los datos
la sigue haciendo el SGBD. Hacer estas consultas mediante código VB o
C# sería una locura.



Aqui tienes un pedacito de codigo LinQ

Northwind db = new Northwind("@c:\Northwind.mdf");
var query = db.Customers
.where(c => c.City == "London")
.select (c => new {c.Name, c.City});

Esto es C# 3.0 usando LinQ, ahi tienes una consulta a la base de datos
mediante C#



Hombre, me estaba refiriendo a C# 1.0 y 2.0, C# 3.0 todavía no ha
salido de forma oficial.

Pero este tipo de consultas dejan obsoleto a Cooperator Framework,
suponiendo que alguien le encuentre utilidad ahora.

Al fin, estas de acuerdo o no con LinQ ???



En el fondo de la idea si, pero creo que la ejecución deja muuucho que
desear. Me parece que ya lo he dicho bastantes veces.

El equivalente en Tutorial D y D4 sería:

Customers { Name, City } where City = "London";

o también:

Customers where City = "London" { Name, City };

(La "conexión" a la base de datos no se hace al nivel del lenguaje D)

Es evidente que tiene mucha mejor pinta. Y cuanto más compleja es la
consulta más se nota la diferencia de elegancia y después tiene muchas
otras ventajas sobre LinQ.


Saludos
Respuesta Responder a este mensaje
#43 Carlos M. Calvelo
08/03/2007 - 22:55 | Informe spam
Hola ANT1,

On 8 mrt, 10:26, "ANT1" wrote:

Realmente me interesa mucho este tema. Como ya mencione en varias
ocasiones soy nuevo en esto y me gustaria conocer las diversas
direcciones en las que puedo orientar mi forma de programar ademas de
la que me estan enseñando en el trabajo en el que ahora mismo estoy.



La programación imperativa y OO te vendrán de por si por el trabajo.
Intenta dedicarle algun tiempo a otros estilos: funcional, lógica,
relacional. Aprende o juega con por lo menos un lenguage de cada
estilo. Y no te olvides que la base para la programación sigue
siendo estructuras de datos y algoritmos.
Conocer algo de assembler no esta mal tampoco. No tiene por que
ser Intel, mejor que no. Mira p.e. Hennessy & Patterson


Por desgracia lo de investigar por mi cuenta en el trabajo que tengo
ahora mismo parece imposible, apenas tengo tiempo para nada.
Practicamente lo unico que me puedo permitir es seguir estos hilos y a
partir de elos informarme de lo que puedo.



Trata de dedicarle mas tiempo a los libros y menos a estos grupos.
Para ir leyendo poco a poco (y volver a leer):
Knuth, Abelson & Sussman


Lo de la utilidad de este hilo... de momento me sirve para comprender
un poco mas cuando habla cada cual de su forma de programar para
comprender exactamente de que esta hablando.

Antes pensaba que la forma de programar de Eugenio era completamente
mediante capas y objetos en los que realizaba todos los calculos de la
BD como podia ser comprobar si un ID de una clase esta siendo
utilizado, existe y todo eso. Pero por lo que veo no es asi y si que
se parece en gran medida a la forma de programar que sigo yo mediante
Active Record y NHibernate, los cuales no es que terminen de
convencerme o porque en algunos casos veo limitado lo que puedo llegar
a hacer o en otros pq para una consulta que se complique un poco tengo
que generar bastante condigo con ellos.



Utiliza estas herramientas si te lo exige tu entorno. No le dediques
mas tiempo que el necesario para poder hacer tu trabajo lo mejor
que puedas. La probabilidad de que en un par de años prueben haber
sido una moda me parece muy elevada.

Aunque tambien decir que al
igual que estoy aprendiendo a programar, tambien estoy aprendiendo a
usar estas herramientas, con lo que quizas no las uso del todo bien.




Preocupate de eso solo a corto plazo. Programanción en general es
mas importante que estas herramientas.

Tambien he de decir que por lo que veo aqui se estan hablando de casos
de 200 tablas o mas en la BD, eso si que a mi me deja atras
completamente. La mayor app que he realizado trabajaba con una BD de
unas 20 tablas, no mas.



No te dejes imponer por eso. Si con 20 lo sabes hacer bien...


Cualquier dia de estos dejo el trabajo y estudio por mi cuenta.



Ya he visto las otras dos reacciones a Juan Diego y Alfredo y está
claro no puedo decir nada sensato aquí. Trabajar y estudiar???

Todo el tiempo que le dediques a las matemáticas (sobre todo mat.
discreta) no será tiempo perdido.

Evidentemente todo esto es consejo a ***largo plazo***, no para tu
próximo projecto :) Y no por todo esto deberías tampoco olvidarte
de tus responsabilidades en tu trabajo, eso esta claro.

Espero te sirva de algo.

Saludos y suerte,
Carlos
Respuesta Responder a este mensaje
#44 ANT1
09/03/2007 - 10:27 | Informe spam
Hola Carlos M. Calvelo

Gracias por el comentario desde luego que me sirve.

Pero me dejas un duda. Cuando dices:

Utiliza estas herramientas si te lo exige tu entorno. No le dediques
mas tiempo que el necesario para poder hacer tu trabajo lo mejor
que puedas. La probabilidad de que en un par de años prueben haber
sido una moda me parece muy elevada.

Aunque tambien decir que al
igual que estoy aprendiendo a programar, tambien estoy aprendiendo a
usar estas herramientas, con lo que quizas no las uso del todo bien.



Preocupate de eso solo a corto plazo. Programanción en general es
mas importante que estas herramientas.



En especial "Utiliza estas herramientas si te lo exige tu entorno",
¿te refieres a que solo las use si me lo piden en la empresa o a que
solo las use cuando tenga que trabajar con bases de datos?. He
trabajado tambien con ADO y la verdad me parece un infierno comparado
con usar estas herramientas que te facilitan todo lo posible la
comunicacion con la BD evitando tener que preocuparte de sesiones,
transacciones, ... Me imagino que en un par de años estas queden
atras, evolucionen o que simplemente aparezca otra herramienta mejor,
por eso tampoco busco hacer un experto en ellas.

Me imagino que te refirieses a que procurase mejorar en lo que es
programar en si, estructurar el codigo y saber utilizar lo mejor
posible los elementos propios de NET como genericos, reflexion y
demas. En lo cual la verdad que no hay nada mejor que trabajar para
que te pongan en situaciones que o aprendes a hacerlo y lo haces o
estas jodido.

Un saludo y gracias.
Respuesta Responder a este mensaje
#45 ANT1
09/03/2007 - 10:30 | Informe spam
En lo que me mentasen en el hilo de "mis conclusiones del debate de
arquitectura". Pues casi que prefiero no meterme por ahi, no es muy
agradable que te usen para criticar a los demas.

No voy a decir que si entendi mal a alguien porque se explico mal o si
lo que le respondio otro pudo confundirme o que, ya que sencillamente
yo pude no entenderlo sin mas.

Un saludo a todos y gracias por el interes.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida