Projekt Zeitansage: Unterschied zwischen den Versionen
itawiki>Bakera (angelegt) |
K (16 Versionen importiert: Import) |
||
(15 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Projektinfo| Aufwand=12 | Teamgröße=1-2 | Schwierigkeit=mittel-schwer | Kontakt=[[Benutzer:Bakera|Herr Bakera]]}} |
{{Projektinfo| Aufwand=12 | Teamgröße=1-2 | Schwierigkeit=mittel-schwer | Kontakt=[[Benutzer:Bakera|Herr Bakera]]}} |
||
+ | [[Datei:Uhr.gif|rechts]] |
||
==Kurzbeschreibung== |
==Kurzbeschreibung== |
||
Zeile 5: | Zeile 6: | ||
Programmiere einen Server, der die aktuelle Uhrzeit an die Clients sendet. Programmiere einen Client, der die gesendete Uhrzeit empfangen und anzeigen kann. |
Programmiere einen Server, der die aktuelle Uhrzeit an die Clients sendet. Programmiere einen Client, der die gesendete Uhrzeit empfangen und anzeigen kann. |
||
+ | ==Aufgabenbeschreibung== |
||
− | == Projektgruppen == |
||
+ | [[Datei:Client-server.png|miniatur|rechts]] |
||
− | {| class="wikitable sortable" |
||
− | |- |
||
− | ! Name !! Vergabedatum !! Status |
||
− | |- |
||
− | | Dein Name || das heutige Datum || in Arbeit |
||
− | |- |
||
− | | Dein Name || das heutige Datum || in Arbeit |
||
− | |- |
||
− | | Dein Name || das heutige Datum || in Arbeit |
||
− | |- |
||
− | | Dein Name || das heutige Datum || in Arbeit |
||
− | |} |
||
+ | Bei diesem Projekt wird eine Anwendung aus zwei Komponenten aufgebaut werden: einem Client und einem Server. |
||
− | == Dateien/Links == |
||
− | * [https://www.lo-net2.de/link.php?files%7Cita11%40tbs1.nw.lo-net2.de%7C%2F1197%2CProjekttag%2F1230%2CProjekt+Zeitansage%7C/|Projekt Zeitansage] - Projektbeschreibung |
||
+ | Der Server ist eine Konsolenanwendung, die auf dem Port 4711 horcht. |
||
− | [[Kategorie:ITA Projekttag]] |
||
+ | |||
+ | Der Client ist eine GUI-Anwendung. Sie besteht aus einem Textfeld und einem Button. Beim Klick auf den Button verbindet sich der Client auf den Port 4711 des Servers. Sobald eine Verbindung zwischen Client und Server hergestellt wurde, sendet der Server die aktuelle Uhrzeit und das aktuelle Datum als Text an den Client. Der Client zeigt die empfangene Uhrzeit und das Datum in einem Textfeld an. |
||
+ | |||
+ | ==Meilensteine== |
||
+ | |||
+ | # Erstelle für den Server und den Client jeweils ein Projekt. |
||
+ | # Programmiere zuerst den Server. Er startet einen TCPListener auf dem lokalen Rechner auf der IP 127.0.0.1 auf Port 4711 und wartet auf eine Verbindung. |
||
+ | # (optional) Beim Start des Servers können der Port und die IP-Adresse als Kommandozeilenargument konfiguriert werden. |
||
+ | # Sobald eine Verbindung hergestellt wurde, fragt der Server die aktuelle Systemzeit über die Klasse DateTime ab. |
||
+ | # Der Server wandelt Datum und Uhrzeit für den Versand über das Netzwerk in ein Byte-Array um. |
||
+ | # Das Byte-Array wird über einen Stream gesendet. |
||
+ | # Programmiere nun den Client. Erstelle die GUI entsprechend den Anforderungen. |
||
+ | # Der Client baut eine Verbindung zum Server auf. |
||
+ | # Aus dem Stream der Verbindung liest der Client die gesendete Nachricht aus. |
||
+ | # Die empfangene Nachricht wird in der GUI ausgegeben. |
||
+ | # Teste das Programm. Führen Netzwerkprobleme zum Absturz des Programms? Funktioniert die Kommunikation auch zwischen unterschiedlichen Rechnern? Können mehrere Clients gleichzeitig auf den Server zugreifen? Wie viele sind es maximal? Halte die Ergebnisse in einer Dokumentation fest und korrigiere Fehler, die du hierbei noch entdeckst. |
||
+ | # Erstelle eine Dokumentation, die allgemein erklärt, wie man eine Client-Server-Anwendung programmiert. |
Aktuelle Version vom 24. Oktober 2020, 11:56 Uhr
Projektinformationen | |
---|---|
Aufwand (Ph) | 12 |
Teamgröße | 1-2 |
Schwierigkeitsgrad | mittel-schwer |
Ansprechpartner | Herr Bakera |
Projekttag |
Kurzbeschreibung
Programmiere einen Server, der die aktuelle Uhrzeit an die Clients sendet. Programmiere einen Client, der die gesendete Uhrzeit empfangen und anzeigen kann.
Aufgabenbeschreibung
Bei diesem Projekt wird eine Anwendung aus zwei Komponenten aufgebaut werden: einem Client und einem Server.
Der Server ist eine Konsolenanwendung, die auf dem Port 4711 horcht.
Der Client ist eine GUI-Anwendung. Sie besteht aus einem Textfeld und einem Button. Beim Klick auf den Button verbindet sich der Client auf den Port 4711 des Servers. Sobald eine Verbindung zwischen Client und Server hergestellt wurde, sendet der Server die aktuelle Uhrzeit und das aktuelle Datum als Text an den Client. Der Client zeigt die empfangene Uhrzeit und das Datum in einem Textfeld an.
Meilensteine
- Erstelle für den Server und den Client jeweils ein Projekt.
- Programmiere zuerst den Server. Er startet einen TCPListener auf dem lokalen Rechner auf der IP 127.0.0.1 auf Port 4711 und wartet auf eine Verbindung.
- (optional) Beim Start des Servers können der Port und die IP-Adresse als Kommandozeilenargument konfiguriert werden.
- Sobald eine Verbindung hergestellt wurde, fragt der Server die aktuelle Systemzeit über die Klasse DateTime ab.
- Der Server wandelt Datum und Uhrzeit für den Versand über das Netzwerk in ein Byte-Array um.
- Das Byte-Array wird über einen Stream gesendet.
- Programmiere nun den Client. Erstelle die GUI entsprechend den Anforderungen.
- Der Client baut eine Verbindung zum Server auf.
- Aus dem Stream der Verbindung liest der Client die gesendete Nachricht aus.
- Die empfangene Nachricht wird in der GUI ausgegeben.
- Teste das Programm. Führen Netzwerkprobleme zum Absturz des Programms? Funktioniert die Kommunikation auch zwischen unterschiedlichen Rechnern? Können mehrere Clients gleichzeitig auf den Server zugreifen? Wie viele sind es maximal? Halte die Ergebnisse in einer Dokumentation fest und korrigiere Fehler, die du hierbei noch entdeckst.
- Erstelle eine Dokumentation, die allgemein erklärt, wie man eine Client-Server-Anwendung programmiert.