Ma question va peut-être vous paraître bète, mais peut-on faire des driver en java ?
Version imprimable
Ma question va peut-être vous paraître bète, mais peut-on faire des driver en java ?
- Pas uniquement en Java (du moins sur Windows)
- Il y a moyen de faire des drivers qui communiquent en C avec le système, mais ont une partie Java, à l'aide de JNI
- Mais c'est sans doute très compliqué et essentiellement inutile.
Il peut y avoir des exceptions. Si je ne dis pas de bêtises, les drivers JDBC sont en pur Java (on n'installe que des jars)
Je suppose que ces drivers utilisent des couches système de la JVM (TCP/IP, I/O etc.)
Donc si le driver que tu veux concocter peut se contenter de ce qui est disponible dans la JVM, cela devrait être possible.
C'est pour quoi faire ?
Une question qui m'est venu par la tête et sans réponse sur google.
Si je voulais en faire un, je devrais chercher où ?
Pour chercher il faudrait savoir à quoi va servir le driver.
Si c'est pour piloter un matériel spécifique (imprimante, lecteur de carte à puce ...)
il faudra faire comme thelvin l'a indiqué : une couche en C avec accès par JNI
-> recherche = comment apprendre le C en 5 minutes
Si c'est pour piloter quelque chose que tu peux atteindre en envoyant des ordres par une liaison série, TCP/IP alors tu peux rester en Java.
-> recherche = comment maîtriser java.io, java.net en 5 minutes
Si c'est pour utiliser JNI autant faire du C.
J'ai essayer de regarder un peu voir comment marche les driver sous linux ou windows mais cela m'a l'air très différent, alors je me disais, pourquoi pas quelque chose de compatible avec java
Justement, tu abondes dans mon sens non ?
au contraire. Java fournis l'abstraction, un driver utilise directement le hardware pour l'intégrer à l'OS. Il y a une claire contradiction :)