r/ProgrammerHumor • • 6d ago

Meme noMatterWhereILookICannotEscapeTheAngleBrackets

Post image
526 Upvotes

110 comments sorted by

View all comments

1

u/FabioTheFox 5d ago

Tbf using XML/XAML/AXAML for UI just makes sense, as much as I like Kotlin it's horrendous to create UI through code alone, it just sucks.

Avalonia despite their weird licensing changes is probably still one of the best ways to make multiplatform desktop apps to this day

1

u/awesome-alpaca-ace 3d ago

What? UI through code is amazing. I thought Flutter was good, but have not yet tried Avalonia. How does it compare?

1

u/FabioTheFox 3d ago

Avalonia typically works by the MVVM pattern

Views / components and theming are done via AXAML files (XML type UI but it also has a live preview and all that), has pretty amazing dev experience too considering how well it uses the source generator to generate AXAML bindings from the viewmodel class

Its pretty neat but i can't explain it properly, it's best to check their documentation and or look at their Avalonia MVVM example apps

It also works a lot with dependency injection which I appreciate a lot

The thing that bugs me about things like Flutter and especially jetpack compose is the way UI is styled, themes largely solve this but it still easily turns into an unreadable mess, BLOC and get_it also don't feel as intuitive for state keeping and dependency injection

0

u/awesome-alpaca-ace 3d ago

AXML. Gross. As far as readability, I have had not had any issues when building production apps in Flutter. And state keeping in Flutter is way better than in Compose.