Salve94Roma
24-06-2017, 03:55
Mi servirebbe qualche chiarimento circa il JNI, l'interfaccia java nativa.
Sto studiando un pochino di java avanzato, e mi sono imbattuto nel JNI.
Ho vari dubbi, pensavo di fondere java e c\c++.
Quanto senso ha fondere codice C\C++ al java per creare metodi più efficienti?
Mi troverei un programma privo di portabilità !!!!
Allora mi chiedo, è utile solo per accedere alle funzioni specifiche di sistema operativo, tipo utilizzare i driver di un lettore di barre o una fotocamera o ha senso anche per creare parti di programma ad alta efficienza ?
Ad esempio posso realizzare 3 metodi distinti in c++, uno per Windows, uno per Linux ed uno per iOs e dire al programma principle in java, Se stai girando in windows usa questo, altrimenti .....
In pratica JNI può avere senso anche per poter realizzare il 99% una sola volta e compatible con tutte le piattaforme ed 1% di codice N volte, tante quante i sistemi operativi che voglio coprire con il mio programma ?
Mi fermo qui, in attesa di un primo chiarimento e poi eventualmente porrò altre domande alla corte e gentile attenzione.
Ringrazio anticipatamente chiunque mi aiuterà a chiarirmi le idee.
Sto studiando un pochino di java avanzato, e mi sono imbattuto nel JNI.
Ho vari dubbi, pensavo di fondere java e c\c++.
Quanto senso ha fondere codice C\C++ al java per creare metodi più efficienti?
Mi troverei un programma privo di portabilità !!!!
Allora mi chiedo, è utile solo per accedere alle funzioni specifiche di sistema operativo, tipo utilizzare i driver di un lettore di barre o una fotocamera o ha senso anche per creare parti di programma ad alta efficienza ?
Ad esempio posso realizzare 3 metodi distinti in c++, uno per Windows, uno per Linux ed uno per iOs e dire al programma principle in java, Se stai girando in windows usa questo, altrimenti .....
In pratica JNI può avere senso anche per poter realizzare il 99% una sola volta e compatible con tutte le piattaforme ed 1% di codice N volte, tante quante i sistemi operativi che voglio coprire con il mio programma ?
Mi fermo qui, in attesa di un primo chiarimento e poi eventualmente porrò altre domande alla corte e gentile attenzione.
Ringrazio anticipatamente chiunque mi aiuterà a chiarirmi le idee.