Portál AbcLinuxu, 30. dubna 2025 21:23
Na pristup k nejakym hroznym zdrojom ktore maju nepredvidatelne spravanie takze aj ten C/C++ bude mat nepredvidatelne (chybne) spravanie.Tak to ano, ale v takové situaci by se dělalo oddělení stranou i u nativních aplikací. Já využití vidím v přístupu k nativním knihovnám jako SQLite (bylo by hloupé to reimplementovat v Javě, ano, znám JDBC, je to jen příklad), Qt, GTK+, ffmpeg nebo různým platformně specifickým věcem (XVideo).
Take zamyslenie. Na co by som potreboval spustat nativny kod?Odpověď je naprosto triviální. Volitelná integrace s určitýma nativníma knihovnama/frameworkama. Konkrétní příklad z praxe? AddressBook.framework - volání jeho API z Javy je jednoduché a efektivní. Dvě otázky, kterými byste mohl oponovat: 1) Proč volat framework dostupný pouze na jednom OS? 2) Proč si nenapsat obdobnou funkcionalitu v Javě? Moje zdůvodnění bylo prosté. Proč ne, když je to k dispozici. Lépe tam ta aplikace zapadá a nebudu znovu vynalézat kolo. Při pečlivém a správném napsání nativního kódu (bez použití JNA) nebyl jediný problém. Uznávám, daný kód byl vcelku jednoduchý a moc šancí na chybu v něm nebylo. Nicméně z části to bylo dáno také volbou nativního jazyka Objective-C.
Ja nemam nic proti spustaniu Javy z C/C++Pokud jsem to pochopil zprávně, ta JNI pracuje přesně opačně - umožňuje použít C/C++ kod v Javě.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.