Ответы пользователя по тегу Go
  • Какие есть нормальные библиотеки для gui?

    gscraft
    @gscraft
    Программист, философ
    Языков с нативными (родными для языка, поддерживаемыми крупной компанией и/или авторами среды языка и/или ОС) UI-библиотеками мало. Неслучайно прошел бум Electron, Cordova, React Native, что и сейчас в ходу, наряду с перспективными Flutter и MAUI. До сих пор жив Qt, что долгое время был практически безальтернативен по ряду причин, прижившись на многих языках (в том числе несколько проектов для Go). Хорошо обстоит дело со своими UI на C/C++, C#, Java , где немало достойных решений, например, Compose, Avalonia или старожилы wxWidgets, GTK2+ и тот же Qt. Большая часть библиотек для других языков являются мостами, слоями для C/С++ библиотек. Для Go так же существуют прослойки, а «нативных» (на самом деле тоже слоев) решений для языка ничтожно мало и они любительские, едва ли подходящие для серьезных решений — разве что для каких-то своих узких задач. Решением остается прямой вызов инструментария ОС, вроде Win32 API, что едва популярно в наше время.

    https://github.com/go-graphics/go-gui-projects — есть сайты-сборники, где перечисляются многие библиотеки. Но придется изучать:
    • Имеющийся функционал, стабильность и удобство
    • Качество поддержки среды, есть ли обновления и перспективы
    • Наличие документации и сообщества


    — на что может уйти прорва времени на фоне решений на других языках. На мой взгляд, на сегодня, для UI одним из лучших вариантом будет C# , тем более если нужна кроссплатформенность. Хорошим выбором будут Electron / JS, Python / PySide, тем более если нужен быстрый прототип. Go — вряд ли, лично я ничего не нашел, свыше прослоек, но зачем тогда Go и трудности слабого сопровождения этих проектов? И да, в ряде случаев локальный сервер с HTML / JS — хорошее решение.
    Ответ написан