aplikacja sieciowa

0

Witam.
Napisałem grę UNO desktopową z GUI jednak potrzebuję pomocy w następującej kwestii:

  1. Gra musi działać sieciowo, czyli do gry może przystąpić 3 osoby. Jakim najprostszym sposobem mogę stworzyć komunikację sieciową albo jakich technologii użyć aby gra działała sieciowo?
0

Sieć lokalna czy internety?
Jeśli to pierwsze to najłatwiejsze będą Sockety i ServerSockety (ewentualnie ServerSocketChannel, ale to już troszkę trudniejsza zabawa).
Jeśli drugie to jakaś aplikacja webowa (chyba), tylko wtedy nie wiem jak z GUI

0

Czy w aplikacji desktopowej również można użyć WebSocket? Większość informacji jakie znalazłem to aplikacje webowe z wykorzystaniem tej technologii.

0

Z tego co przegrzebałem internet to można, natomiast nie wiem czy to nie przesada do takiej aplikacji, ale to nie mnie oceniać. Tutaj powinien wypowiedzieć się ktoś bardziej doświadczony.
@scibi92 może coś podpowie? Starszyzny nie wołam, sama się pojawi ;)

0

Nie widzę przeciwwskazań do tego, aby użyć websocketów w dowolnej aplikacji w javie niezależnie od tego, czy jest ona webowa, desktopowa, konsolowa lub inna.
Znalazłem fajny artykuł na ten temat z przykładami: http://cs.lmu.edu/~ray/notes/javanetexamples/.

0

@wiciu: Chyba nie mówimy o tych samych socketach...

Even though they achieve (in general) similar things, yes, they are really different. WebSockets typically run from browsers connecting to Application Server over a protocol similar to HTTP that runs over TCP/IP. So they are primarily for Web Applications that require a permanent connection to its server. On the other hand, plain sockets are more powerful and generic. They run over TCP/IP but they are not restricted to browsers or HTTP protocol. They could be used to implement any kind of communication.

source

0

Racja, użyłem terminu WebSocket i one chyba rzeczywiście mają zastosowanie głównie w aplikacjach webowych, ale przykłady z podlinkowanego artykułu dotyczą zwykłych Socketów, a one już mają szersze zastosowanie i powinny zadziałać w apce desktopowej.

0

Websockety sa głównie wykorzystywane w aplikacjach webowych. Ale tak na wszelki wypadek że te aplikacje sa uruchamiane w przeglądarce która jest aplikacją desktopową :)
Nic stoi na przeszkodzie skorzystania z websocketów w JavaFX czy Swingu
Natomiast wydaje mi się że lepiej zastosowac zwykłe sockety

0

Jak wyżej.
Websockety można wykorzystywać i robi się to w aplikacjach poza web, potencjalnie łatwiej przebrnąć przez firewalle, ale nie polecam jeśli się uczysz. Dodatkowo z websocketami w javie jest ten problem, że 80% przykładów dotyczy wykorzystania ws pod serwerami java ee lub w springu. A to Ci tylko zamota. Zwykłe Sockety (java.net) są łatwiejsze i przyjemniejsze w nauce.

0

Dzięki za podpowiedz. Udało się połączyć Socketami. W trakcie pisania napotkałem kolejny problem. Mianowicie potrzebuję odświeżać planszę gry. Wie ktoś czy istnieje jakaś metoda która odświeża stan gry?

0

Przerysuj wszystko? :)

0

Możesz rozwinąć myśl?

1 użytkowników online, w tym zalogowanych: 0, gości: 1