Você pergunta e responde ao mesmo tempo, é !?!? :lol:
Os sockets servem simplesmente para mandar pacotes de informação pela rede, agora o tipo de arquitetura que seu sistema vai ter (client-server, peer-to-peer, etc) só depende da sua vontade e do seu planejamento…
O que você colocou sobre a implementação do chat de forma geral está correto (no sentido de que vai funcionar), só que é um pouco diferente do conceito de P2P.
No P2P a coisa acontece de uma forma mais descentralizada, não tem um servidor “mandando” e os clientes “obedecendo”. Os participantes trocariam mensagens diretamente entre si, ora assumindo o papel de servidor e ora o de cliente, e ninguém é mais importante que os outros.
Você pode colocar mais detalhes sobre o seu trabalho, que pontos exatamente você vai precisar entender melhor, que na medida do possível o pessoal vai ajudando…
Me dá uma explicação sobre esse seu código. Como funciona o processo de chat e principalmente como é a comunicação (chat) entre os clientes. Você se baseia no conceito P2P?
Valeu.
Raphael
ViniGodoy
É p2p?
A resposta é sim, mas é tão simples que não se compara as aplicações de p2p hoje em dia. Ele só é p2p pq estabelece comunicação entre 2 pontos (e apenas 2). Como eu falei, é um aplicativo extremamente simples, que foi feito só para mostrar como Sockets funcionam.
Já o chat em UDP é p2p também. Como o UDP dispensa conexão, é fácil fazer chats dessa forma. Entretanto, a pessoa precisa conhecer de antemão o endereço de quem ela quer se conectar, já que não existe um serviço de busca.