Giter Site home page Giter Site logo

Comments (22)

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Cuando hablé sobre una pila no me hagan caso, la pila es implícita, es el 
recorrido "recursivo" a través de los métodos de guardado/cargado de los 
diferentes objetos. Y al principio de cada llamado habría que agregar el 
objeto al Map, para que no lo guarde/cargue de vuelta.

Original comment by [email protected] on 10 Jun 2011 at 10:36

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Vos planteas que hallan archivos xml para cada objeto? o que seria en ese caso 
el 123.xml?

Original comment by [email protected] on 11 Jun 2011 at 3:33

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Sí, eso es lo que planteo. 123.xml es el archivo que contiene lo que dice 
después de "En 123.xml:" en el mensaje que escribí.

A cada objeto que tenga los métodos para guardar/cargar, podemos meterlo en un 
archivo separado y que quede guardado ahí. Después, al momento de cargar el 
objeto de tal id, abrimos el archivo [id].xml y lo cargamos; entonces van a 
haber tantos archivos abierto como profundidad hayamos alcanzado en el grafo 
que estamos recorriendo (todo lo demás va a estar o ya cerrado y cargado o por 
cargar si no se llegó).

La otra era meter varios objetos en un mismo archivo, pero se complica cómo lo 
organizamos y cómo encontramos el objeto que queremos cargar (y ni hablar de 
que no manejamos el archivo manualmente como para poder saltar con libertad de 
un lado a otro conociendo las posiciones de cada objeto en el archivo, o al 
menos no sé cómo hacerlo con el manejador que vamos a usar).

Original comment by [email protected] on 11 Jun 2011 at 4:04

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Para mi es bastante feo hacer muchos archivos. Con uno solo se podria manejar 
bien. Espero poder tener algo andando para mañana para poder mostrar que si 
anda

Original comment by [email protected] on 11 Jun 2011 at 5:00

  • Added labels: Priority-Medium
  • Removed labels: Priority-High

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Si yo también creo que es bastante feo hacer muchos archivos, de hecho, 
estariamos desperdiciando lo que nos permite xml que es poder armar todo en 
forma de arbol. Yo también pienso que en un solo archivo tiene que entrar 
todo. A lo sumo, poner un xml para misiones (o sea misiones por defecto con su 
configuración inicial para partidas nuevas) y otro para el guardado de 
partidas ya iniciadas en donde necesitamos especificar a quien pertenece cada 
partida.

Original comment by [email protected] on 11 Jun 2011 at 12:38

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Para la persistencia de misiones, se puede hacer en un único archivo.

Pero la otra persistencia, si encuentran alguna solución que funcione bien 
está ok.

Original comment by [email protected] on 11 Jun 2011 at 4:14

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
No quiero ser agua fiestas, pero la prueba de persistencia no anda =S, explota 
apenas inicia porque no encuentra los archivos... Pego acá el error para que 
vean:


java.io.FileNotFoundException: c:\pablo_java.xml (El sistema no puede hallar el 
archivo especificado)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileInputStream.<init>(Unknown Source)
    at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
    at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
    at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
    at tp2.persistencia.ReconstructorDeGrafo.ReconstruirDesde(ReconstructorDeGrafo.java:19)
    at tp2.Programa.main(Programa.java:17)
Exception in thread "main" java.lang.NullPointerException
    at tp2.modelo.Partida.nuevaDesde(Partida.java:112)
    at tp2.Programa.main(Programa.java:19)

Original comment by [email protected] on 12 Jun 2011 at 2:23

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Yo puse como nombre de archivo "pablo_java.xml" (sin el d:\\) y me anduvo.

Original comment by [email protected] on 12 Jun 2011 at 4:26

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Probé eso pero sigue sin andarme, tira el mismo error...

Original comment by [email protected] on 12 Jun 2011 at 4:38

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
En windows 7 el C esta protegido, tenes que tirarlo en una carpeta cualquiera 
sino no lo toma

Original comment by [email protected] on 12 Jun 2011 at 4:56

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Descomentastes cuando crea el archivo no?

Original comment by [email protected] on 12 Jun 2011 at 4:58

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Igual yo uso XP, mi maquina no se vanga el seven jajaja Hay que descomentar lo 
que esta comentado en el main?

Original comment by [email protected] on 12 Jun 2011 at 4:59

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Listo, ya andubo, descomente las dos lineas que estaban comentadas.

Original comment by [email protected] on 12 Jun 2011 at 5:01

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Eso fue culpa mia que me olvide de descomentarlos antes de comprimir, lo 
comente para poder manipular el xml y ver si se modificaba el otro que se creaba

Original comment by [email protected] on 12 Jun 2011 at 5:42

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Tengo varias cosas para criticar (no se ofendan).

- Hay métodos "guardar", y no veo ninguno que se llame "cargar".
- Hay mezcla de idiomas.
- Realmente tuve que mirar al 100% el código para poder entender más o menos 
qué hace cada cosa.
- ¿Hace falta que cada objeto tenga un ID como atributo? Para mí de eso 
tendría que encargarse una clase de persistencia, y no tiene nada que ver con 
el objeto.
- ¿No sería mejor excluir a la palabra "grafo" de nuestras mentes al guardar 
o cargar?
- ¿Qué pasa si hay dependencias circulares? No encontré (aunque puede que 
sí esté) ninguna colección que vaya almacenando los datos que van siendo 
guardados o cargados, como para que sea posible resolver ese tema de 
dependencias circulares.

Finalmente, después de resolver todo esto, lo que estaría bueno es, como 
estuve diciendo ayer, salirnos del ámbito del TP, y que para probar la 
persistencia usemos dos clases, tal que creemos dos objetos que se contengan 
mutuamente en sus atributos.

Original comment by [email protected] on 12 Jun 2011 at 6:06

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Ah, ya vi el HashMap en un método nuevaDesde. La cosa es que ese Map lo pueda 
consultar cualquier objeto al cargarse, y no que sólo sea visible en ese caso 
desde partida. Después al guardar es la misma historia, los objetos tienen que 
guardarse una sola vez, por lo tanto hay que tener también ahí un Map.

Original comment by [email protected] on 12 Jun 2011 at 6:15

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
- Hay métodos "guardar", y no veo ninguno que se llame "cargar".

>>> Tienen metodos static para recrear la clase, no se puede "generalizar" en 
una interfaz u otro lado

- Hay mezcla de idiomas.

>>> Si es por lo de dummy se aceptan sugerencias de como ponerlo en español

- Realmente tuve que mirar al 100% el código para poder entender más o menos 
qué hace cada cosa.

>>> Era una prueba, no tienen comentarios, es logico que pase esto.

- ¿Hace falta que cada objeto tenga un ID como atributo? Para mí de eso 
tendría que encargarse una clase de persistencia, y no tiene nada que ver con 
el objeto.

>>> Es lo mismo que si implementaran serializable que se les asigna un ID, sino 
es dificil mantener el recorrido sobre el grafo

- ¿No sería mejor excluir a la palabra "grafo" de nuestras mentes al guardar 
o cargar?

>>> La idea es que lo que se genere con las clases de persistencia sea un 
grafo, y que como la guarden/levanten sea independiente de eso, pero la 
estructura sea un grafo.

- ¿Qué pasa si hay dependencias circulares? No encontré (aunque puede que 
sí esté) 
ninguna colección que vaya almacenando los datos que van siendo guardados o 
cargados, como para que sea posible resolver ese tema de dependencias 
circulares.

>>> Ya con lo de jugador creo que queda ya resuelto lo de circularidad.

Original comment by [email protected] on 12 Jun 2011 at 6:24

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Ah, ya vi el HashMap en un método nuevaDesde. La cosa es que ese Map lo pueda 
consultar cualquier objeto al cargarse, y no que sólo sea visible en ese caso 
desde partida. Después al guardar es la misma historia, los objetos tienen que 
guardarse una sola vez, por lo tanto hay que tener también ahí un Map.

>>> A todos los objetos se les pasa el hash salvo a la partida porque la 
partida es unica, y hacerlo desde fuera no tiene sentido

Original comment by [email protected] on 12 Jun 2011 at 6:25

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
By Hige

Original comment by [email protected] on 13 Jun 2011 at 1:22

Attachments:

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Subo

Original comment by [email protected] on 13 Jun 2011 at 1:34

Attachments:

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Se va a implementar el resultado de todos.

Fin de la discusión.

Original comment by [email protected] on 13 Jun 2011 at 2:08

  • Changed state: Done

from fiuba-algo3-tp2.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 29, 2024
Ah recorde, alguien que se cope y pase en limpio la charla cortita que para el 
informe garpa mucho =P

Yo no lo digo, lo dice el apunte de continuiusbdasñadhb integration XD

Original comment by [email protected] on 13 Jun 2011 at 2:17

from fiuba-algo3-tp2.

Related Issues (14)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.