Marcelo

Algunas observaciones



On 3/1/07, entrada <[EMAIL PROTECTED]> wrote:
>
> Otra cuestion, estoy pasando las clases a Dolphin Smalltalk y me
> encuentro con lo siguiente:
>
> tengo las clases por ejemplo:
>
> Empresa (razonSocial cuit direccion)
> Estacion(nombre direccion puntoVenta .....)
> Via(numero estado....)
> Tarifa(estacion categoria periodo importe)
Nunca trates , o es mejor pensar en los objetos por su comportamiento
no por los atributos.
tu enumeracion parece como para contruir una tabla.
pensa que los objetos solo son comportamiento solo son eso porqe solo
son lo que pueden responder y eso no esta ligado a la estructura.
por ejemplo una empresa podria responder al cuit sin tener variable de
instancia para ello.

es mejor pensar en lo que hace una Empresa.


>
> ahora bien, al cobrar el peaje genero un ticket que tiene la siguiente
> info: razon social de la empresa, cuit, punto de venta, nro de ticket,
> fecha, hora, cajero, via, sentido, nombre de estacion, categoria,
> importe, subsidio, total (copiado de un ticket real)

Mchos de esos datos no los tiene . los averigua atraves de la
estacion->concesionaria->empresa
fijate que te la expreso como una cadena de delagacion o sea.

via cobrar un ticke: aTicket
 aTicket empresa: self empresa.
o sea la tiene la via que es parte de una empresa o lo que sea
delega!

>
> ahora bien yo quiero crear la clase Ticket:
> mi duda por ej, en el ticket voy a tener un atributo razonSocial que
> lo voy a inicializar con el atributo del objeto empresa, o voy a tener
> en el ticket un objeto empresa, que me va a servir para imprimir la
> info de razon social y cuit de la empresa, aunque me sobre atributos
> de empresa que no use como ser direccion?.
 esta mas arriba delega lo que vos no lo sepas lo sabe otro si ese otro
no lo tenes quizas sepas quien lo conoce o sino repensa tus relaciones
de objetos quizas pusiste un string cuando  debiera haber algo mas
inteligente. ( un objeto del dominio)


>
> Espero que se entienda mi dilema, es decir no se si la clase Ticket
> queda así:
>
> Ticket
> razonSocial:aString
> cuit:aString
> puntoVenta:aString
> nroTicket:anInteger
> fechaYHora:TimeStamp
> cajero:aString
> via:aString
> sentido:aString
> nombreEstacion:aString
> categoria:aString
> importe:anFloat
> subsidio:aPorcentaje
> total:aFloat

antes te sugeri que no pienses los objetos como estructura..

>
> o el ticket queda así:
>
> razonSocial:aString
> Ticket
> empresa:aEmpresa
> estacion:aEstacion
> nroTicket:anInteger
> fechaYHora:TimeStamp
> cajero:aUsuario
> via:aVia
> sentido:aString
> tarifa:aTarifa.
> subsidio:aSubsidio.
>
> ademaaas, sentido lo tengo como un atributo de turno y no de via, esta
> bien asi? porque sino tambien necesito agregar un atributo turno, de
> la clase Turno....

No lo puedo responder. usa los objetos como mas comodo te quede
pensa en las relaciones y como se usan entre ellos, dejalos comodos
para resolver cualquier problematica, move lo que necesites no pienses
en estructura
Quizas solo deberias en principio poner los mensajes sin estructura (
tener necesariamente vairables de instancia) luego con esa cascara ver
si resuelve
y si lo hace agrega las delagaciones o variables que creas necesarias.
no te apresures a poner variables , pensalo en principio como mensajes
de hecho las variables las accedes a traves de mensajes ;)
eso te da tiempo a pensar donde van y quienes responden los mensajes.
tomate tiempo para para las variables,pensa en comportamiento.


> Espero no molestar con tantas dudas.....la verdad me cuesta bastante
> el diagrama de clases, un dia lo pienso de una manera, y al otro dia
> tengo un monton de dudas....
>
> saludos,
> Marcelo
Saludos
MDC

>
>
> On 27 feb, 00:18, "entrada" <[EMAIL PROTECTED]> wrote:
> > Hola Gente,
> >
> > Desde ya, muchas gracias por tomarse la molestia de leer este post.
> >
> > Estoy continuando mi TP de programación, el hilo original es 
> > este:http://groups.google.com/group/clubSmalltalk/browse_frm/thread/465cac...
> > (no se porque no puedo agregar mas comentarios al grupo en ese hilo,
> > solo respuestas a los autores)
> >
> > Acabo de subir un nuevo diagrama de clases en la sección Archivos:
> > (ModeloDeClasesSGPv5.bmp)http://clubsmalltalk.googlegroups.com/web/ModeloDeClasesSGPv5.bmp?gda...
> >
> > Básicamente, sigo teniendo problemas para entender como funcionan los
> > turnos.
> >
> > Gustavo Ibarra me dijo que en un turno pueden intervenir varios
> > operadores (yo los llamo usuarios de mi sistema), yo lo veo como que
> > un usuario ingresa al sistema, en ese momento se abre un turno, cuando
> > el usuario sale del sistema, se cierra el turno, sin importar la
> > cantidad de horas...en ese turno quedan registrados todos los tickets
> > generados. si alguno (seguramente Marcelo Cortes) me puede explicar un
> > poco mas....
> > A esto es a lo que se llama cierre X?
> >
> > Al cierre del turno genero un informe con el total de vehiculos por
> > categoria y el monto que significa...
> >
> > Por otro lado esta el cierre Z, que es un cierre diario, que esto no
> > lo voy a contemplar porque tampoco lo entiendo.
> >
> > Tambien me gustaria si es posible una explicacion sobre como funcionan
> > los subsidios, yo en realidad lo tengo pensado de la siguiente forma
> > ya que mi sistema es manual: viene el cliente (automovilista) y
> > presenta una tarjeta de subsidio, el cajero en el sistema indica el
> > porcentaje de subsidio y carga manualmente el codigo de la tarjeta.
> > esta bien esto o es distinto?
> >
> > Por otro lado creo que me falta algun otro objeto para registrar
> > eventos, como ser entradas / salidas al sistema, modificaciones  de
> > ABM de algun objeto, generacion de informes, es decir todas  las
> > actividades realizadas por los usuarios. aunque quizas esto no sea tan
> > importante al nivel de mi sistema.
> >
> > bueno tengo otras dudas pero no quiero hacer demasiado largo el mail,
> > aunque ya estar tarde...
> >
> > Cualquier sugerencia / comentario sera muy bienvenido...
> >
> > Gracias Totales.
> > saludos,
> > Marcelo
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "clubSmalltalk" de 
Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo 
electrónico a [email protected]
 Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en 
http://groups.google.com/group/clubSmalltalk?hl=es.

-~----------~----~----~----~------~----~------~--~---

Responder a