где лучше нативный код писать? Стоит ли вообще использовать Xamarin, когда есть React-Native и Flutter?
зачем rn и flutter когда есть xamarin?
Вот сам хочу узнать. Поэтому и спрашиваю у сообщества.
зачем нужен C# когда есть Assembler
Ассемблер не плохо, но перфокарты надёжнее.
почитайте сравнение rn flutter и xamarin
перфокарты плохо слишком много жучков
Кроссплатформа -- это усидеть на нескольких стульях одним человеком, натив это отдельно кресло, отдельно табуретка, отдельно шезлонг) Если есть деньги можно позволить себе купить по отдельности)
- MVP - проверки идей - внутренней корпоративной разработки (особенно когда завязано на технологиях Microsoft) - если ты знаешь C# - Инди разработчик и делаешь приложения для обоих сторов
Мы например переезжаем с Xamarin на Flutter. Уж больно сложно с нативной стороной из С# общаться. Чем больше функционал у приложения, тем больше костылей приходится писать, чтобы корректно работали фичи на каждой платформе. Для простых приложений Xamarin - прекрасная штука, но для этих же целей есть и другие классные инструменты
под xamarin имеете в виду xamarin.forms ?
Мы использовали Native, но формы не особо отличаются в этом плане. По сравнению с флаттером, где мы по сути напрямую обращаемся к нативному коду, xamarin в любом случае принуждает писать тяжелые некрасивые обертки
А какой-то пример можно ? У нас в проекте тоже native. И не сказать, что приложение просто и маленькое, но каких-то сверхтяжёлых и некрасивых обёрток замечено не было
Например, криптография. Наши замечательные коллеги из одной окологосударсвенной компании сделали свои библиотеки, нас же настоятельно попросили внедрить это дело в наш проект. Разумеется, никакой поддержки .net они не планировали, лишь отдали нам пару примеров использования их либ на objective-c + java. Под разные платформы реализация библиотек совершенно отличается, как следствие, у нас было много боли и страданий. Да, частный случай, но показательно
ну, тут уже такое дело
Вы шутите? У Xamarin напрямую доступ к нативному SDK
Ну, если это можно назвать прямым доступом https://docs.microsoft.com/en-us/xamarin/cross-platform/macios/binding/objective-c-libraries?tabs=macos
как ещё оно может работать из C# если не через bindings? я пишу так же как на Obj-C раньше писал, прямой доступ
Так я изначально и говорил о необходимости писать обертки. Не понимаю, в чем суть наброса
А причём тут библиотеки? Я писал про SDK И вы не уточняли, что имели в виду под "нативной стороной"
А что, в Flutter прям из Dart-кода можно вызвать код thirt-part библиотеки на java/objective-c, без создания вообще никаких оберток?
Нет. Прошу извинить, если из моих слов можно было сделать такой вывод. Но там это в разы удобнее, на мой субъективный вкус
Я полагаю у вас была проблема с конкретной реализацией конкретной библиотеки на разных платформах, разработчики библиотек не постарались привести свое решение к единому интерфейсу для всех платформ. Следовательно, так же проблема должна была вылезти и во флаттере
Ещё раз поясню: никто не сравнивает технологии или не говорит, что А лучше В. Посыл был в том, что у технологии А есть некоторые проблемы. Мы решили их вот так. Как и говорил выше, абсолютно частный случай, но коллективный опыт - бесценен, посему важно делиться тонкостями. Если есть желание посравнивать технологии, велком в профильные ресурсы
А, например, на Kotlin, такой проблемы бы не было?
А как с перфомансом на iOS справляетесь?)
Обсуждают сегодня