Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Dryken

#1
Después de bastantes horas he leido mucho, visto muchos videos y he probado con sobremesa y portátil y una vez que me ha andado la fórmula...me ha gustado el tema de usar:

- 1. Plugin Egit para eclipse junto con github
- 2. Por otro lado, usar egit para eclipse junto a google code (me ahorro generar la clave ssh, en github hay que sacarla)

Para el que le interese:

Tuto con Google Code    Parte 1   https://www.youtube.com/watch?v=52pQxk55PJM
                                       Parte 2   https://www.youtube.com/watch?v=ckwENS8uP94

Tuto con Github         https://www.youtube.com/watch?v=lUU-41xMMFw

Por lo visto con git se puede sincronizar por lo que no creo que sea necesario usar subversion para edicion en tiempo real. Corregidme si me equivoco ya que soy bastante ignorante en este tema de control de versiones.
#2
Vale Gh057 , llevo unas horillas puesto y me he dado cuenta que en estas horas atrás yo he sido un completo ignorante en cuanto a la diferencia de repositorios y sistemas de control de versiones. Ahora sé.

No entiendo como cosas tan básicas como estas no me lo han explicado antes en el ciclo formativo  :huh:

basickdagger pues no es mala idea para dividirnos la tarea, la verdad que como siempre he trabajado sólo me cuesta empezar a trabajar junto a otra persona, y me parece bien como podemos empezar :)

Por el resto de la instalación no preocupéis compañeros ya me encargo yo, lo que me faltaba era esa base teórica que no tenía y que estaba tan perdido.

Me pondré a ver tutoriales de git y ver que tal va. Me has ayudado mucho Gh057 y te lo agradezco.

Saludos compañero!  :)

Actualizo: Acabo de encontrar un plugin para Eclipse Egit (git = sw de control de versiones), por si alguien también le interesa probarlo. Ya os contaré.
#3
ivancea96, aver la idea es esa, poder organizarnos pero teníamos pensado poder trabajar en 2 pc´s al mismo tiempo. Me refiero, sin la necesidad de tornarnos en el mismo equipo, uno hace algo y luego el otro se cambia para continuar la tarea.

Gh057 me gustan tus ideas, la de conectarnos al pc del proyecto por ejemplo cuando trabaje desde casa con TeamViewer y la otra de sftp.

Llevo pensando un rato en lo que me has dicho de github, vale subo el codigo a github y mi compañero puede acceder a el, pero no se si es posible trabajar sobre él desde el propio github...

Tengo que replantearme si un repositorio es la mejor opción.
#4
Os cuento, el lunes comienzo las prácticas en una empresa en la cual yo y otro compañero crearemos una app en android para dicha empresa.

...y me pregunto como podríamos trabajar ambos al mismo tiempo sobre el mismo proyecto.

¿Puede alguien orientarme? Gracias de antemano.
#5
Wow!!! Novlucker eres increible, menuda ayuda la tuya, muchísimas gracias  ;-) ;-) ;-)

Seguro que me sirve. La implementación seguro que será complicada de por sí pero ya me las apañaré para que vaya como debe. No sabes cuanto te lo agradezco.

Bueno, pues me pondré a por ello, ya os doy un toque cuando consiga tenerlo todo bien. A ver si tranquilamente de aquí a mañana hay avances. Saludos!  :)
#6
TomaSs no te preocupes que si doy con la forma de conseguirlo lo compartiré por aquí pero por ahora no tengas mucha confianza en mi, llevo todo el día metiendole mano a este tema y no tengo forma de sacarlo.

kub0x que suerte que ya hayas pasado por este tipo de problemas, jaja lo que daría por estar en tu lugar,  y esa solución que comentas, cuando no te queda otra hay que ir a por lo básico  ;D

Aver os cuento,...Esto de la serialización es peor de lo que pensaba aunque eso ya lo imaginaba de antes.

Hasta ahora lo que he echo ha sido serializar un objeto y pasarlo a través de un networkstream. El caso es que creo que lo he conseguido pero en el momento que el cliente lo envia(serializa) y el server lo recibe(deserializa), el server se queda pillado, no reacciona pero el cliente si.

Me he basado de este ejemplo

Serializar

Código (csharp) [Seleccionar]
IPEndPoint ipe = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 5000);
NetworkStream net = new NetworkStream(new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp));
BinaryFormatter bf = new BinaryFormatter();
Bitmap bmp = new Bitmap(@"C:\imagen.gif");
bf.Serialize(net, bmp);
net.Close();


En el destino Deserializas el objeto:

Código (csharp) [Seleccionar]
BinaryFormatter bf = new BinaryFormatter();
Bitmap bmp;
bmp = (Bitmap)bf.Deserialize(net);
net.Close();


-----------------------------------------------------------------------------------------------------------------------
En este pequeño ejemplo se demuestra lo que quiero conseguir pero en el proyecto no me funciona :/

Código (csharp) [Seleccionar]
               
        Socket sC = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
        IPEndPoint ipC = new IPEndPoint (IPAddress.Parse ("127.0.0.1"), 6000); 

                int[] tableroJ1 = new int[5];
        tableroJ1[0] = 2;
        tableroJ1[1] = 5;
       
        NetworkStream net = new NetworkStream(sC);
        BinaryFormatter bf = new BinaryFormatter();
       
        try{
            bf.Serialize(net, tableroJ1);
        }catch (SerializationException e){
            Console.WriteLine("Failed to serialize. Reason: " + e.Message);
            throw;
        }finally{
            net.Close();
        }


Código (csharp) [Seleccionar]
               
        Socket sC = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
        IPEndPoint ipC = new IPEndPoint (IPAddress.Parse ("127.0.0.1"), 6000); 

                int[] tableroJ1 = new int[5];
        tableroJ1[0] = 2;
        tableroJ1[1] = 5;
       
        NetworkStream net = new NetworkStream(sC);
        BinaryFormatter bf = new BinaryFormatter();
       
        try{
            bf.Serialize(net, tableroJ1);
        }catch (SerializationException e){
            Console.WriteLine("Failed to serialize. Reason: " + e.Message);
            throw;
        }finally{
            net.Close();
        }
        Console.WriteLine("Pos 0 --> "+tableroJ1[0]);  // Mostrara un 2
        Console.WriteLine("Pos 1 --> "+tableroJ1[1]); // Mostrara un 5


También he leido por ahí que existe una clase remoting que podría hacer algo similar, no se si ayudaría a conseguir pasar un array por sockets...mira que es difícil  :-\

#7
Gracias, desconocía este tema de serialización, no sabía ni que existiese. Investigo y aver que consigo  :D
#8
Hombre, por el tema de tamaño no es que me preocupe mucho, sino el tema de organizacion y limpieza, son 48 líneas más por clase si lo hago de forma chapuza, en total 96 más unas 4 por envío ya que al enviar y recibir hace falta cifrar y descifrar a ASCII por carácter, vamos que 4 x 48 x 2(clases) = 384 líneas más de código, no merece la pena.

A ver si existe una solución más simple que evite tanto código.
#9
Estoy haciendo la v0.4 de mi juego de hundir la flota, la novedad es el modo online, por ahora va bien, he conseguido pasar cosas básicas como valores de variables pero me he quedado pillado en pasar el array de la posiciones de los barcos en el tablero lo cual no me deja por sockets.

Me preguntaba si habría otra forma por sockets de pasar un array.

Tengo en mente otra solución más cutre...pasar todas las posiciones del array una a una pero el array tiene 6 filas y 8 columnas...no es plan pasar 48 variables de un tablero y 48 de otro.
#10
Es increible tu trabajo compañero, hace poco estabas con scripting y ahora con VB, tu trabajo avanza a velocidades asombrosas. Buenísimo trabajo  ;-)

Cuando llegue a casa lo pruebo  :)