Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


dad:repasoparcial1

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
dad:repasoparcial1 [2023/11/09 10:04] – creado thejuanvisudad:repasoparcial1 [2023/11/09 11:13] (actual) thejuanvisu
Línea 9: Línea 9:
     * No se puede escribir en ambos extremos a la vez, tampoco se debe poder leer en los 2 extremos a la vez ya que podemos bloquear el programa (Ambos esperan a que el otro termine de leer)     * No se puede escribir en ambos extremos a la vez, tampoco se debe poder leer en los 2 extremos a la vez ya que podemos bloquear el programa (Ambos esperan a que el otro termine de leer)
   * ServerSocket: Esta clase se utiliza para un socket que quedará a la escucha como servidor, mientras que el otro socket se conectará a este como cliente.   * ServerSocket: Esta clase se utiliza para un socket que quedará a la escucha como servidor, mientras que el otro socket se conectará a este como cliente.
 +
 +===== Contenido parcial 1 =====
 +  - Preguntas pequeñas de teoría 2 a 3 puntos
 +    - Computación distribuida
 +    - Hilos
 +    - Sockets
 +  - Preguntas programación 1 a 2 Puntos
 +    - Detectar Fallos en el código
 +  - Práctica
 +    - Implementar un Cliente y un servidor con Sockets
 +    - El profe se va a inventar un protocolo/funcionalidad y hay que ver como se va a programar (Pensar)
 +    - Ver que respuesta dan el servidor a un comando de un cliente por sockets (Como el chat pero con Cases)
 +    - Server Socket -> While True, lanzo hilo
 +    - Si un cliente tiene un listado de algo que guarda en el objeto hilo
 +    - Los hilos comparten la información para estar centralizados
 +    - Conexión con otros hilos a través del serverSocket
 +<code>
 +constructor<x,y,z>{
 +  this.x = x;
 +}
 +run(){
 +  this.x
 +}
 +
 +</code>
 +
 +===== Sugerencias/consejos del profe =====
 +
 +  * Si pide un protocolo, en el cliente debemos tener como un menú de consola o meter cosas para usar el protocolo y que el cliente mande algo al servidor para que este ejecute lo que tenga que escribir
 +  * Construimos el servidor para el protocolo. El Servidor debe tener un Switch para que haga una acción en función a lo que reciba del cliente
 +  * El cliente debe ser de base un cliente vacío que tenga un readln y un flush (PW.println()), una secuencia de comandos seguidos, de tal forma que para probar el servidor solo tengamos que ejecutar el cliente (no es necesario meter los comandos manualmente).
 +  * Para cada comando o funcionalidad del servidor debemos ejecutar el cliente y meter algo por teclado, para evitar perder tiempo debemos ir metiendo todos los comandos que queramos ejecutar a machete.
 +<code> 
 +//Estructura del server en pseudocódigo
 +While True
 +  Creamos server socket
 +  Acepto conexión
 +  Creo Hilo
 +  Lanzo Hilo
 +  
 +</code>
 +
 +Utilizaremos una implementación similar a la del chat de clase (Multicliente)
 +
 +
 +
 +===== Para la práctica (Incompleto) =====
 +
 +<code>
 +public class ClaseAGuardar implements Serializable{
 +  private String campo;
 +  public String getCampo(){
 +    return campo;
 +  }
 +  public String setCampo(String campo){
 +    this.campo = campo;
 +  }
 +}
 +</code>
 +
 +<code>
 +public class EscribirEnFichero{
 +  public static void main(String args[]){
 +    FileOutputStream fos = null;
 +    ObjectOutputStream oos= null;
 +  }
 +}
 +</code>
  
dad/repasoparcial1.1699524292.txt.gz · Última modificación: 2023/11/09 10:04 por thejuanvisu