[Buoh-dev] ComicManager
Carlos Garcia Campos
carlosgc at gnome.org
Thu Aug 18 15:56:54 MDT 2005
El jue, 18-08-2005 a las 22:54 +0200, Esteban Sánchez escribió:
> El jue, 18-08-2005 a las 21:27 +0200, Carlos Garcia Campos escribió:
> > El jue, 18-08-2005 a las 21:11 +0200, Esteban Sánchez escribió:
> > > Tengo una idea sobre el tema del manager de comics. A ver si voy bien
> > > encamidado.
> > >
> > > Vale, puedo aceptar por cuestiones de POO que el comic no tiene que ser
> > > el que se mueva, si no poco más que una URI y un pixbuf. Esto es
> > > basicamente lo que tiene actualmente la clase BuohComic.
> > >
> > > Si un futuro meteremos (o meteré *ejem* xD) más tipos de comics, que
> > > tengan otro tipo de URIs no basadas en fechas, si no en números, la
> > > única diferencia de una clase a otra es el estilo de la URI.
> > >
> > > Así que en realidad no habría diferentes clases de comics, si no
> > > diferentes clases de ComicManager, uno para manejar los comics con
> > > fechas, otros para comics numéricos (ecol), otro para URIs ofuscadas
> > > (dilbert), basados en fecha pero con publicacion aleatoria... Llamemosle
> > > ComicManagerTipo (de forma genérica para más adelante)
> > >
> > > ¿Voy bien encaminado?
> >
> > si
>
> Yuhu!
>
> > > Así, el BuohComic sería una clase sencillota y supergenérica con
> > > - URI genérica
> > > - URI actual
> > > - Tipo de comic (simple, numerico....)
> > > - Pixbuf
> > > - Autor
> > > - Restricciones
> > > - Página actual (para unos sería una fecha, para otros un número..)
> > > - Blah blah blah
> >
> > esto ya no lo veo. No se que es uri genérica y actual. Entiendo que un
> > comic tiene una uri, ya resuelta, que apunta a el. Hemos quedado que no
> > hay tipos de comic sino tipos de manejadores, así que no tiene sentido
> > tener un tipo de comic como atributo de un comic. Las restricciones son
> > del tipo de comic no del comic, por lo que también serán del manager.
> > Pagina actual: no se que es la página de un comic. Blah blah blah: si,
> > esto que no falte :-DD
>
> El Blah es importante, la base :P. La página es lo que indicaría de
> alguna manera el "número" del cómic. Ahora mismo es la fecha del comic,
> de una manera más genérica y común podria entenderse como página. Te lo
> explico con ejemplos:
>
> La uri genérica es esto:
> http://picayune.uclick.com/comics/sptut/%Y/sptut%y%m%d.gif
> La uri concreta para hoy sería:
> http://picayune.uclick.com/comics/sptut/2005/sptut050818.gif
>
> La genérica es común para un comic, la concreta es única para una página
> de un comic. Otro ejemplo sería ecol (el formato me lo he inventado):
> http://mirror8.escomposlinux.org/tira/ecol-%N%.png
> y una concreta:
> http://mirror8.escomposlinux.org/tira/ecol-214.png
> La página sería 214, que es el número en concreto de la ultima tira de
> ecol. ¿Queda algo más claro así?
comprendido entonces, según lo haría yo comic == pagina. Comic de ecol
de hoy != comic de ecol de la semana pasada. Todos los atributos menos
el uri y la fecha serán los mismos. Pero quien entiende de uris
genéricas y crera comics a partir de ellas sería el manager.
> Pues eso, que cada comic tiene una uri genérica y una página, con esos
> dos datos se consigue la concreta. No es lo mismo la uri genérica de
> Garfield que la de Snoopy, aunque se obtenga igual.
>
> Aparte, cada comic tiene sus restricciones (unos no salen en domingo,
> otros solo los martes...)
s/cada comic/cada tipo de comic/
> El tipo sería polimorfismo, era una manera de tenerlo presente, no un
> atributo, sorry :)
>
> > Yo creo que un comic es: uri, pixbuf, autor, título, idioma y por
> > supuesto Blah blah blah
>
> El Blahblah no puede faltar.
>
> > > El ComicManager tendría capacidad de cambiar la URI de un comic
> > > dependiendo de los diferentes parámetros de cada tipo de comic.
> >
> > Yo creo que será en realidad quien cree los comics en función de sus
> > restricciones, al final siempre se obtiene un comic con una uri, un
> > pixbuf, etc.
>
> Sí, crearía los comics, pero haría la función de "mover" la página.
yo lo veo siempre como devolver una nuevo comic.
> > > Así que de cara al buoh estaría el ComicManager con unos metodos
> > > publicos del palo:
> > >
> > > comic_manager_move_comic_forward (ComicManager manager, BuohComic comic)
> > > comic_manager_move_comic_back (ComicManager manager, BuohComic comic)
> > > comic_manager_blahblahblah ()
> > >
> > > El ComicManager comprobaría el tipo de cada comic y llamaría a los
> > > correspondientes metodos de la clase ComicManagerTipo.
> >
> > ComicManager sería una clase abstracta o una interfaz, depende de la
> > naturaleza de cada tipo de Manager (yo de esto ni idea, no se como va el
> > tema de los comics). Si todos tienen exactamente la misma interfaz
> > tendría sentido una clase abstracta. Si hay diferencias de naturaleza
> > pero comparten métodos o comportamiento, entonces sería una interfaz.
>
> Pueden tener diferencias de comportamientos (Por ejemplo ecol no tiene
> restricciones), pero externamente se comportan de la misma forma.
> Palante y patrás :P
>
> > > Puede hacer dos cosas:
> > > a) Crear una copia del comic y devolverla
> > > b) Mover el comic directamente, cambiandole la URI
> > > ¿Cual creeis que es mejor?
> >
> > Hay que pedirle al manager los comics, pero el manager no tiene que
> > cambiar nada, crea un comic y lo devuelve.
>
> Sería una especie de fábrica (que no factoria) de comics, no?
>
> Pero a la hora de ir hacia atrás en un comic, tendrías que indicarle a
> partir de cual quieres mover. Por ejemplo "quiero ver el comic de ayer
> de Garfield"
eso es como una lista enlazada, next, last, previous, etc. Como el
manager es el que entiende de como hacerlo devolverá el comic concreto
> manager_go_back (comic, n); /* n = cantidad de páginas atrás */
>
> ¿Qué crea un BuohComic nuevo y lo devuelve? Pues perfecto, pero a partir
> de algo, no? :)
>
> >
> > Salu2
>
> Ya tengo una idea de por donde tirar. Lo hablamos :)
no lo termino de ver . . .
> Siento darte el coñazo con los comics, las uris, las fechas y tal :P
> Espero que ahora lo veas más claro
no, lo de uri genérica y restricciones y tal si, pero la aproximación
no.
> Saludos!
Salu2
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Carlos Garcia Campos a.k.a. KaL
elkalmail at yahoo.es
carlosgc at gnome.org
http://carlosgc.linups.org
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PGP key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x523E6462
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://forge.novell.com/pipermail/buoh-dev/attachments/20050818/1a7d5a14/attachment.pgp
More information about the Buoh-dev
mailing list