На чем лучше делать мобильное приложение — на Java или JavaScript (ReactNative)?
В кодинге слабо разбираюсь (работаю дизайнером), но иногда есть желание что-нибудь накодить.
Пару лет назад немного изучал C#, сейчас вот пару месяцев JavaScript+React.
Сейчас хочу попробовать сделать мобильное приложение, сперва для Андроид, потом желательно без радикального переписывания - на ios.
Собственно что лучше изучать джаву с нуля (вроде так будет нативней, но непонятно как переделать потом для ios, да и мотивация может пропасть - опять с нуля все азы зубрить), либо React Native (как понимаю, правок будет меньше)?
p.s. Работать кодером врятли уж буду, это скорее для себя.
Нужно только учитывать, что на кроссплатформенных фреймворках далеко не уедешь. Для простых приложений и прототипов вполне подойдёт. Но если что-то серьёзное, то потом это надо будет переписывать на нэйтив
dezader, А что ещё может получиться при минимуме усилий?:) Из личного опыта и наблюдений - все эти кроссплатформенные штуки сильно проигрывают нормальной разработке. Конечно, речь не идет об играх(Unity и подобные движки).
для новичка, тем более знакомого с жабаскриптом, проще будет реакнэйтив.
но нужно смотреть на вещи трезво: любой реакт нэйтив и подобное будет курить в сторонке в сравнении с нативщиной. особенно, если требуется не только банальщина.
Спасибо, попробую на JS- он правда смущает своей некоторой расхлябанностью после C#. Хотя авторам наверно кажется что объявлять переменные по ходу действия и складывать 2+"2" - это проще для новичков, нет.
dezader, это очень философский вопрос: если ты знаешь, что делаешь, то абсолютно пофигу, как и где ты что-то объявляешь.
я люблю языки со строгой типизацией, но и динамическая не вызывает у меня отвращения.
DevMan, это скорее вопрос холиварный. Знать всё обо всех переменных и параметрах вместо того, чтобы полагаться на компилятор... Бррр... Как вспомню - вздрогну.
DevMan, и глобальный скоуп тут не при чём. Узко мыслите. Существуют рефакторинги, когда меняется порядок, количество, и типы аргументов функций. Существуют ошибки. Существуют команды из более чем одного человека. Множество вещей существует, от которых статическая строгая типизация спасает в компайл-тайм. А динамическая не имеет никаких плюсов.
DevMan, всё мной описанное легко отлавливается в компайл-тайме. Оно просто не соберется. вам придется писать тесты вместо типизации, и ловить тупейшие баги в проде.
Ладно, похоливарили и хватит, я ж не надеюсь, что вы осознаете и бросите джаваскрипт, как и вы не надеетесь сделать меня его адептом.
попробую на JS- он правда смущает своей некоторой расхлябанностью после C#. Хотя авторам наверно кажется что объявлять переменные по ходу действия и складывать 2+"2" - это проще для новичков
А на C# 2 + "2" нельзя сделать, да?
Если так от шарпа плющит, в сторону Xamarin не смотрели?
Developer, так, там Dart какой-то, и по нему поменьше туторов на русском.
Но по рекламе на сайте у них вроде выглядит интересно в плане интерактива-анимаций.
Да, и хотелось бы не кирпичное приложение, а чтобы было плавно-стильно, видимо с нестандартной настройкой компонентов.
В reactNative тоже такое можно? В чем проще?
Ответ зависит от правильно заданных вопросов. В целом, да, лучше на нативе, Java/Kotlin.
Но ты хочешь кроссплатформенности и под мелкие задачи для себя, тогда да, можно ReactNative или Ionic. Посмотри ещё в сторону Flutter, его очень активно сейчас двигает гугла как замену тому же ReactNative.