Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Che cos'è un datagramma in java?

    Non riesco a capire cosa sia un datagramma in java e l'esempio che viene esposto oltre che incomprensibile non mi aiuta per niente :

    codice:
    // Demonstrate Datagrams. 
    import java.net.*; 
     
    class Esempio { 
      public static int serverPort = 998; 
      public static int clientPort = 999; 
      public static int buffer_size = 1024; 
      public static DatagramSocket ds; 
      public static byte buffer[] = new byte[buffer_size]; 
     
      public static void TheServer() throws Exception { 
        int pos=0; 
        while (true) { 
          int c = System.in.read(); 
          switch (c) { 
            case -1:  
              System.out.println("Server Quits."); 
              ds.close();
              return; 
            case '\r':  
              break; 
            case '\n': 
              ds.send(new DatagramPacket(buffer,pos, 
                 InetAddress.getLocalHost(),clientPort)); 
              pos=0; 
              break; 
            default: 
              buffer[pos++] = (byte) c; 
          } 
        } 
      } 
     
      public static void TheClient() throws Exception { 
        while(true) { 
          DatagramPacket p = new DatagramPacket(buffer, buffer.length); 
          ds.receive(p); 
          System.out.println(new String(p.getData(), 0, p.getLength())); 
        } 
      } 
     
      public static void main(String args[]) throws Exception { 
        if(args.length == 1) { 
          ds = new DatagramSocket(serverPort); 
          TheServer(); 
        } else { 
          ds = new DatagramSocket(clientPort); 
          TheClient(); 
        } 
      } 
    }
    Ultima modifica di giannino1995; 21-11-2013 a 00:04

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Non riesco a capire cosa sia un datagramma in java e l'esempio che viene esposto oltre che incomprensibile non mi aiuta per niente :
    Prima di vedere/capire codice di quel tipo (premesso che non l'ho nemmeno guardato nei dettagli per vedere se è corretto o meno) ...... cerca di capire la questione a livello teorico-concettuale.

    http://it.wikipedia.org/wiki/Pacchetto_%28reti%29
    http://it.wikipedia.org/wiki/User_Datagram_Protocol
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Non capisco niente, non puoi spiegarmi a parole tue cosa fa quel codice?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Non capisco niente, non puoi spiegarmi a parole tue cosa fa quel codice?
    Ma hai capito, a livello concettuale, cosa è un "datagramma"? Perché altrimenti non ha molto senso spiegarti il codice.

    Scusa la domanda: ma stai cercando di imparare Java? Hai già le basi sul linguaggio Java in sé? O devi ancora impararle?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    [OT]giannino ... stai aprendo una serie di thread su questo e quello, saltando qui e lì, senza criterio e senza un minimo di preparazione teorica ... così non serve a te né al forum ... [/OT]
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Sto leggendo un manuale di 1300 pagine di java e vengono affrontati un po' tutti i punti del linguaggio, vorrei avere un'infarinatura globale di questo linguaggio per poi imparare a creare siti dinamici, tutto qui. Da qualcosa dovrò ben partire, non ti pare!
    Ultima modifica di giannino1995; 21-11-2013 a 18:45

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    (premessa: quanto dirò non è certo per criticare o demoralizzare ... ci mancherebbe!)

    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Sto leggendo un manuale di 1300 pagine di java e vengono affrontati un po' tutti i punti del linguaggio
    Partiamo da questo: un manuale di 1300 pagine per chi inizia con Java ha (secondo me) poco senso. Certo, tratterà sicuramente un sacco di cose anche "oltre" il solo linguaggio. Ma è come se a uno che deve imparare a leggere gli venisse dato il libro Guerra e pace ....
    Neanche il libro "The Java Programming Language, 4th Edition" (che ho e che ritengo "IL" libro su Java) ha così tante pagine .... beh, ne ha poco più di 900 ma è praticamente focalizzato quasi interamente sul linguaggio .... non sulla API xyz, sulle applet, sul networking, ecc....

    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    vorrei avere un'infarinatura globale di questo linguaggio per poi imparare a creare siti dinamici, tutto qui. Da qualcosa dovrò ben partire, non ti pare!
    Certo ... ovvio che da qualcosa si deve partire! Ma dall'apprendere i concetti sul linguaggio Java in sé allo sviluppare web application in Java con tecnologie e framework "enterprise" ..... c'è un salto che non è certo "piccolo", anzi ....

    Se ieri ti ponevi dubbi su reti e IP, oggi poni questioni su applet e datagrammi e domani magari poni questioni es. su Swing magari portandoti ancora dietro dubbi e domande su reti o sulle applet ..... onestamente non so se (e nemmeno come) ci arrivi alle web application.

    E comunque se poni questioni su networking e applet io allora darei per scontato che hai perfettamente (almeno molto) chiari i concetti sul linguaggio Java, dalle cose basilari (identificatori, convenzioni ecc...) alle classi, interfacce (anche enum), ereditarietà, polimorfismo, override, overload, eccezioni ecc...
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.