Ответы пользователя по тегу iOS
  • Зачем нужны нативные языки для мобильной разработки?

    AlexMarken
    @AlexMarken
    На нативных языках приложение будет работать быстрее, занимать меньше памяти, как оперативной, так и физической относительно такого же функционала, но на другом языке. Использование самого свежего функционала ОС. Да и в каком-то плане, наиболее безопаснее. Всё это благодаря низкоуровневому обращению к API и инструкциям системы.

    React Native и другие подобные средства лишь упрощают разработку, сокращая необходимое время и деньги на эту процедуру. Согласитесь, для заказчика дешевле будет написать один код (но с различными исключения под платформы) для iOS и Android, чем нанимать разработчиков под каждую платформу. Такие приложения имеют ограничения по разному функционалу, что приводит к написанию ещё большего кода.

    Вот пример.
    Много лет назад из любопытства написал два одинаковых по функционалу приложения под Android на Java и Delphi (да, он тоже теперь кроссплатформенный). На Java приложение работало намного быстрее - раза в 1.3-1.5 и занимало в 4 раза меньше физической памяти.
    И ещё один, но про Рокетбанк.
    Рокетбанк выпустили новое приложение на RN для iOS и Android. Возьмём платформу iOS.
    1. Функционал нового и старого приложений одинаков, но страница авторизации с подтверждением входа по TouchID в новой версии висит куда дольше - на пару секунд. Не думаю, что там такой огромный функционал, который увеличивает время инициализации приложения.
    2. Занимает в 2 раза больше физической памяти.
    3. Накатывали JailBreak на прошивку... доступ к данным старого приложения получить не удалось, из нового вытащили различную инфу, включая токен сессии.

    И гугл в помощь.
    Ответ написан
  • Можно ли установить Mac OS на Windows и собрать билд для ios?

    AlexMarken
    @AlexMarken
    1. Билд то создать можно, но подписи у приложения не будет, чтобы разместить в AppStore.
    Ты собираешься ставить не полноценную macOS, а Hackintosh, часть функций которой не работает (это тебе не Windows, чтобы полный функционал выдавать пиратам).

    2. Эмулятор для iOS только один - в пакете XCode. Чем тебе он не угодил?

    3. Железо на ПК/ноуте какое?
    Года 4 назад ставил себе на ноут от Asus виртуалку Hackintosh. Устанавливал на VMWare. Выделял 4Гб ОЗУ, у меня оперативка всего на 6 была. ЦП i5 2х ядерный стоял - на виртуалку отдавал 2 ядра.
    Без лагов работал только стандартный эмулятор iOS в macOS - "установил виртуалку, чтобы запустить на ней виртуалку". Если открывал один лишь XCode или другое приложение с аналогичной нагрузкой - дикие тормоза.

    4. У нас, кто на Unity работает сидит на Винде. Нужно собрать билд под iOS - пересаживаются на Mac mini.
    Ответ написан
  • И все таки с чего начать новичку?

    AlexMarken
    @AlexMarken
    Для Android - Java & Kotlin в среде Android Studio, эмулятор Genymotion.
    Для iOS - Swift в xCode.

    На C# и Delphi, которые позволяют сегодня создавать мульти-платформенные приложения, писать не советую. Там очень много нюансов, которые ухудшают производительность приложения и ограничивают возможности. Пиши на родном для платформы языке.
    Ответ написан