Фреймворки и библиотеки для кроссплатформенной разработки десктопных программ

    В этой статье я расскажу вам о некоторых самых популярных фреймворках, которые помогут вам при разработке программ для компьютеров под управлением Windows/MacOS/Linux. Если вы опытный программист, то вряд ли найдете в этой статье что-то новое для себя. Она скорее для новичков, которые ищут простое решение своей проблемы — быстрое написание хорошей (на сколько это возможно) кроссплатформенной программы.

    Что такое кроссплатформенная разработка?

    Что вообще из себя представляет кроссплатформенная разработка? Если вам нужно, чтобы ваше приложение работало сразу на нескольких операционных системах с минимальными затратами человеко-ресурса, то скорее всего вы прибегнете именно к этому. Вы разрабатываете одну программу, пишете один код, а он запускается на всех поддерживаемых платформах. Удобно! Но стоит различать кроссплатформенность и нативность.

    Если вкратце, то кроссплатформенность — это способность программного обеспечения работать с несколькими аппаратными платформами или операционными системами. Нативные программы в свою очередь пишутся для работы на определенной аппаратной или программной платформе. Из этого можно сделать вывод: если ваша программа будет работать с железом, то скорее всего даже в кроссплатформенной программе вам придется прописывать нативный функционал для конкретной платформы.

    В чем же преимущество кроссплатформенной разработки? Во-первых, вам нужно задействовать меньше людей (не нужно содержать DotNet разработчика, Swift/objective C разработчика и всех к ним прилагающихся), во вторых вы охватываете большее количество устройств -> больше людей смогут пользоваться вашей программой.

    Также подобный принцип не лишен недостатков — плохая нативность, оптимизация тоже будет хуже, чем у такой же программы написанной под конкретную платформу. Но иногда бывает такое, что вам очень нужно, чтобы ваше приложение поддерживало несколько платформ, но разрабатывать под каждую возможности нет. Тогда на помощь приходят уже созданные Фреймворки и технологии для разработки кроссплатформенных GUI. Вот некоторые из них:

    Electron JS

    Недавно я написал статью о том, как на Electron JS написать "Hello World". В комментариях поднялась дискуссия о "за и против" этой технологии. До сих пор очень многие разработчики ведут споры относительно того, стоит ли использовать Electron в своих проектах или нет. Electron JS — это JavaScript фреймворк, позволяющий вам написать полноценную программу используя Web Технологии — HTML & CSS, JS. Electron JS представляет собой движок Chromium в котором и исполняется весь ваш код. У Electron'a есть один, но достаточно серьезный недостаток — большое потребление памяти, как физической, так и оперативной. Всем давно известно, какой прожорливый Chrome, а мы на него еще своего кода хотим навесить. Но если посмотреть с другой стороны: сегодня многие популярные приложения написаны на Electron'e — Slack, Skype, Discord, VSCode, Atom, Postman, Insomnia и т.д. А с учетом непрекращающегося роста мощности компьютеров все реже приходится слышать от пользователей, что «ваш хром съел всю мою память». Высокое потребление памяти не будет играть большой роли если продукт будет хорош в своей сфере, будет грамотно написан код и распределены процессы

    Официальный сайт

    Плюсы

    • Использование наработок из Web

    • Просто найти (или "воспитать") специалиста

    • Качественная (и русифицированная) документация

    • Поддержка сообщества и GitHub

    Минусы

    • Высокое потребление памяти (физическая и ОЗУ)

    • Легко написать плохой код

    • Плохая нативность


    NW.JS

    Так же как и Electron, NW.JS позволяет вам создавать кроссплатформенные приложения с использованием Web технологий. Сегодня NW.JS Спонсируется компанией Intel, и разрабатывается сообществом. NW.JS не может похвастаться таким же богатым списком проектов как Electron, но это все равно очень хороший фреймворк для создания кроссплатформенных приложений. Так же как и Electron, NW.JS тащит за собой движок Chromium и все вытекающие из него проблемы. NW.JS очень похож по своему принципу на Electron, но все-же различия есть. Могу порекомендовать вам эту статью для ознакомления.

    Плюсы

    • Использование наработок из Web

    • Просто найти (или "воспитать") специалиста

    • Качественная (и русифицированная) документация

    • Поддержка сообщества и GitHub

    Минусы

    • Высокое потребление памяти (физическая и ОЗУ)

    • Легко написать плохой код

    • Плохая нативность


    Qt/QML

    Qt — очень мощный набор инструментов для создания кроссплатформенных приложений на языке С++ и Python (а также Ruby, PHP, C# и др. но они в отличии поддерживаются сообществом). Qt уже достаточно старый фреймворк, но он продолжает активно развиваться и на нем написаны такие программы как: 2ГИС для Android, Kaspersky Internet Security, Virtual Box, Skype, VLC Media Player, Opera и другие. Известное многим линукс-юзерам окружение рабочего стола KDE тоже написано с использованием Qt. Qt имеет среду разработки — Qt Creator, которая включает в себя Qt Designer с помощью которого можно создавать графический интерфейс. Визуальное создание интерфейса позволяет легко и просто создавать интерфейс, перетаскивая различные виджеты (выпадающие списки, кнопки, переключатели) на форму. Qt имеет обширную документацию, активную поддержку сообщества и множество других преимуществ.

    Официальный сайт

    Плюсы

    • Визуальный редактор интерфейса

    • Огромное количество модулей в составе фреймворка

    • Поддержка большого количества языков программирования (официально только Python и C++, остальные поддерживаются сообществом) -> хорошая нативность при грамотном коде

    • Низкий порог вхождения

    Минусы

    • Большой вес приложения

    • Высокая стоимость коммерческой лицензии

    GTK

    GTK на ряду с Qt является одной из самых популярных библиотек для кроссплатформенной разработки элементов интерфейса для X Window Systems. Разработан Gnome Foundation и GNU. С использованием этой библиотеки написаны многие окружения рабочего стола и оконные менеджеры (Gnome, xfce MATE, Cinnamon, AfterStep, Marco и многие другие), и программы, например: Chromium, FireFox, MonoDevelop, Gimp и другие. GTK написан на языке C, но существуют обертки для многих языков программирование (C, C++, Python, Java и другие). Gtk имеет конструктор для визуальной разработки интерфейсов - Glade

    Официальный сайт

    Плюсы

    • Поддержка большого количества языков

    • Большое и активное сообщество

    • Много популярных проектов и примеров

    • Визуальный редактор

    Минусы

    • Критичных минусов обнаружено не было (если у вас есть "проблемы" с Gtk - можете написать об этом в комментарии)


    Avalonia

    Достаточно молодой и активно развивающийся фреймворк для кроссплатформенной разработки, разработанный Стивеном Кирком и поддерживаемый .NET Foundation и сообществом. Avalonia позволяет создавать интерфейсы на основе XAML. Сама Avalonia основана на WPF/UWP. Код пишется на языке C#. Благодаря XAML Avalonia позволяет создавать гибкие и стилизованные интерфейсы. Имеет хорошую документацию, хоть и не большое, но очень приветливое рускоязычное сообщество.

    Официальный сайт

    Плюсы

    • Хорошая нативность (+поддержка системных декораций)

    • Активное и приветливое сообщество, как русскоязычное, так и англоязычное (чаты, форумы)

    • Заимствование и сходство с WPF (Если вы работали с WPF вам будет легко разобраться с Авалонией, и при возникновении трудностей, код написанный для WPF скорее всего заработает у вас на авалонии)

    • Стили (стили в Авалонии имеют сходство с CSS, что упрощает написание этих самых стилей)

    Минусы

    • Маленькое сообщество (хоть и приветливое, но в силу молодости проекта, еще очень немногочисленное сообщество разработчиков)

    • Маленькое количество проектов (вы можете застрять с тем, что никто не решал такую задачу, которая встала перед вами)


    WxWidgets/WxPython

    wxWidgets (ранее известная как wxWindows) — это кросс-платформенная библиотека инструментов с открытым исходным кодом для разработки кроссплатформенных на уровне исходного кода приложений, в частности для построения графического интерфейса пользователя (GUI).Она разработана не только для того, чтобы создавать GUI. Она также имеет набор классов для работы с графическими изображениями, HTML, XML документами, архивами, файловыми системами, процессами, подсистемами печати, мультимедиа, сетями, классы для организации многопоточности, отладки, отправки дампов и множество других инструментов. Имеет обертку для языка Python -WxPython. С использованием этой библиотеки написанны такие программы как: FileZilla, AudaCity, BitTorrent и другие.

    Официальный сайт

    Минусы

    • Мало современной информации в интернете

    • Не очень активное сообщество

    Плюсы

    • Простое написание интерфесов

    • поддержка разных языков программирования


    Tkinter

    Tkinter - кросс-платформенная событийно-ориентированная графическая библиотека разработанная Гвидо ван Россумом (создатель языка Python), позволяет написать вам простой, но функциональный интерфейс для вашего проекта на Python. По сути Tkinter представляет из себя пакет для Python, предназначенный для работы с библиотекой Tk. Библиотека Tk содержит компоненты графического интерфейса пользователя (graphical user interface – GUI), написанные на языке программирования Tcl и существуют реализации для разных языков (Tkinter приведен для примера).

    Официальный сайт

    Минусы

    • Примитивные интерфейсы

    • Для одного языка (но непосредственно Tk существует для разных языков)

    Плюсы

    • Простое написание интерфесов

    • Позволяет вам быстро написать простой GUI для вашей Python программы


    Итог

    В этой статье я рассказал далеко не о всех фреймворках, но о самых популярных, активно поддерживаемых и подходящих для абсолютно разных проектов и задач. Призываю вас в комментариях рассказать о своем опыте работы с различными фреймворками (но только с теми, что есть в статье), о том какие плюсы и минусы вы видите в кроссплатформенной разработке?

    Похожие публикации

    Средняя зарплата в IT

    113 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 10 037 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
    Реклама
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее

    Комментарии 64

      +2
      А как же Flutter? Очень активно развивающийся мультиплатформенный фремверк. Правда для десктопа все еще в бетте)
        +4
        еще JavaFX есть. Swing в конце концов!
          +1
          Именно по этому flutter`a нет в этом списке, как появится — добавлю UPD)
          0
          Flutter наверное тоже можно причислить сюда?
            +1
            Он пока только мобильный
              0
              Мне показалось даже в экспериментальном режиме сборка Windows / Lin работает ок.
            0
            Странно, что GTK не упомянули
              0
              Спасибо, добавил UPD
              +4
              Delphi тоже не упомянули. А ведь там можно делать приложения под Windows, macOS, Linux, Android и iOS.
                +7
                При этом у делфи:
                — нативный компилируемый код, имеющий максимальную производительность
                — маленькие по объему приложения, включая минимальное потребление ОЗУ и процессора в большинстве типовых случаев
                — быстрая разработка UI, здесь на самом деле «формошлепство» по праву лучшее)))
                — простая связка UI и данных
                — отсутствие необходимости таскания с приложением кучи библиотек, как правило достаточно одного исполнимого файла (в большинстве типовых случаев)
                  –2
                  А Delphi это разве фреймворк? В статье вроде упомянуты бесплатные фреймворки для разработке десктоп приложений на любой IDE, про IDE нет ни слова.
                    +1
                    Фреймворк называется VCL/LCL (Лазарус), ну а новый — FMX
                    +1
                    Если он так хорош, почему его доля на рынке исчезающе мала?
                    Мне правда интересно, пару лет сам на нем писал, давным давно.
                      0
                      1. Дорогая лицензия на клиент/сервер. (Впрочем можно обойти, но не меньше 1300$/раб.место)
                      2. Многие не любят Паскаль.
                        0
                        Если продукт не развивать, то рано или поздно он сдохнет. Владельцы зашевелились, только когда популярность уже упала ниже плинтуса, а до того пребывали в глубокой спячке.
                        Достаточно сказать, что там даже поддержка Unicode появилась только в 2010-м, да и то кривая. А уж 64-битный компилятор они потом ещё много лет пилили (то, что родилось в 2011-м, состояло главным образом из глюков и багов).
                        Ну и плюс поставили не на ту лошадь, вложив слишком много усилий в поддержку FireMonkey.
                          0
                          Ну и плюс поставили не на ту лошадь, вложив слишком много усилий в поддержку FireMonkey.
                          Вот здесь я с вами не соглашусь. Именно FMX начала вытаскивать делфи из ямы и без поддержки кроссплатформенности делфи наверное к сегодняшнему дню практически бы умерло.

                          Да, объективно в плане сравнения с VCL у FMX есть известные проблемы со скоростью и качеством отрисовки экранных элементов. Но вот тот факт, что сейчас можно делать приложения с единым кодом и для мобильных, и для мака и для линуксов, перекрывает все существующие недостатки с лихвой.

                          А если вспомнить еще и про библиотеку FGX Native, где мобильные приложения визуально вообще не отличаются от нативных, то однозначно можно сделать вывод — делфи развивается в правильном направлении.

                          UPD. Ниже пишут
                          Более того, список поддерживаемых Linux-платформ крайне ограничен
                          это не совсем так. Список дистрибутивов, на которых работают приложения делфи (с использованием FMXLinux) достаточно обширен, упоминается 166 различных дистрибутивов.
                        0

                        Кстати, примерно в годы популярности делфи, больше в маковской сфере, но существовал не менее кроссплатформенный RealBASIC. Может кто на нём писал и в курсе, что там в основе лежало и жив ли он до сих пор?

                          0
                          realbasic.com

                          не благодари =)

                          и на вики есть
                            0

                            Да, уже отгуглил, просто было интересно, может кто-нибудь в проде эту штуку использовал. Уж больно обскьюрной какой-то кажется. Забавно, что ещё живо.

                        +2
                        Касаемо Linux. Справедливости ради следует отметить, что разработка под Linux поддерживается только в версиях Enterprise и Architect , что может устроить далеко не всех по финансовым причинам. Более того, список поддерживаемых Linux-платформ крайне ограничен. Хотя, я не уверен, относится ли этот список исключительно к самому процессу разработки или также к работоспособности итогового продукта.
                          0
                          Поддержка Linux только добавлена, поэтому и есть ряд ограничений. Кроме того, доля рынка десктопных приложений для линукс весьма мала, поэтому и добавлен он был в числе последних. А под остальные платформы код реально собирается с минимумом ограничений. При этом основная отладка ведётся под Windows, где Delphi просто «летает» за счёт молниеносной компиляции. А вот приложения под Android/iOS собираются довольно долго (порядка 40-60 сек).
                            0
                            И да, такие цены только при первоначальной покупке. Дальше оформляется годовая подписка (порядка 35 тыс. руб. с НДС). Если не пропускать ни один год, то разово вкладываться больше не придётся.
                              0

                              Для десктоп приложений 500$/год сразу выбивает кучу моделей использования, потому и непопулярна. Выходит что если у вас огромная команда то есть и другие варианты менее завязанные на пожелания разработчика ide а если это "для себя внутри компании с непонятным и нестабильным экономическим эффектом" то это дорого, по крайней мере в России.

                                –1
                                Ну 35 тыс. руб. в год это копейки для любой, даже мелкой организации. Понятно, что есть и совсем бесплатные инструменты. Но у Delphi много плюсов в плане скорости разработки, а это в свою очередь приводит к окупаемости данных затрат.
                                  0

                                  Копейки, это когда основная сфера — это разработка ПО, когда по копейке складывается на delphi + компоненты + бд + среда для бд + ...

                                    0
                                    СУБД бывают так же бесплатные. А если уж нужная платная, то значит проект на такую сумму, что вполне можно купить и более мощную версию. Это всё легко просчитывается, не надо быть суперэкономистом.
                                    А вот скорость разработки ПО для мелких организаций как раз очень важна. Плюс лёгкость сборки под различные платформы.
                                      0

                                      "А вот скорость разработки ПО для мелких организаций как раз очень важна. " Как работавший, могу сказать что, на мой взгляд, не постоянно (хотелось бы больше всегда но, не всегда нужно), вообще собственная разработка(для организаций, доход которых идёт не с ит) она живёт немного не так как разработка на заказчика, на мой взгляд.

                                    0
                                    • к тому в небольшой фирме разработчик по факту с delphi будет работать 2ч из 8ми(так как он один на всё)… т.е. затраты на конкретное ПО будут для такой организации более высокими чем у специализирующейся на разработке ПО компании которая будет использовать лицензию не на 10-20% а на 80-90%
                                      0
                                      Даже при крайнем случае, когда организация это ОДИН человек, 35 тыс. погоды не делают. В год надо зарабатывать намного больше, иначе просто не выжить.
                                      Нов таком крайнем случае можно вообще ничего не покупать. Есть другие способы.
                                      А вот когда организация дорастёт до штата хотя бы 3-5 человек, хороший инструмент будет играть сильную роль!
                                      То же самое касается электроники. В начале можно пользоваться и китайской станцией за 1000 руб. и самым дешёвым осциллографом, а вот по мере развития уже начинаете «обрастать» серьёзными инструментами.
                              +2
                              Тогда уж Lazarus — там точная направленность на кроссплатформу.
                                0
                                Lazarus хорош. Мы его частенько используем. Но по сравнению с Delphi есть два недостатка:
                                1. Не все библиотеки, что есть под Delphi, имеются и под Lazarus.
                                2. По сравнению с Delphi компиляция проходит намного дольше!
                                Может что ещё есть, не претендую на истину, но для себя вот эти два отмечаю.
                                Зато он бесплатный, а это уже большой плюс!
                                  0
                                  Скорость сборки примерно одинаковая. По опыту разработки проектов порядка миллиона строк на делфи и лазаре с одним кодом. Лазарь ну может на 20% медленнее. Что по сравнению с теми же плюсами — пыль.
                              0

                              Tkinter так-то да, только для Питона. Потому что это реализация Tk на Питоне. Однако...

                                0
                                Согласен, просто для примера привел Tkinter (в конце дописал, что Tk существует для разных языков)
                                +1
                                Странно видеть, что у Qt уканан минус «большой вес приложения», а у Electron нет.
                                  +2
                                  Высокое потребление памяти (физическая и ОЗУ)
                                  +1

                                  Отпишу про то, что знаю (Qt):


                                  • GUI старого скайпа написан на дэлфи, нового на электроне. Qt там никогда не было.
                                  • Проблем с компиляцией Qt под windows ни разу не встречал за 9 лет работы
                                  • Правильные флаги компиляции, QtLite, статическая линковка, UPX или аналоги — дают очень маленький вес приложения. Конечно, если есть такая цель. Я ухитрялся заворачивать GUI рантайм с сетью в 8 мегабайт (а Qt4 так и в 5 влазил).

                                  Единственный минус Qt — это некоторые танцы с бубном чтобы заставить одинаково выглядеть сложные QtWidgets приложения на всех платформах, особенно с нормальной поддержкой dpi scaling. У QtQuick (QML) такой проблемы нет.

                                    0

                                    Информация о том, что в скайпе использовался Qt была взята из википедии (Вот ссылка на вики Qt, а вот Skype). И там и там указано, что разработано с использованием Qt.


                                    При работе с Qt я тоже не замечал проблем с компиляцией, но достаточно часто на форумах встречал людей с подобными проблемами.


                                    С весом согласен, при грамотном коде и хорошей оптимизации, конечно можно получить приложение с небольшим весом, но к сожалению не все разработчики об этом думают.

                                      +3

                                      Да, виноват, Линукс и Симбиан версии были на Qt, но это было очень давно и без QML и, главное, не кроссплатформенно.
                                      Если кто-то на каком-то форуме не может скомпилировать, то это не значит, что есть проблемы с компиляцией. Так можно сказать абсолютно про любую библиотеку. Я, к примеру, не смог с ходу скомпилировать буст под виндовс с помощью clang.
                                      Если разработчик даже минимально не думает о весе дистрибутива, то может это ему и не надо? Или он просто не умеет. В любом случае — это не проблема Qt, ибо в Qt достаточно инструментов чтобы получить бинарник вменяемого размера.
                                      В общем, то что вы написали в качестве недостатков именно Qt — таковыми не являются.

                                        +1

                                        Спасибо за ваши замечания! Я изучу этот вопрос подробнее и поправлю информацию.

                                      +1
                                      Статическая линковка для коммерческого применения требует коммерческой лицензии Qt, а она дорогая.

                                      Впрочем, подрезав необходимые DLL, можно уложиться в 30Мб, или как ниже написали — использовать общий рантайм на систему.
                                        0

                                        Статически линковаться можно и с GPL, в том числе для коммерческого использования. Но это не всегда приемлемо.

                                          –1

                                          Указан у Qt "Большой вес приложения":
                                          Например статическая сборка в windows приложения может занимать <10 Mb exe, это правда много для gui приложения, которое не требует больше никаких зависимостей и установки, чтобы его запустить на любом компьютере?

                                        +1
                                        А где Lazarus?
                                          0
                                          А как же JUCE?
                                            +2
                                            Не хватает JavaFX
                                              0
                                              Начиная с версии Java 11 больше не входит в Java SE и не разрабатывается компанией Oracle (как отдельный модуль поддерживается компанией Gluon).
                                              Последний релиз JavaFX вышел 2 года назад.
                                              Увы, ощущение, что его хотят похоронить (
                                                +1
                                                Боюсь, у вас совершенно неверная информация. Релиз последней версии — JavaFX 15 состоялся этим сентябрем. Сейчас готовится к релизу JavaFX 16. JavaFX жив и развивается. Пусть несколько медленно, но он вполне жив.
                                                  –1
                                                  Прошу прощения. Ввел в заблуждение русский WIKI. В англ версии по JavaFX информация актуальная.
                                                  Насколько я знаю, у JetBrains все продукты на JavaFX. И очень даже зачетные интерфейсы.
                                                  Но тем не менее, JavaFX проигрывает многим другим фреймворкам. Это видно и по числу разрабов и по активности в SO. А жаль. Java божественна.
                                                    0
                                                    На сколько я знаю — большинство продуктов JetBrains сделаны на очень сильно перелопаченном Swing. На JavaFX я пока не видел ни одного примера популярного приложения. Вам не сложно будет написать в чем, с вашей точки зрения, JavaFX проигрывает другим библиотекам?
                                              0

                                              А как же Neutralinojs?

                                                0
                                                В этой статье я рассказал далеко не о всех фреймворках, но о самых популярных, активно поддерживаемых

                                                Neutralinojs — темная лошадка. Маленькое сообщество, мало информации, есть много недостатков и "непоняток" относительно тех же. ElectronJS/NW.JS

                                              • НЛО прилетело и опубликовало эту надпись здесь
                                                  +1

                                                  Compose for Desktop — было объявлено на днях, в стадии альфы.

                                                    0
                                                    Kivy/KivyMD забыли.
                                                      0
                                                      В обзоре не хватает информации по стоимости лицензии.
                                                      Qt, к сожалению, очень дорогой. Но возможности у него фантастические.
                                                        0
                                                        U++ U++ забыли
                                                          0
                                                          Есть вроде бы вполне приличный libCinder. С++, кросплатформенный. Есть куча дополнений в виде так называемых Block, с поддержкой большого количества разных GUI. А достаточно широко используемый ImGui, вроде как уже даже само по себе можно включить, без внешних библиотек.
                                                            +1
                                                            Avalonia разработанный и поддерживаемый компанией Microsoft и сообществом.

                                                            А точно Microsoft? Я думал там @grokys и потом kekekeks подключился.
                                                              0
                                                              Если мне не изменяет память, как раз с поддержкой от Microsoft там не очень здорово. Они вроде свой MAUI (Multi-platform App UI) намерены развивать.
                                                              0

                                                              Ничего себе, у Qt проблемы с компиляцией под Windows, а у Gtk — нет? Как по мне, поднять сборку Gtk на win гораздо больше мороки, чем пользоваться Qt Creator, который сразу с компилятором и QMake идёт. При этом Gtk застряла в значительной своей части на древних autotools, хотя вроде пытаются перейти на meson.

                                                                0
                                                                Уже много лет работаю с Qt. Ни разу не сталкивался с проблемой компиляции на Windows. Еще не понял про низкий порог вхождения. Qt — это c++ фреймворк. Если хорошо знаешь и понимаешь c++ и ООП, то нет проблем. А если не знаешь… Знаю людей, которые учили c++ с использованием Qt. В итоге человек потом не понимает, где у него фреймворк, а где нет))) Открывает потом для себя c++ и stl заново))
                                                                  0
                                                                  когда-то этим активно занимался, потому что отвечал за разработку виджетов в
                                                                  http://root.cern.ch
                                                                  из того, что мне тогда нравилось
                                                                  http://www.fox-toolkit.org/
                                                                  Была ещё парочка либ. Но, уже не помню.
                                                                  Мой друг, бывший коллега по ЦЕРНу, продолжил эти занятия, уже много лет работает в Qt

                                                                    0
                                                                    А чем например тот же Unity (игровой движок) не подходит в эту категорию?
                                                                    Плюсов тонна: бесплатный, сообщество большое, все возможные платформы, C#.

                                                                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                    Самое читаемое