Я хотел бы разработать приложение, которое будет работать на Windows x86, macOS, Linux, Android, Windows 10 Mobile и iOS.
Мой основной интерес состоит в том, чтобы закодировать как бизнес-логику, так и графический интерфейс приложения только один раз, предпочтительно на одном языке программирования и графическом интерфейсе, и скомпилировать/развернуть приложение на любой из этих платформ. Приложение должно выглядеть как собственное приложение, т. е. иметь окно приложения в Windows/Linux/macOS и работать в полноэкранном режиме в мобильных ОС.
Я полностью осознаю, что внешний вид такого приложения — это не то, что могут ожидать пользователи всех операционных систем, это компромисс, на который нужно идти с такими требованиями.
На этом сайте есть довольно много вопросов по этой теме, однако я не нашел ни одного, который действительно охватывал бы все эти операционные системы, один (например, Android) отсутствует во многих случаях. Другие вопросы ограничиваются одним языком программирования. Начиная с нуля, я считаю, что выбранный язык программирования должен зависеть от моих потребностей, а не наоборот.
Меня интересует полный набор инструментов:
Вы можете написать свое приложение в HTML и использовать Apache Cordova и Github Electron, чтобы преобразовать его в приложения, работающие на всех этих платформах. Они будут выглядеть и работать как нативные приложения, но за кулисами будут веб-страницами. Было бы трудно найти дизайнера графического интерфейса для HTML, но вы могли бы использовать любую адаптивную среду CSS, такую как Twitter Bootstrap.
В идеале было бы возможно заставить одну и ту же кодовую базу работать на этих платформах. Однако на практике вам могут понадобиться, например, определенные правила CSS для определенных платформ, чтобы исправить определенные пограничные случаи. Также будут некоторые другие различия — например, реализация уведомлений будет отличаться для настольных компьютеров и мобильных устройств. Но поскольку 90 % кода будет совместно использоваться этими приложениями, обслуживание будет простым, и вы сэкономите много времени на доработку кода.
Самое близкое к тому, о чем вы просите, о котором я знаю, это Qt.
Используя Qt, вы можете написать приложения с графическим интерфейсом один раз и развернуть их на настольных, мобильных и встроенных операционных системах без перезаписи исходного кода.
Ее список поддерживаемых конфигураций: http://doc.qt.io/qt-5/supported-platforms.html .
гетли
Сорок два
Сорок два
гетли