Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Какие ЯП учить, чтобы работать с мобильными приложениями и играми?

Интересует возможность устроиться на удаленную работу, возможно на заграничную кампнию)))
Желательно, чтобы ЯП можно было использовать в backend.
ПрограммированиеУдалённая работа+3
Артем Соколов
  · 19,7 K
Веб-разработчик, геймер, специалист по этике  · 30 авг 2021
Вы определитесь, вам бэкэнд, мобилки или игры. Это три разных направления каждое со своими особенностями.
Я знаю о трёх путях разработки мобильных приложений, в том числе игр.
Каждый из них имеет свои плюсы и минусы.
Нативная разработка
В 2021 году у нас есть всего две платформы - Android и iOS, и для каждой есть своя курируемая авторами среда разработки и язык программирования. У Google для Android есть Android Studio, основанный на IntelliJ IDEA, и язык там - Java либо Kotlin, компилируемый в Java. У Apple для iOS есть Xcode, и язык там сейчас - Swift (забудьте об Objective С, если вы новый разработчик).
Преимущества такого подхода в том, что вы максимально близко к аппаратуре и можете использовать все доступные возможности платформы, без каких-либо прослоек, снижающих производительность и функциональность.
Недостатки такого подхода в vendor lock'е, вы замыкаетесь только на этой платформе. Если вы хотите, скажем, выпускаться и на Android, и на iOS, вам придётся учить два языка, привыкать к двум разным средам разработки и поддерживать две базы кода.
React Native
Ну или их конкуренты в той же нише Apache Cordova. Идея в том, что вы пишете мобильное приложение будто бы оно веб-приложение, используя технологии веб-разработки - HTML5, CSS3, ES7+. Волшебный бандлер вам из одной базы кода собирает нативные приложения для Android и iOS.
Преимущества такого подхода в том, что вы изучаете и используете невероятно популярные языки, у вас есть некоторый реальный выбор среды разработки и в случае чего вы можете спрыгнуть на веб-разработку. Вы поддерживаете только одну базу кода, с отдельными точечными хаками для конкретной платформы.
Недостатки такого подхода очевидны - в ваших приложениях поддерживается только та нативная функциональность аппаратуры, которую поддерживает ваш бандлер (React Native, Apache Cordova или что там ещё изобрели, пока я не смотрел). Для Android и для iOS разные style guide'ы и соглашения о том, как должен работать интерфейс. Ради кроссплатформенности всё это очень сильно обрезается. Про высокую производительность можете вообще забыть, она не в приоритете при таком подходе.
Кросс-платформенные решения (в том числе игровые движки)
Если вы нацелены на игры, то есть игровые движки, которые просто сами компилируют всё под любую мобильную платформу, какая существует на рынке. Например, самые известные мне названия - Unreal Engine, Unity, Godot - все умеют компилировать под Android и iOS одним переключателем в меню.
Для не-игровых приложений я знаю, что существует фреймворк Qt, который тоже компилирует под всё на свете.
При таком подходе вам нужно будет учить язык программирования под конкретную среду разработки. Unreal Engine и Qt используют C++, Unity использует C#, Godot скриптуется на своём собственном языке.
Преимущества такого подхода те же, что и для React Native - вы пишете приложение в намного более популярном и широко распространённом языке программирования, и один раз. Бандлер сам соберёт пакеты для конкретной платформы. Более того, в отличие от того же RN вы получаете намного большую оптимизацию под аппаратуру, потому что C++ это далеко не яваскрипт, и игровой движок знает лучше вас, как оптимизировать игровой код под конкретную платформу.
Недостатки такого подхода в том, что вы снова получаете vendor lock, но на этот раз на конкретную среду разработки - на Unreal Engine, на Qt Creator, на Unity. Более того, в отличие от React Native, где вы будете программировать на невероятно популярном яваскрипте, здесь вы будете программировать на, скажем так, менее хайповых языках, причём на тех, где порог входа намного выше, потому что C++ это далеко не яваскрипт, да и C# тоже способен сожрать вашу душу быстро и эффективно.
Pick your poison, как говорится.
Скажу - Я новичок))) Как я понял: чтобы работать с мобильными приложениями, надо выбрать платформу: Android или... Читать дальше
Привет! Занимаюсь разработкой игр на unity и просто очень люблю игры. Ищу таких же как я...  · 30 авг 2021  · twitch.tv/harehall
Большинство языков подходят под критерии. 😊
Под мобильные приложения и игры по моему опыту не плохо подойдут: Java, Kotlin, C#, c++, Swift
Если нужна будет помощь, смело обращайтесь, или пишите в чате 💫
Лучший
Senior fullstack developer (c#, Java, php, js).  · 30 авг 2021  ·
gamedevpub
Android: Java, Kotlin, C#, c++ IOS: Swift, c#, c++ Windows: c#, c++, java Linux: c#, c++, java Жирным выделены те языки, с которыми будет либо значительно проще на указанной платформе, либо они на эту платформу наиболее востребованы Бэкенд понятие крайне растяжимое. В общем случае, это будут плюсы, они максимально универсальны. Если же нужно что-то чуть более высокоуро... Читать далее
Разрабатываем игры и хотим, чтобы таких как мы было больше.Перейти на vk.com/gamedevpub
Спасибо за ответ)
А как обстоят дела с удаленкой?
Занимаемся созданием сайтов и мобильных приложений с 2014 года.  · 30 авг 2021  · 2rom.ru
Отвечает
Roman Okhotnikov
Здравствуйте! Для того, что бы вести разработку под мобильные приложения нужны следующие языки программирования: - Android - Java, Kotlin - iOS - Swift, Objective-C - Crossplatform app - JavaScript, Dart, C# - GameDev - C#, C++ Как видите пересечений для разработки в разных категориях одновременно - нет. Поэтому придётся учить не один язык. Такова жизнь. Читать далее
Нужно больше информации? Закажите консультацию. Тайное слово "Кью" -5% скидка.Перейти на 2rom.ru
Директор по развитию компании Мобилити Топ ✅ https://разработка-мобильных-приложений.рф  · 10 мар 2023
Для работы с мобильными приложениями и играми существует несколько популярных ЯП, перечислим основные: Java - Java является одним из самых популярных языков программирования, используемых для разработки мобильных приложений на Android. Swift - Swift - ЯП, разработанный Apple специально для iOS и macOS. Он используется для создания мобильных приложений для iPhone, iPad и... Читать далее
1 эксперт согласен
Да все верно. А так же нужно понимать платформу на которую вы пишете. И насколько устаревшая техника будет поддержи... Читать дальше