Dúvida!

[color=darkblue]:cry: Pessoal, :?:

Estou na maior dúvida!

Gostaria de saber como desenvolver um programa em Java que permita executar a seguinte situação:

Desenvolva uma aplicação em Java chamada Chat que instancie classes obedecendo às seguintes regras:

i. O chat é composto de Servidor, Clientes e Usuários.

ii. Cada Usuário possui os atributos nick (apelido) e sexo (M ou F).

iii. Cada Cliente possui um endereço IP, um Usuário e um Servidor vinculados a ele e sabe solicitar ao Servidor que estabeleça uma conexão passando as informações do nick e sexo do usuário e do seu endereço IP.

iv. O Servidor possui um endereço IP fixo e tem a habilidade de aceitar conexões de clientes.

v. Ao aceitar uma conexão o Servidor deverá armazenar o nick e o sexo do usuário mais o endereço IP do cliente passado como
parâmetro em um vetor interno conforme o seguinte exemplo: [?nick1:M:10.1.0.1?,?nick2:F:10.1.0.5?..] e em seguida retornar
uma mensagem ?Conexão estabelecida com sucesso!?, mas caso o IP do cliente não comece com o numero 10, o servidor não
deverá aceitar este cliente devolvendo a mensagem ?Conexão indevida! Seu IP não é válido!?

vi. A aplicação Chat deverá simular a criação de um Servidor com pelo menos 2 Clientes e 2 Usuários e tentar estabelecer as
conexões entre os clientes e o servidor exibindo as mensagens resultantes com comandos System.out.println.

Por favor me responda com certa urgência!

Desde já agradeço,

Caukym!!![/color]

cara… se vc nao tem experiência, vai sofrer um pouquinho.
dá uma estudada em socktes

se nao me engano, no livro do Deitel “Java como Programar” tem um exemplo simples disso.

abraços

Não acredito que soquetes sejam necessários. Pelo que percebi, é um exercício para fixação do básico.
O cenário de chat é só pra ilustrar a situação, mas na verdade ele vai ter que criar algumas classes que “simulem” tudo isso.
Classe Servidor, Cliente, Usuario com os atributos e comportamentos descritos ali.
Vão ser alguns relacionamentos simples, uns métodos pra gerenciar coleções e alguns prints… foi o que entendi.

Rapaz, o que você já tem pronto? Qual a idéia que você tem disso? Já criou as classes (Sabe fazer isso?)? Vai colocando pra gente as suas dúvidas que a gente tenta ajudar.

:wink:

Concordo com o amigo frocchagas é apenas um cenário fictício. Usa uma IDE como o NetBeans q vai facilita muito sua vida.

Espero ter ajudado.

Não é complicado. Se for uma simulação, monte os diagramas de classe, mapeie os atributos e métodos baseado nesse modelo descrito que escreveu e implemente. Abaixo segue algumas coisas que vi mais explicícitas no seu modelo e criei as classes que acho que precisa. Daqui para frente é com você. Se tiver alguma dúvida específica, volte a postar:

[code]package chat;

public class Usuario {

private String nick;
private char sexo;

public String getNick() {
	return nick;
}
public void setNick(String nick) {
	this.nick = nick;
}

public char getSexo() {
	return sexo;
}

public void setSexo(char sexo) {
	this.sexo = sexo;
}

}
[/code]

[code]package chat;

public class Cliente {

private String IP;
private Usuario user;
private Servidor server;

public String getIP() {
	return IP;
}

public void setIP(String ip) {
	IP = ip;
}

public Usuario getUser() {
	return user;
}

public void setUser(Usuario user) {
	this.user = user;
}

public Servidor getServer() {
	return server;
}

public void setServer(Servidor server) {
	this.server = server;
}

}
[/code]

[code]package chat;

public class Servidor {

private final static String IP_SERVIDOR = "XXX.XXX.XXX.XXX";

public void receberConexao(Cliente cliente) {
	//TODO Me implemente!
}

}
[/code]

É pq estou com uma dúvida, estou cursando no último semestre e tenho um pouco conhecimento, acima que eu passei é o exercício que vale ponto, rsrsrs…

Tentei instalar Netbeans 6.5, mas não consegui. Por isso fiquei sabendo agora que precisa instalar os 2 pacotes JDK + Netbeans, uuuuiiiii…