IIC2233 / syllabus-2021-1

Repositorio oficial del curso IIC2233 Programación Avanzada 🚀✨
https://iic2233.github.io
38 stars 49 forks source link

relación entre decodificar_mensaje y el resto del código #723

Open BValdes16 opened 3 years ago

BValdes16 commented 3 years ago

Prerrequisitos

(Marcar colocando una X entre los corchetes los ítems que ya hiciste, así: "[X]")

Duda

Hola, mi duda es qué ralación debe de tener la funcion decodificar_mensaje (o imagen) con el resto del código.

En primer lugar, es correcto que decodificar_mensaje es la función exactamente inversa de codificar mensaje? digamos decodificar(codificar(un_mensaje)) = un_mensaje

En segundo lugar, no entiendo como complementar la funcion decodificar_mensaje con el método .recv() que está funcionando en el cliente/servidor. Por lo que entiendo tendría que ir recibiendo el mensaje en chunks de tamaño adecuado y cuando ya tenga todos los bytes del mensaje ahí recién lo mando a decodificar. En ese sentido, necesitaría decodificar el largo y el tipo de mensaje "Afuera de la función decodificar_mensaje" ?

Tampoco entiendo qué utilidad podría tener en la tarea meter los numero de bloque en la mitad de nuestra codificación. Supongo que es solo para que mostremos que lo podemos hacer (?).

Gracias!

aerotecnia99 commented 3 years ago

Hola @BValdes16 ! Respecto a tu primera pregunta al codificar un mensaje y entregar el mensaje codificado a la función decodificar, esta última debe retornar el mensaje original. Por otro lado, respecto a tu segunda pregunta lo que debe ingresar a la función decodificar_X es un bytearray que contiene los bytes del largo, los bytes del color, bytes del número de bloque, y bytes de contenido. En este sentido, sí puedes decodificar el largo y tipo fuera de la función decodificar_X pero luego a esta misma debes entregarle el bytearray completo. En cuanto a tu última pregunta te invito a leer esta issue #702 . Éxito con la tarea! \(^-^)/