Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

They were and are written in all sorts of C++ flavours, including past C++11.

Reverse engineering is never an issue with Java if one actually uses the right tooling, commercial AOT compilers exisst since around 2000, it is a matter of buying them.

I assume JetBrains and Google are big companies.



Google where I works at is largely a C++ shop despite Android Java.

AOT compilers exists for Java, Net, Javascript. I however doubt the user experience of those.

For example, GraalVM mentions the following,

"There is a small portion of Java features are not susceptible to ahead-of-time compilation, and will therefore miss out on the performance advantages. To be able to build a highly optimized native executable, GraalVM runs an aggressive static analysis that requires a closed-world assumption, which means that all classes and all bytecodes that are reachable at run time must be known at build time. Therefore, it is not possible to load new data that have not been available during ahead-of-time compilation."


Not everyone is Google, and since you work there you are surely aware of tooling like Ghidra and IDA.

GraalVM is not what I would pick for AOT Java projects, there are other products since 2000.

In any case, this isn't a comparisasion of language bullet points.

Just because a software product has been migrated from C++ into Java, .NET or whatever language, it doesn't mean it is a sacrilege to keep some native lib around, which is exactly where all mainstream OSes are going, with C++ being left for the bottom layers.

How many desktop GUIs is Google shipping written in pure C++?


"In 2017, the Qt Company estimated a community of about 1 million developers worldwide[18] in over 70 industries."

See list of companies using C++ QT for GUI,

https://en.wikipedia.org/wiki/Qt_(software)


1 - Qt is not an OS SDK. Apparently you missed that part of my comment.

2 - Qt has been migrating away from pure C++, again you also missed pure from my comment, modern Qt applications are written in Qt Quick, a JavaScript dialect, with underlying components written in C++.

C++ Widgets have hardly changed since Qt 4, other than being updated to the underlying Qt infrastructure.


1. QT is cross platform.

2. QT not moving away from pure C++.

C++ apps always been more responsive than java swing and electron.


Again, read my comment, very carefully, then you migth get it.

Afterwards go learn how to create a GUI for macOS, iOS, Android, ChromeOS, Windows, WebOS (as shipped by LG) or even Fuchsia, using only their SDKs and nothing else.

As for Qt not moving away from pure C++, go use it with pure C++ on iOS, Android and embedded devices.

Maybe you will get it, but I am not so sure.


QT is not moving away from pure C++. QT using QML for front end now and for backend you have to use C++.

Please see this commend by Ivan,

https://www.reddit.com/r/cpp/comments/s0mhf/qt_5_moving_away...

> Afterwards go learn how to create a GUI for macOS, iOS, Android, ChromeOS, Windows, WebOS (as shipped by LG) or even Fuchsia, using only their SDKs and nothing else.

Why use native SDK when there is QT?

The same can be said for Java. Why use Swing when there is native SDK?

Ahahhaa

The way you treat C++ is unfair.


So you really don't get it.

Java is only part of Android OS SDK, you are the one bring Swing into the picture.

WHAT MAINSTREAM OS HAS QT ON THEIR SDK?


> How many desktop GUIs is Google shipping written in pure C++?

You mean apart from the Chrome browser?





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: