JCPP Project
Chacha Chacha
chachaparis at gmail.com
Fri Apr 10 12:48:00 UTC 2015
Hi John,
The listed project solve the following problem: I am a Java developer, I
need a C/C++ functionality that doesn't exist in Java how can I use it
The problem that I am trying to solve is different and the following.
Imagine a 30 years old financial software company. Initially it started
with C development and few developers. With time and success, they got more
market, more money, more developers, more millions of line of C code.
In the early 2000, Java becomes a serious technology for the front end and
the back end. So they decide to inject Java in their software, for the
front end and some few multi-threaded servers. Currently, 90% of their
software is developed with C/C++ with 200 developers, and 10% developed
with Java with few dozens developers.
The majority of developers and management would like to use Java, but
reality catches up.
In that context, it is very hard to say just rewrite everything from
scratch in Java.
Several strategies were tried with little success:
1. In pure C/C++ process call through jni Java methods. Not scalable,
hard to debug and maintain
2. Isolate some modules developed in C++ and redevelop them in Java
In that case, how process developed in Java and in C++ should call
each other?
Using different kind of RPC technologies, different kind of protocols.
None of tried solutions during the last decade was scalable and efficient
enough (Corba, SOAP, WebServices, REST, ProtoBuf, ...)
The bulk that is in C/C++ is forbidding them to have solutions where Java
is involved and has a bigger place in the product.
My approach was to say, among the C/C++ code, we can inject some Java
related technologies and concepts that will allow the following:
1. C/C++ developers willing to move to Java will be happy to have that
technology in their ecosystem as it is like Java
2. It is a step closer to shift everything to Java
3. Best way to implement interoperability between C/C++ and Java
I understand that I am describing a special case where the legacy code is
so important that it cant be redeveloped using Java.
We don't encounter such thing every day, only in big companies maybe...
It would be a pity if Oracle and the Java engineers don't take that into
account at certain moment.
Of course, tell me if something that I described is not clear.
More information about the jdk9-dev
mailing list