4 ms·
Is this native as in "not web" or native as in actually using native text entry and scrolling widgets? There is quite a huge difference as the Java world discov
by fidotron 1y ago
Is this native as in "not web" or native as in actually using native text entry and scrolling widgets? There is quite a huge difference as the Java world discovered.
- nu11ptr 1y agoPretty sure native as in "not web". AFAIK, everything is drawn using the various GPU APIs (GPUI started with Metal on macOS, for example).
- mdhb 1y agoSame model as Flutter which is a million times more pleasant to write and mature at this particular use case which I don’t actually think Rust is well suited to generally speaking.
- nicoburns 1y agoRust's definitely well-suited to writing the low-level infrastructure pieces (the implementations of the renderer, layout, text, etc). You really want something with fast and predicatable performance there. Whether it pans out for writing actual applications we'll have to see, but a lot of big popular applications are written in C++ which is surely less suitable.
- keyle 1y agoI write both swiftUI and flutter daily. I think SwiftUI is the winner if we're going to put names forward. But arguably, not cross platform. But in terms of language adaptability for UI, Swift is king.
- mdhb 1y agoI would say the opposite and it sounds like a personal preference at which point I think lack of cross platform compatibility ceases to anything else other than a major major problem.
- keyle 1y agoI didn't explain myself well. The point I was trying to make is the language of Swift is far more flexible than Dart. And in terms of UI implementation, it then looks a lot more like a DSL. Because () are optional and a function call can look like this Button { stuff }. Meanwhile in dart, it's lines, and lines and indentation of 2 because it becomes a massive manuscript. I hope that makes more sense.
- saghm 1y ago> I think SwiftUI is the winner if we're going to put names forward. But arguably, not cross platform. I must have a very different understanding of the word "arguably" than you. To me, it's arguable whether Swift itself is a viable cross-platform language today. SwiftUI, on the other hand, supports literally zero devices not manufactured by Apple. Is it really arguable that when people say "cross plaform" when referring to a GUI framework, they aren't counting "both macOS and iOS, but not any of Windows, Android, Linux, web"? It might be accurate from an pedantic standpoint, but I have trouble imagining a context where someone would bother using that phrase as a qualifier if they understood it that broadly.
- written-beyond 1y agoYeah but sometimes you don't want to write connectors between high performance code and convenient to use UI code. I welcome this, I want to write cross platform lightweight UI applications without going to C or C++.
- hsn915 1y agoI think it's native as in "native executable". GPUI is not "native OS widgets".
- meindnoch 1y agoNative as in "not web". No OS integration.
- _bent 1y agomacOS is the only OS you can write native applications for. On Linux there are with GTK and QT two different GUI frameworks that could be considered native on some distros. And on Windows there are so many different frameworks and approaches used by MS for the shell that even a Webview could be considered native
- pjmlp 1y agoWin32 is the native way, MFC and Windows Forms build on top Win32, UWP is also native as thin layer above Win32 and COM (with some extras). WPF is managed, only uses a bit of Win32 and DirectX 9, everything else is rendered by itself.
- _bent 1y agoAccording to Microsoft WinUi3 and WinUi2 are also native https://learn.microsoft.com/en-us/windows/apps/winui/ https://learn.microsoft.com/en-us/windows/apps/winui/
- pjmlp 1y agoNaturally, they build on top of UWP. There are some details on what that exactly means, but I am on the go for lengthy comments.
- aryonoco 1y agoNone of which is used by for example the Office team, which maintains their own UI Framework just for Office. Which itself is not used by Teams, which uses electron/WebView2, even though Teams is part of Office. And let’s not forget about MAUI, which has its own components and UI library, which as far as I know is not used by anyone at Microsoft. And I’ve heard from people at Microsoft that the future story of .NET UI framework is “Blazor WASM”. Is that considered native? Probably not. But I’d argue it should be considered “first party”. Let’s be honest, Microsoft’s UI framework landscape is a mess.