Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Komunikacja przez Ethernet

kapidt 07 Lut 2013 13:37 1410 4
  • #1 07 Lut 2013 13:37
    kapidt
    Poziom 8  

    Witam, mam do zrobienia projekt zaliczeniowy związany z programowaniem systemów czasu rzeczywistego. Środowisko to QNX Momentics. Silnik jest pisany w C++, i będzie się wykonywał w wirtualnej maszynie. Natomiast GUI ma być napisane w java 'ie. Jak to skomunikowac? Spotkałem się z socketami, ale nie wiem dokladnie jeszcze co to jest... Czy jest jakiś inny prostszy sposób?

    0 4
  • #2 10 Kwi 2013 18:58
    gitara61
    Poziom 10  

    Trochę mało informacji. Jeżeli w temacie zamieściłeś komunikacja ethernet to domyślam się, że jest to aplikacja klient-serwer, gdzie serwer jest napisany w C++ a klient w Java. W tym wypadku chyba najlepszą metodą komunikacji będzie zapisane komunikatów w formacie XML lub JSON i przesyłanie przez socket. Chyba, że lubisz utrudniać sobie życie to możesz wykorzystać takiego molocha jak CORBA.

    0
  • #3 11 Kwi 2013 00:00
    kapidt
    Poziom 8  

    hmmm wlasnie znalazlem socket-client napisany w javie i socket-serwer napisalem w cpp, ale nie moge ich skomunikowac... tzn nie znajduje mi jedne drugiego... nie wiem co moge robic zle, chyba ze wlasnie chodzi o konwersje danych, ktorej w zaden sposob nie robilem, a jezeli jest konieczna to jak ja zrobic?

    0
  • #4 11 Kwi 2013 01:16
    gitara61
    Poziom 10  

    Jedno jest pewne. Nie możesz przesyłać między java a cpp zmiennych typu np. int, bo mogą one być różnie kodowane lub mieć różne rozmiary. Jedyne dopuszczalne metody to ciągi znaków lub binarki. A żeby było łatwiej i przejrzyściej to warto skorzystać z XML.
    Tutaj masz jakieś info na temat obsługi xml w java.
    http://www.mkyong.com/tutorials/java-xml-tutorials/
    Podobne rzeczy można z pewnością znaleźć dla cpp.

    Jak to realizować w kodzie na soketach nie wiem, bo dawno tego nie używałem, ale jak się czegoś dowiem to dam znać.

    Przy testach może też przeszkadzać antywirus i firewall, dlatego lepiej je wyłączyć na czas testów.

    0
  • #5 11 Kwi 2013 10:04
    kapidt
    Poziom 8  

    ok dzieki, napewno skorzystam. co do firewalla i natywirusa to pozmienialem cos tam w ustawieniach zgodnie z tym co znalazlem w siecie, port przez ktory maja sie komunikowac tez ustawilem na najprawdopodobniej nieuzywany (moglem zapomniec o czym co mi go blokuje, ale watpie) w kazdym razie dzieki

    0