Топ-5 языков и фреймворков для кроссплатформенной разработки — рейтинг Dice
За последние несколько лет многие компании и отдельные программисты пытались создать идеальные инструменты для кроссплатформенной разработки. Благодаря их усилиям стало немного проще использовать один и тот же код на разных платформах. О лучших из них в блоге на Dice рассказал Analyst Developer Дэвид Болтон.
Методология исследования
При анализе Дэвид Болтон учитывал возможность того или иного инструмента поддерживать следующие платформы:
- десктоп (Windows, MacOS и Linux);
- веб;
- веб-приложения;
- мобильные приложения;
- embedded-устройства (IoT, автомобили и так далее).
Лучшие инструменты для кроссплатформенной разработки
Flutter — 79/100
Flutter подходит для всех вышеперечисленных платформ, кроме веб-сайтов. Flutter для Windows появился всего несколько месяцев назад, а рабочие столы Flutter для Mac OS/Linux все еще находятся в бета-версии; для IoT и автомобилей пока еще рано, но в BMW уже работает команда Flutter/Dart из 300 человек, а Toyota использует его для разработки информационно-развлекательных систем. Flutter отлично сочетается с CarPlay (iOS), начиная с iOS 14, по крайней мере, в теории.
Оценка:
- 20 для настольных систем (по 5 для Linux и Mac OS);
- 0 для веб-сайтов;
- 10 для веб-приложений;
- 20 для мобильных;
- 20 для IoT/Automobile;
- 9 из 10 баллов от автора за простоту кросс-платформенной разработки.
C# — 71 из 100
На C# кроссплатформенная разработка кажется менее цельной, это, скорее, куча технологий, собранных вместе. С разработкой для десктопов, веб-сайтами и веб-приложениями все хорошо, а разработка мобильных приложений еще хромает. По мнению Дэвида, использование XAML в настольном WPF и Xamarin Forms/Maui кажется ошибкой. К тому же, у Xamarin крутая и слишком сложная кривая обучения.
Оценка:
- 30 для настольных ПК;
- 10 для мобильных (по 5 для каждой платформы);
- 20 для веб-сайтов и приложений;
- 10 для IoT;
- 1 из 10 для кроссплатформенности.
Haxe — 70 из 100
Язык программирования Haxe существует с 2005 года, но не так широко известен. Он даже не входит в список 50 лучших по версии TIOBE. Haxe имеет открытый исходный код, а код, написанный на нем, может быть скомпилирован в JavaScript, C++, Java, JVM, PHP, C#, Python, Lua и Node.js. Изначально он поддерживал Flash и до сих пор поддерживает платформу OpenFl.
Есть ряд компаний, которые используют Haxe, вероятно, из-за его возможностей Flash.
Оценка:
- 30 для настольных компьютеров;
- 10 для мобильных устройств;
- 20 для веб-сайтов и приложений;
- 0 для IoT;
- 10 из 10 для кросс-платформы.
Java — 45 из 100
Когда-то Java была очень популярна на десктопных компьютерах и в вебе, но, по данным w3techs, сейчас только 4% всех веб-сайтов работают на Java.
Использование Java на настольных компьютерах сокращалось в течение многих лет, а на смартфонах технология ограничена Android, где испытывает давление со стороны Kotlin.
Оценка:
- 15 баллов для десктопных систем;
- пять баллов для мобильных;
- пять баллов для веб-сайтов и приложений;
- 10 баллов для IoT;
- 10 баллов для кросс-платформы.
C++ — 43 из 100
C и C++ были первыми кроссплатформенными языками, но не попали в веб и мобильный мир.
Писать на C++ для десктопной разработки трудно. Язык пришел в упадок примерно в начале 2000-х, хотя есть несколько старых приложений, таких как MS Office, Adobe Creative Suite, и различные браузеры, написанные на нем. Сильные стороны C++ — в разработке операционных систем, компиляторов, движков баз данных, игровых движков и серверов.
Оценка:
- 30 для настольных компьютеров;
- 1 для мобильных;
- 1 для веб-сайтов и приложений;
- 10 для IoT;
- 1 из 10 для кросс-платформы.
Заключение
Нет идеального языка программирования, поддерживающего все платформы, но Flutter, C# и Haxe — одни из лучших.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: