D
Dexter1997
Gast
Hallo Freunde der Sonne!
Ich möchte eine einfache Chatanwendung programmieren, um in die Netzwerkprogrammierung einzusteigen. Verwendet wird die Programmiersprache Java. Ich habe mir dazu folgendes Konzept überlegt:
Es gibt den Vermittler, also den Server, und die Clients.
Ein "Vermittler", wie ich ihn nenne und der der eigentliche Server ist, ist ein eigenständiges Programm, der Clients mitteilen kann, welche Clients mit ihm verbunden sind und die Anfrage eines Clients, mit einem anderen Client zu chatten, verarbeiten und die Kommunikation gewährleisten kann.
Der Client ist das Programm für den Benutzer, der mit den Serverteilnehmern chatten möchte. Der Client kann sich mit dem Server verbinden, den Server fragen, welche Kommunikationspartner zur Verfügung stehen, Nachrichten an den Server senden, wobei sich der Server um die Weiterleitung der Nachricht zum entsprechenden Client kümmert und die vom Server weitergeleiteten Nachrichten des verbundenen Chatpartners empfangen und darstellen kann.
Nun zu meinen Fragen:
1. Ist dies eine sinnvolle Struktur?
2. Bei einem simplen Program, dass eine Nachricht an einen Server schickt, der diese Nachricht einfach nur darstellen soll, ist das Problem aufgetreten, dass die Nachricht nicht vom Server empfangen wurde, sofern sich der Server irgendwo im Internet befand. Mir wurde gesagt, dass das Problem was mit dem Thema "Port-Forwarding" zutun hat. Ich habe das Gefühl, dass bei meiner Struktur dasselbe Problem wieder auftreten wird. Wie umgehe ich dieses Problem? Muss ich meine Struktur dafür grundlegend verändern?
Ich danke für alle Antworten!
Ich möchte eine einfache Chatanwendung programmieren, um in die Netzwerkprogrammierung einzusteigen. Verwendet wird die Programmiersprache Java. Ich habe mir dazu folgendes Konzept überlegt:
Es gibt den Vermittler, also den Server, und die Clients.
Ein "Vermittler", wie ich ihn nenne und der der eigentliche Server ist, ist ein eigenständiges Programm, der Clients mitteilen kann, welche Clients mit ihm verbunden sind und die Anfrage eines Clients, mit einem anderen Client zu chatten, verarbeiten und die Kommunikation gewährleisten kann.
Der Client ist das Programm für den Benutzer, der mit den Serverteilnehmern chatten möchte. Der Client kann sich mit dem Server verbinden, den Server fragen, welche Kommunikationspartner zur Verfügung stehen, Nachrichten an den Server senden, wobei sich der Server um die Weiterleitung der Nachricht zum entsprechenden Client kümmert und die vom Server weitergeleiteten Nachrichten des verbundenen Chatpartners empfangen und darstellen kann.
Nun zu meinen Fragen:
1. Ist dies eine sinnvolle Struktur?
2. Bei einem simplen Program, dass eine Nachricht an einen Server schickt, der diese Nachricht einfach nur darstellen soll, ist das Problem aufgetreten, dass die Nachricht nicht vom Server empfangen wurde, sofern sich der Server irgendwo im Internet befand. Mir wurde gesagt, dass das Problem was mit dem Thema "Port-Forwarding" zutun hat. Ich habe das Gefühl, dass bei meiner Struktur dasselbe Problem wieder auftreten wird. Wie umgehe ich dieses Problem? Muss ich meine Struktur dafür grundlegend verändern?
Ich danke für alle Antworten!