java

Brieana 2020-05-21T21:40:36.002Z

Hey Java folks!

Brieana 2020-05-21T21:40:42.002200Z

Quick clarification question

Brieana 2020-05-21T21:41:18.002800Z

How different is using java on the frontend for desktop or mobile applications the same, or different as using it for the backend for web applications?

seancorfield 2020-05-21T22:39:19.006900Z

@brieana.noel I saw that phronomorphic/Adrian responded in #clojure but since no one else has, I figured I'd expand on his answer a bit. For desktop apps, you're going to end up using Swing or JavaFX for the UI (those are the two biggest UI libraries I know about) and they both definitely take a bit of effort to learn, but overall the experience building backend apps and desktop apps in Java is going to be about the same. For desktop apps, you'll want to look at some packaging tools that take "uberjar" versions of Java apps and turn them into turnkey installers or native apps for distribution (you can just double-click a JAR to run a desktop app if you've already got Java installed -- so it really depends on who your target audience is for this app: consumers or developers?).

seancorfield 2020-05-21T22:41:25.009200Z

For mobile applications, things are bit more restricted. You'd be targeting Android only I believe so there's a UI library/framework for that and the toolchain has a number of additional steps over regular backend Java development (the bytecode needs to be converted to run on Android and there are specialized tools for emulation, debugging, packaging and so on -- and if you want your app in the Play Store then you have a bunch of additional hoops to jump through).