Hi Jaroslav, In your article about java framework portability, I agree with you a 100%, and I'll add an important point, that sometimes we deal with low-level code, by using JNI/JNA, and this precise point makes java portability in front of a wall, I have learnt that from Limewire source code, in which we can notice that its really difficult to make a 100% java portable framework, due that each operating system had its own philosophy, and its own underlaying low-level librairies.
At the end, to have a fully portable framework, in front of eyes, this one should care on low-level code, because it's the only thing that will assure to us a higher portability of this framework. Regards Le jeu. 9 févr. 2023 à 05:39, Jaroslav Tulach <jaroslav.tul...@gmail.com> a écrit : > NetBeans isn't just an IDE, but it is a framework! > > When designing frameworks and libraries that shall be widely adopted it is > important to increase portability as much as possible. If an API can be > used > on different systems, different configurations, the amount of users > including > such API in their applications grows. > > The best way to hurt portability is to depend on a 3rd party API that > isn't > portable. Depending on Win32 API is one such example. Of course, writing > in > Java (a language designed to write once and run everywhere) greatly > increases > portability. However there is another axis hurting portability - the > supported > JDK version. Of course, should a library be widely used, it has to support > as > oldest JDK as possible. These days it is JDK8 - the primary reason being > that > Android supports JDK8 - as such, should a library be aspire to be used on > Android (as well as regular Java), it needs to stick to version eight. > Btw. > not that many years ago, Android only supported JDK6 and many libraries > had to > stay with JDK6 APIs and language. > > > Supporting the ancient JDK gives the application writers using such > library or > framework a freedom to choose their JDK. The application writers can then > run > on oldest or newest JDK. That's the kind of freedom they want. However > there's > transitivity of non-portability - the portability of the final application > cannot be bigger than portability of the least portable library used. This > applies also to 3rd party dependencies a framework or library has: again > their > non-portability may negatively affect portability of such framework or > library. > > I was my NetBeans libraries to be as portable as possible and also run on > Android. I want to use `Lookup` & co. > -jt > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org > For additional commands, e-mail: dev-h...@netbeans.apache.org > > For further information about the NetBeans mailing lists, visit: > https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists > > > >