this post was submitted on 06 Jul 2023
28 points (100.0% liked)

Programming

17499 readers
16 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 1 year ago
MODERATORS
 

Title. Also I'm not talking about any specific frameworks, I am more interested in learning about different concepts. Eg. State management etc. Or MVVM/MVC/MVP/MVI

From my brief exploration I've found out that "Retained mode" GUIs is what I need to look into more as well.

I've tried making guis before, was only able to wrap my head around tkinter - when I tried web stuff it just didn't click no matter how hard I tried.

you are viewing a single comment's thread
view the rest of the comments
[–] rmam@programming.dev 5 points 1 year ago

On the topic of GUI programming, I feel it's of critical importance to understand a couple of basic concepts that have a fundamental impact on software architecture:

  • Application life cycle, and
  • Application states.

Both boil down to one fundamental mental model that is of critical importance for developing a GUI applications: a GUI app is a big state machine, which covers not only changes in the application life cycle (i.e. startup, shutdown by the user, shutdown by the OS, minimize a window, maximize it, move it to the system tray, online/offline,etc) but also in the application state (i.e., login, launch long running task, user opens dialog box, user changes settings, etc)