Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  C++ projekt - Java programmide manipuleerimine C++'st märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
Bssldr
HV kasutaja

liitunud: 05.12.2009




sõnum 06.04.2011 20:24:11 C++ projekt - Java programmide manipuleerimine C++'st vasta tsitaadiga

Mõtlesin, et näitaks oma C++ projekti, millega olen paar päeva tegelenud. Pole veel muidugi täiesti valmis, aga näidata vast kõlbab. Tegemist on C++ teegiga, mis lubab otse C++'st Java programme manipuleerida. Hetkel loob teek ise JVM'i ja laeb sinna klassid sisse. Järgmine etapp oleks lisada võimalus, mis lubab hookida JVMi külge, mis juba eelnevalt töötab.

Vaevalt, et keegi viitsib ilma dokumentatsioonita ise katsetada, seega jagan videot. 720p ja fullscreen on vaatamiseks vajalik.


Link
Kommentaarid: 9 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 8
tagasi üles
vaata kasutaja infot saada privaatsõnum
serk
HV kasutaja

liitunud: 24.05.2003




sõnum 06.04.2011 22:24:24 vasta tsitaadiga

Väga tore ja iseenesest äge vidin, aga ma hetkel ei näe eriti rakendust sellele.

Selline lähenemine on vastuolus heade tarkvara arenduse praktikatega. Käesoleval hetkel integreerid sa 100% kaks komponenti, mis peaksid olema üksteisest lahus. Lisaks ei kujuta ette funktsionaalsust, mida ei saa C lahendada ilma Java abita.

Miks ei võiks sa läbi environmendi lihtsalt jaris olevaid interface meetodeid executida, kui isegi ongi mingi X põhjus C softile jar külge pookida, ja ongi kõik? Hetkel tundub ikka jube häkk olevat lihtsa java käsu käivitamiseks süsteemis, mida üldiselt kasutatakse.
Kommentaarid: 8 loe/lisa Kasutajad arvavad:  :: 1 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum
Bssldr
HV kasutaja

liitunud: 05.12.2009




sõnum 06.04.2011 22:36:56 vasta tsitaadiga

serk kirjutas:
Väga tore ja iseenesest äge vidin, aga ma hetkel ei näe eriti rakendust sellele.

Selline lähenemine on vastuolus heade tarkvara arenduse praktikatega. Käesoleval hetkel integreerid sa 100% kaks komponenti, mis peaksid olema üksteisest lahus. Lisaks ei kujuta ette funktsionaalsust, mida ei saa C lahendada ilma Java abita.

Miks ei võiks sa läbi environmendi lihtsalt jaris olevaid interface meetodeid executida, kui isegi ongi mingi X põhjus C softile jar külge pookida, ja ongi kõik? Hetkel tundub ikka jube häkk olevat lihtsa java käsu käivitamiseks süsteemis, mida üldiselt kasutatakse.


Tegelikult on asi nii, et kunagi kirjutasin erinevatele Java mängudele botte, Javas muidugi, kasutades siis BCEL'i ja reflectionit. Nüüd mõtlesin, et võiks kirjutada valmis teegi, mis lubaks mul C++'is sama asja teha. Tavalise tarkvara arenduse puhul sellest teegist tõesti erilist kasu pole.
Kommentaarid: 9 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 8
tagasi üles
vaata kasutaja infot saada privaatsõnum
Ho Ho
HV Guru
Ho Ho

liitunud: 16.02.2002




sõnum 06.04.2011 22:48:25 vasta tsitaadiga

Ehk siis sisuliselt kirjutasid JNI'le wrapperi. Mida su wrapper paremini teeb kui otse JNI kasutamine? Pealtnäha kood küll eriliselt lihtsamaks ei läinud.

Üks rakendus oleks sel olnud mul praegu pooleli olevas projektis kus keegi kavalpea otsustas, et kõige parem draiveri kirjutamise viis on see valmis kirjutada Javas. Mitte just kõige parem kui projekt ise on C++'s icon_smile.gif
Kas tolle wrapperi sees lahendatud meetodite-klasside puhverdamine või kas igal funktsiooni väljakutsel küsid neid JNI kaudu uuesti Javalt?
Kuidas on asja töövõimekus multithreaded progemise korral (Java funktsioone kävitatakse mitmest paralleelsest threadist)?
Kuidas on lahendatud ressursside vabastamine just taas mitme threadiga majandamise puhul?

Muidu toda koodi nähes on küll mulje, et üleliigset koodi ning üsnagi low-level minekut on rohkem kui oleks vaja kasutajale välja näidata. Too meil praegu kasutuses olev JNI wrapper on oluliselt lihtsama ehitusega ning tänu sellele ka jupp maad robustsem.

_________________
Teach a man to reason and he'll think for a lifetime
Common sense - so rare that it's a damn superpower
Vaadates paljude inimeste sõnavõtte siin ja mujal jääb üle ainult klassikuid tsiteerida - "I weep for humanity"
Kommentaarid: 106 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 86
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Bssldr
HV kasutaja

liitunud: 05.12.2009




sõnum 06.04.2011 23:09:38 vasta tsitaadiga

Ho Ho kirjutas:
Ehk siis sisuliselt kirjutasid JNI'le wrapperi. Mida su wrapper paremini teeb kui otse JNI kasutamine? Pealtnäha kood küll eriliselt lihtsamaks ei läinud.

Üks rakendus oleks sel olnud mul praegu pooleli olevas projektis kus keegi kavalpea otsustas, et kõige parem draiveri kirjutamise viis on see valmis kirjutada Javas. Mitte just kõige parem kui projekt ise on C++'s icon_smile.gif
Kas tolle wrapperi sees lahendatud meetodite-klasside puhverdamine või kas igal funktsiooni väljakutsel küsid neid JNI kaudu uuesti Javalt?
Kuidas on asja töövõimekus multithreaded progemise korral (Java funktsioone kävitatakse mitmest paralleelsest threadist)?
Kuidas on lahendatud ressursside vabastamine just taas mitme threadiga majandamise puhul?

Muidu toda koodi nähes on küll mulje, et üleliigset koodi ning üsnagi low-level minekut on rohkem kui oleks vaja kasutajale välja näidata. Too meil praegu kasutuses olev JNI wrapper on oluliselt lihtsama ehitusega ning tänu sellele ka jupp maad robustsem.


Tegelikult JNI ja JVMTI, antud videos muidugi JVMTI poolt ei demonstreerinud. Puhverdamine on olemas. Multithreadingu jõudluse koha pealt ei oska hetkel kommenteerida.
Kommentaarid: 9 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 8
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  C++ projekt - Java programmide manipuleerimine C++'st
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.