76

Sorry for the somewhat noob question, but how do you pick a library for making a GUI for your apps? My background is in physics, so most of my programming is perfectly find with a CLI that outputs a graph as a ps file or some csv. I am looking to learn about making some neat little GUIs. I was thinking it would be a good idea to try and build my GUI out of the browser so that my app can be as portable as possible, but does this mean it has to be in Javascript or can the backend be done in anything else?

I am not really sure what I am asking, but wanted to get a feel for how people approach front ends.

Thanks :)

you are viewing a single comment's thread
view the rest of the comments
[-] GissaMittJobb@lemmy.ml 6 points 3 months ago

Understand what tradeoffs different solutions make, then inform your decision on that. A fairly general principle for example is that the more cross-platform compatible a solution is, the less well-suited it will be for any given platform in terms of looks/behavior/performance. This may or may not matter for what you're building.

There are inherent qualities to some solutions (for example, a particular library may make for good solutions on a certain platform), and some qualities will be situational (a particular library is good for you because you happen to know the language/patterns/framework/whatever).

I personally like to build things in Kotlin and Jetpack Compose, but that's because I primarily build mobile apps for Android and I like the reactive UI paradigm that underpins this library along with the language that it's written in. I would perhaps reconsider if I were building a desktop app (not as well supported), and definitely reconsider if I were building a web app (definitely a poor fit).

So yeah, start with what you're building and what its requirements are. Then think about what you already know, and finally put those together when evaluating a UI solution.

[-] InternetCitizen2@lemmy.world 1 points 3 months ago

So yeah, start with what you're building and what its requirements are.

It would be desktop. I mostly want to add front end to some stuff I would CLI to round out my skills. I've not seen much about Rust and GUI framework. I've got some Java experience, but read that its native Java FX is deprecated now. I've done a lot in Python, but also want to start learning a language that might be more suited to enterprise work. I honesty am not sure were I'm at. But thanks for your answer

[-] GissaMittJobb@lemmy.ml 1 points 3 months ago

Wanting to learn is a good requirement in itself.

Try starting with the language and then see what you can make of it in that case. You may find out that it's not exactly viable, but then you can always try something else.

this post was submitted on 21 Sep 2024
76 points (100.0% liked)

Programming

17691 readers
253 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS