[C#/JAVA] AWT native interface

Pagina: 1
Acties:
  • 109 views sinds 30-01-2008
  • Reageer

  • lemmy
  • Registratie: Maart 2001
  • Laatst online: 20-09-2025
Het blijkt dat je sinds JDK 1.3 C++ en java samen in een programma kunt gebruiken.
Zo zou je dus allerlei berekeningen in C++ kunnen uitvoeren ( lekker snel :9 ) en het grafische gedeelte in java uitvoeren ( lekker simpel :9 )
Dat is dus de theorie, maar heeft iemand hier ook ervaring mee?

Ik denk er namelijk over om een spel te maken waarbij al het rekenwerk (AI e.d.) in C++ gedaan wordt, en dan met java getekend word. Het spel word ongeveer zoals dit, maar dan met een wat betere AI en misschien meer spelers

Mijn vraag is dus wat jouw ervaring met die native interface is...

hier is nog een link naar de java tutorial over native interfaces, voor als iemand er meer over wil weten.

Q: When he went, had you gone and had she, if she wanted to and were able, for the time being excluding all the restraints on her not to go, gone also, would he have brought you, meaning you and she, with him to the station?


  • Nikel
  • Registratie: Juli 2000
  • Niet online
Dat gaat toch nooit in een applet werken? Je zegt opzich niet dat je dat wilt maar toch iets om rekening mee te houden.

  • lemmy
  • Registratie: Maart 2001
  • Laatst online: 20-09-2025
het hoeft niet perse een applet te zijn

en het gaat er ook niet zozeer om dat het een goed spel wordt, maar gewoon voor mezelf om wat meer ervaring op te doen

Q: When he went, had you gone and had she, if she wanted to and were able, for the time being excluding all the restraints on her not to go, gone also, would he have brought you, meaning you and she, with him to the station?


  • Nikel
  • Registratie: Juli 2000
  • Niet online
Ik vraag me trouwens af of C# voor het doen van rekenwerk enzo significant sneller is dan java wanneer je de java met een goede compiler voor win32 compileerd. Lijkt me dat het snelheidsverschil juist meer op het grafische vlak een rol speelt. Maar er lopen hier mensen rond die dat vast beter weten :) .

  • lemmy
  • Registratie: Maart 2001
  • Laatst online: 20-09-2025
Een tijdje geleden hed ik een test gedaan om te zien hoe groot het snelheidsverschil is tussen java en c++, ik had een for lus die 1_en_nog_wat_nullen keer iets optelde, en dan gekeken hoe lang dat duurde, c++ was duidelijk sneller als java, wat c++ in 1 seconde deed, deed java enkele seconden over, ik weet niet meer precies hoe groot het verschil was, maar het was er wel.

Q: When he went, had you gone and had she, if she wanted to and were able, for the time being excluding all the restraints on her not to go, gone also, would he have brought you, meaning you and she, with him to the station?


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Ik heb pas in een vergelijking gelezen dat de huidige snelheid van C# in .NET ongeveer gelijk is aan die van Java 1.3. Het heeft dus niet zoveel nut als je nu suggereert naar mijn mening. Overigens is het ook zo dat JNI overhead veroorzaakt. Daardoor kan het weleens helemaal geen nut hebben. Je moet je eerst eens afvragen of Java wellicht niet snel genoeg is voor jou toepassing.

Over C# - Java. Volgens mij zijn hier nog geen voorzieningen voor. Toen JDK 1.3 uitkwam was bovendien C# nog geeneens een beta gereleased als ik me niet vergis :? . Bovendien kan ik me niet voorstellen dat Sun daar zo snel bij was >:) . Overigens kwam ik pas wel JNI voor Delphi tegen, dus wellicht dat een ander bedrijf / gebruiker op dit gebied iets gedaan heeft. Ik heb er echter nog niet van gehoord (ook niet gevonden op http://www.gotdotnet.com)

De combinatie van C# en Java is wel buitengewoon interessant, maar volgens mij is het op dit moment alleen mogelijk via C++. Als je echter toch informatie vindt over de combinatie van C# en Java via JNI dan hoor ik dat heel graag!

Hoezo trouwens AWT native interface :? :?

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op woensdag 13 juni 2001 14:03 schreef Nikel het volgende:
Lijkt me dat het snelheidsverschil juist meer op het grafische vlak een rol speelt.
Als je op native WinForms doelt moet je gelijk geven, maar ja dan heb je ook een GUI toolkit met een bagger design >:)

Als op DirectX, OpenGL en al dat gebla doelt vergis je je behoorlijk :) . Java had al goede 3D voorzieningen via Java 3D, maar met de opkomende JDK 1.4 met de nieuwe Java 2D rendering pipeline, full-screen support en het belangrijkste: de New IO API raast Java als een gek op game gebied. Dat had je niet verwacht he? >:)

Sun is met enkele partners (Sony o.a) bezig om Java de game wereld in te krijgen. Binnenkort komt er al een JVM voor de Playstation.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • lemmy
  • Registratie: Maart 2001
  • Laatst online: 20-09-2025
AWT native interface (new in JDK 1.3)

The AWT native interface allows a native C or C++ application a means by which to access native structures in AWT. This is to facilitate moving legacy C and C++ applications to Java and to target the needs of the community who, at present, wish to do their own native rendering to canvases for performance reasons. Standard extensions such as Java3D also require a means to access the underlying native data structures of AWT.
van hier heb ik dat AWT native interface, moet eigenlijk Java native interface zijn, maar kon de topic-naam niet veranderen :)

dit stukkie komt trouwens uit de include file jawt.h die staat normaal in jdk1.3/include/

C# is toch C++ of heb ik het nou verkeerd begrepen ?

Q: When he went, had you gone and had she, if she wanted to and were able, for the time being excluding all the restraints on her not to go, gone also, would he have brought you, meaning you and she, with him to the station?


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Op woensdag 13 juni 2001 15:04 schreef Lemmy het volgende:
C# is toch C++ of heb ik het nou verkeerd begrepen ?
Nee dat heb je heel erg verkeerd begrepen.
C# !!!=== C++.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Aangezien je dus C++ bedoelt nog even een antwoord op je vraag: dit kan al sinds de begin dagen van Java. Dit is namelijk de basis van de platform onafhankelijkheid van Java. Zaken die platform specifiek zijn (zoals AWT, Sockets e.d) wordt geimplementeerd in native methoden.

Als je dus JNI wilt gebruiken met C++ dan kan je je uitleven. Geen enkel probleem. Of je het moet doen, das een andere vraag :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • lemmy
  • Registratie: Maart 2001
  • Laatst online: 20-09-2025
Op woensdag 13 juni 2001 17:17 schreef mbravenboer het volgende:

Nee dat heb je heel erg verkeerd begrepen.
C# !!!=== C++.
oh, dan zal ik me posts ff aanpase

Q: When he went, had you gone and had she, if she wanted to and were able, for the time being excluding all the restraints on her not to go, gone also, would he have brought you, meaning you and she, with him to the station?

Pagina: 1