Serwer w c, klienci w java, czy to trudne ?

Serwer w c, klienci w java, czy to trudne ?
0

Cześć, musze wybrać projekt na sieci. W programowaniu najlepiej czuje się w javie, ale wykładowca nie pozwolił używać samej javy do projektu, mogę zrobić klientów w javie a serwer musi być w innym języku np. w C. Dopiero robie rozeznanie w temacie więc chce poznać waszą opinię

Czy komunikacja między c/c++ a javą jest problematyczna ? Czy lepiej po prostu zrobić wszystko w tym C ? Powiedzmy że chce zrobić jakąś gre karcianą na 3-4 graczy i gdy klient nagle się odłączy musi zostać to wychwycone przez serwer.
Pozdrawiam

VI
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 11 lat
  • Postów:212
0

Nie powinno być, Java stosuje się do standardów protokołu UDP (którego powinieneś użyć), a że każdy pakiet to nagłówek+dane bez żadnego połączenia to nie powinno być żadnych kłopotów.

Sarrus
Do gry karcianej nie powinien używać UDP. Prędzej TCP.
Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:24 minuty
0

Możesz wykorzystać Protocol Buffers do wymiany danych pomiędzy JVMem, C++ i Pythonem: http://code.google.com/p/protobuf/

Wykładowcy chodziło o język Java czy platformę Java? Bo jeśli chodziło tylko o język, to możesz użyć dowolnego innego języka na JVM, np Scalę. Zrobienie sieciowej gry karcianej za pomocą http://akka.io/ powinno być proste.

A do GUI możesz wykorzystać JavaFX.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit
Kerai
  • Rejestracja:ponad 16 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:London
0

Java stosuje się do standardów protokołu UDP (którego powinieneś użyć)

Lol, tu nie ma się do czego stosować... i nie, nie powinien używać UDP.

ZJ
Oczywiście, że należy używać UDP. Przecież będzie tragedia jak przez użycie bardziej abstrakcyjnych protokołów opóźnienie od zagrania karty przekraczać będzie 50 ms.
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
0

Wy chyba żartujecie. Serio myślicie o surowych socketach? o_O Ja bym tu jednak użył CORBy albo ICE'a które są do tego stworzone ;]


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
0

Tak, CORBA jest super! Jeeeeej.
Powaznie mowisz?

Shalom
Nie korzystałem z corby w C++, ale w aplikacji java<->python i spokojnie dało się to zrobić. Gdybym chciał coś takiego napisac na socketach to bym chyba osiwiał...
0

Ja z kolei mam bardzo zle wspomnienia... Ale pewnie kwestia gustu.

Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:około 18 godzin
0

Korba jest przekomplikowana. Ja bym stawiał na zwykłe sockety TCP/IP i przesyłanie danych o określonym formacie.

lipkerson
  • Rejestracja:ponad 17 lat
  • Ostatnio:ponad 2 lata
0

A ten ICE - niech się ktoś szerzej wypowie: jak trudne to jest i doświadczenia. Pierwszy raz o tym usłyszałem i ciężko coś znaleźć.


Another jam from the world for the jam from the voices of the world......
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
0

ICE -> http://www.zeroc.com/ - komercyjna technologia, ale darmowa do niekomercyjnych zastosowań. Znacznie wygodniejsza od CORBY i jednocześnie ma większe możliwości (na przykład komunikacje asynchroniczną). Dokumentacja jest dość sensowna :)
Zasada działania jest dość zbliżona do CORBY -> też mamy pliki z opisem interfejsów (zamiast IDL jest tutaj Slice) które kompiluje się do wybranych języków programowania.


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.