Почему я считаю, что Dart/Flutter никогда не заменит нативную разработку?
Vložit
- čas přidán 27. 07. 2024
- Сегодня говорим про кроссплатформенную разработку на мобильных устройствах
Курс о котором говорит Сергей: 🎓Enterprise patterns - bit.ly/3M9v9Mp
Новый поток стартует 1 июля!
Есть вопросы по обучению в FoxmindEd? Пишите нам в телеграм - t.me/foxminded
Вы можете стать спонсором канала и получать плюшки - / @sergeynemchinskiy
Тайминг:
00:00 - вступление
0:24 - официальная поддержка Google и Apple
2:01 - нативная разработка
2:48 - кроссплатформенная разработка
4:29 - Enterprise patterns
5:27 - функции двух систем
6:15 - стоимость кроссплатформенной разработки
6:49 - что выгодно разрабатывать
7:44 - проверьте свое приложение
8:35 - итоги
❤ FoxmindEd в Instagram: / foxminded.ua
Курсы для новичков:
🎓JAVA - bit.ly/3zcDlc7
🎓JAVA Start - bit.ly/3zh1pKS
🎓PYTHON - bit.ly/393IrwA
🎓PYTHON Start - bit.ly/3taoLhy
🎓C#/.NET - bit.ly/3NTMpXc
🎓C# START - bit.ly/3M8OuO1
🎓Инструментарий JAVA - bit.ly/3x29DE4
🎓Automation QA (Java) - bit.ly/3Q0otU0
🎓ANDROID - bit.ly/3PYdf2A
🎓FRONT-END (ANGULAR) - bit.ly/3mbqyPy
🎓FRONT-END (REACT) - bit.ly/3GMcvZV
🎓SALESFORCE Developer - bit.ly/3tfrgyZ
🎓UI/UX дизайн - bit.ly/3Q2GxNA
🎓GAME DEVELOPMENT - bit.ly/3GJGeCV
🎓IOS разработка - bit.ly/3xdERJr
🎓PHP - bit.ly/3GJgsyw
🎓Обучение на проекте - bit.ly/38Zq2kF
🎓Unity - bit.ly/3GMYUBH
🎓NODE.JS - bit.ly/3xcBRwR
🎓GOLANG - bit.ly/3NsAFuY
Продвинутые курсы для состоявшихся девелоперов:
🎓GRASP and GoF Design patterns - bit.ly/3almzwO
🎓Алгоритмы и структуры данных - bit.ly/3Nh7POk
🔧 Пробное техническое собеседование со специалистом уровня Senior Developer/ Team Leader - bit.ly/3wZRCGi
👔 Карьерная консультация с Сергеем Немчинским - bit.ly/3taoJGs
Сайт FoxmindEd: bit.ly/3xe1bCY
FoxmindEd в ФБ: / foxmindedco
FoxmindEd в Instagram: / foxminded.ua
Мой Telegram: t.me/nemchinskiyOnBusiness
Для деловых запросов: youtube@foxminded.ua
#nemchinskiy
- На флаттере можно написать буквально ЛЮБОЙ функционал, тк есть возможность с помощью method channel'ов дописать нативный код
- "На флаттере нельзя написать красивое приложение" , - категорические не согласен. Красота приложения не зависит от технологии. Если руки из плеч, то юзер в жизни не увидит разницы между нативно написанной прилой и той, что написали на флаттере. Поддержка 120ГЦ - это всё-таки серьёзно. (Не нужно писать про неимоверную производительность натива, лично видел лагающие в 45 фпс ресайклеры)
- "на флаттере код писать сложнее", - нет, тк и виджеты, и бизнес логика пишутся на 1 языке. Это, как минимум, для новичков очень просто, ведь не нужно бодаться с той же XML разметкой в Андроиде (Compose и Swift UI не затрагиваю).
Та и сам ЯП проще того же котлина (мало ключевых слов, очень большая схожесть с джавой, джс/тс. Дефолтный С-подобный язык)
- "нужно двое больше тестировать", - а 2 приложения нативных не нужно тестировать?)
От себя добавлю, что даже с учётом писанины нативного кода на флаттере, 2 приложения по времени займут, как 1.2-1.3 одного нативного.
Производительность сопоставима с нативной (потеря около 15%), ОЗУ тоже ест на ~ 20% больше, на больших приложениях разницы в весе приложения практически нет. На мелких она есть , ТК в приложение упаковывается Dart VM (около 9 мб)
Для тех, кто топит за Kotlin Multiplatform: товарищи, вам все равно придется писать UI на Свифте))
Абсолютно согласен с автором коммента, те же самые аргументы можно использовать в пользу React Native :)
Думаю что за кроссплатформенностью будущее, так как это очень выгодно для бизнеса, следовательно бизнес будет впахивать деньги в технологию)
Абсолютно согласен! Именно тот же хотел написать
Словно сняли с языка. Присоединяюсь к автору комментария 🙌
Уже 3 года работаю Flutter-разработчиком. Проблемы у Flutter да, были и определенные ещё есть, но за все время его существования Google очень активно и эффективно их прорабатывает и минимизирует.
Ощущение, что у автора видео просто неприязнь к кроссплатформенной разработке. Поддерживаю данный комментарий.
+
Судя по классическому вступлению: Сергей Немчинский это константа.
Предлагаешь переопределить при следующей компиляции?
@@alexbozhko72 Зачем? На это константе весь алгоритм держится.
Хахахаах
@@panzerlo3418 весь энтерпрайз рухнет))
Чесно, мнение 5-7 летней давности из времен кастыльного ксамарина и qt
Но все равно респект и уважение))
ну я можу помилятись, але Сергей якраз так років 5-7 назад перестав займатися активною ентерпрайз розробкою і зараз повністю займається школою Foxminded.
Тому може бути.
Але респект і повага
Зачем так странно сделано?
Dart - яык прогммирования, flutter - фреймворк. dart можно использовать без flutter и вне контекста мобильной разработки.
Зачем же так странно сделано, что жаба и спринг не одно и то же ?
В голос
прекрасно
сравнил православную жабу и какой-то новомодный дарт
Лол, чел говорит, что больше 20 лет программист, а говорит такую хуйню. Я даже не знаю с чего начать. Такое ощущение что из кроссплатформы пробовал только xamarin когда давно и сделал на этом вывод. Ну видимо пока курсы по Дарту/Флаттеру не продает, поэтому-то выгодно хейтить эту технологию)
ну так если ты программист с опытом, это не значит что ты разбираешься во всех сферах программирования
Доводы понятны и довольно справедливы. Но складывается ощущение, что Сергей не сильно погружен в тему, большая часть видео посвещена Flutter, а доводы скорее относятся к React Native.
Например:
"Ваше приложение может иметь только функции, которые есть и в одно и в другой системе" - это справделиво для RN, так как там идет обращение к нативным копонентам. Flutter же рисует на канвасе и для него вообще нет проблем в состыковке систем, хоть на телеке рисуй интерфейс IOS. Поэтому и гемор с тестированием меньше
Ну и естественно у кросплатформы есть рынок. На flutter реально создать хорошо работающее приложение на две платформы, с этим сейчас глупо спорить. И я никогда не поверю, что затраты на это сравнимы с поддержанием двух нативных платформ.
Поэтому справедливо сказать - топ приложения богатых компаний останутся на нативе, но рынок мелких и средних компаний будет отъедаться кросплатформой.
Плюсую, особенно когда говорилось о "сделать красиво как в нативе не получится" орнул в голосину если речь о юай. На флаттере в два клика можно навалить такой сложной красоты которую нативщики месяцами бы писали
@@digibori_music кек, скрол на iOS на flutter ну вообще так себе да и анимации в целом
@@coffeebydny393 bouncingScrollPhysycs забыли указать мейби, вот он у вас и скролит на айос в стиле андроида)
А кто сказал, что java это натив, это байткод, и отношение к java 25 лет назад было, это ненативная хрень. Но рыночек порешал.
Не понимаю тех, кто здесь писал, что на флаттеристов спрос куда меньше, чем на нативку. Ответьте, пожалуйста, как давно появился флаттер и нативка?
Уже лето, а он ВСЁ ЕЩЁ Сергей Немчинский!!!
Актуально для Тайцев.
аахаххаха
Я и на стриме спрашивал будет ли он имя менять, сказал нет
Доброго времени суток, у меня не малый опыт работы с кросс платформами ю(в сумме в проде я поработал с xamarin, react native, flutter и ionic), и могу с уверенностью утвердить что один из лучших вариантов команды, это один или более девев для кросс технологии и по одному для каждой нативной (если есть сложные задачи то эти девы создают наивные дополнение бриджи или байдинги)
Поскольку удобно когда вёрстка и бизнес логика - общая и не дублируются, а сложные части работы именно с техникой - вынесены именно в нативную логику
Для каждой задачи нужен свой инструмент. Сейчас реально 80% приложений которые написаны на нативе можно было бы гораздо быстрее написать на Flutter, даже без учета того что это будет сразу две платформы (iOs и Android). Ну никто же не пишет игры в нативе, все используют како-то игровой движок. Правильно воспринимать Flutter именно так
Но есть нюанс - абсолютное подавляющее движков только на винду, на анриале не напишешь кроссплатформку, либо под винду, либо под линукс(и то там сомнительная поддержка)
@@Dmytro-Tsymbaliuk, heaps io. Кроссплатформенее некуда.
80% мало, я уверен все 95%
Если мы говорим о "мясе" а не о "воде", то большинство приложений слишком много внимания уделяет визуальной составляющей, избыточно много. Забывая про функционал.
Помимо того что написали уже в комментариях есть еще один простой довод, почему заменит: кроссплатформенная разработка банально дешевле для заказчиков. В бизнесе все решают деньги, сами понимаете. + по скорости кроссплатформенной разработки в случае Flutter важно упомянуть hot reload/hot restart, который экономит ооооочень много времени.
Флаттер это обертка, некоторые вещи которые нельзя сделать на флаттере, можно дополнить на нативках. И красивое приложение получить легко. Есть большие приложения и большие зарплаты. Бизнес сейчас явно знает больше, раз спрос такой большой у больших компаний даже, не то что у мелких
Какие большие приложения используют Флаттер?
@@drovoseg знаю алибаба и ибей
@@drovoseg Росбанк
@@drovoseg Google ads
2 года работаю с флаттер, до этого 2 года на дройде
1. нет официальной поддержки - никак не затронуло меня
2. баги специфичные могут появиться только при использовании фич ОС. Например разрешения. У дройда есть галочка "не спрашивать больше" у яблока такой нет. Ок.. это не баг.
Интегрировали принятие voip звонков в приложении. Были специфичные баги. Пофиксили. Можно подумать на ios или дройде при нативной разработке не бывает багов
3 можно спорить что есть "все фичи нативных систем"
Сергей, разработка под флаттер быстрее чем на дройд и проще.
нет геммороя с жизненным циклом активностей и фрагментов
async/await - уф, просто огонь после RxJava. С корутинами на котлине не работал
Фичу делали на дройде 15 дней
На флаттере сделан только iOS аналог приложения. На флаттере сделал за 6 дней.
ЗП не ниже?
Мне кажется или запилить ту же фичу повторно, пусть и на другом языке, все же быстрее? Речь конечно не идёт про что то совсем типовое
Давно ждал это видео. Спасибо
Скажем так:
Flutter/RN класний, але Android/iOS розробники теж хочуть їсти.
Для красот есть CustomPainter и Explicit анимации.
Сложность для разных платформ: if (Platform.isХ)
Согласен, это все настолько сложнее нативной разработки.
костыли на ифах)
@@maxlich9139 ифы нужны в очень редких случаях. Типа "Sign in with Apple" не показывать на роботе. Если для тебя это все еще костыль, то у меня для тебя плохие новости.
От каждого инструмента по возможностям, каждому проекту по потребностям. Свою нишу Flutter занял.
На Dart писать существенно проще чем нативно на Kotlin/Swift. Dart язык простой.
Flutter для MVP
Поднял настроение)
Немчинский! Несмотря на это видео, я буду продолжать тебя смотреть!
Тот случай, когда человек не разбирается в теме. Стоило сначала как следует разобраться в flutter прежде чем что-то говорить
он и про юнити наговорил дичи, если я правильно помню
А что не так?
он считает что он умный
Спасибо за видео! 🙏✌
1. В флаттер вы можете использовать нативные фичи дописав их под каждую платформу и использовать их. Но если честно за 3 года того что мы используем флаттер нам этого реально не понадобилось. Флаттер развивается просто семимильными шагами.
2. Стоимость разработки не в 2 раза дешевле это верно, но смело в 1.5 раза точно.
3. Я не видел на столько простого для изучения фреймворка как флаттер. Откуда у вас это уверенность что на нем сложней писать? Он легкий и простой. Можно создавать на столько гибкие интерфейсы что вы в Котлине или Свифте замучаетесь это делать. Я знаю о чем говорю, до этого профессионально занимался нативной разработкой под Андройд. Когда перешёл на флаттер влюбился сразу в эту технологию, хотя всегда был противником кросплатформенных решений.
Вы менторством не занимаетесь?
Очень много людей в кроссплатформу перешли из натива, я же перешел в нее из фронтенда. Учитывая что я занимался React, то мне все равно легче было понять flutter, чем RN, единственное что было удобнее в RN это знакомая верстка интерфейса, но во flutter можно привыкнуть, хоть и не так читаемо. Dart вообще легко учится если знаешь TypeScript, так как они очень похожи.
на флаттере самая главная фича это hot reload с ней очень быстро разработка идет, особенно интерфейса и логики тоже, на нативе любая перезагрузка в долгое ожидание
Я один ненавижу тупые, кликбейтные заголовки? Нет ни одного вменяемого человека (даже полностью влюбленного во Flutter) кто скажет, что он Полностью заменит натив.
я скажу
флаттер заменит натив скриньтн
Спасибо, как раз выбираем на чем писать приложение для стартапа, помогли разобраться
Вот мне кажется лучше еще поразбираться) Потому что сам делаю свой маленький стартап сейчас на Flutter и очень доволен, два раза писать на нативе под каждую платформу лично я бы не потянул
Я думаю что это рофл со стороны автора этого комментария , половина из доебов к флаттеру не правдивы , сам писал на дроиде и перешёл на флаттер . Писать горазда удобнее и быстрее на флаттер чем на дроиде. Для новичка не трудно будет освоить эту технологию . Самый главный минус флаттера это - то что он не имеет прямого доступа к ОС, чтобы допустим подключить тот же блютуз нужно использовать сторонние библиотеки для флаттер. Скорость не так сильно уступает нативке, но и размер апп будет больше чем у нативке . Вот и все главные отличие , а то что этот чел говорит в видео это только его мнение , и по его словам видно что с флаттером этот человек никак не знаком и почитав пару статей делает свои незначительные выводы . Я не сторонник кроссАпп
При всём уважении. Полное непонимание работы, как минимум, Flutter (никто не говорит Dart/Flutter). Многие в комментах тут, видимо из уважения к автору, как-бы соглашаются в посылом, но правят его в логике, а я прямо скажу, что и с посылом не согласен. Во-первых, бо`льшая часть логики ошибочна (не стану повторять, об этом тут многие написали подробнее), а во-вторых, и сам вывод "НИКОГДА не заменит нативную разработку" я бы смягчил. Да из сегодняшней точки ясно, что нативная разработка имеет ряд серьёзных плюсов перед кроссплатформенной, но будет ли так всегда?... Вопрос открыт)
Еще отдельно скажу на счет выгоды для стартапов. Сергей говорит о том что выгодно сделать одно приложение на нативе, проверить, а потом уже делать второе опять на нативе... Ок... А не выгоднее ли сделать приложение на флаттере ориентированное на одну платформу, а потом, если нужно, доработать его, чтобы на второй платформе работало не хуже. Неужели два нативных приложения сделать дешевле? Это тоже вытекает из полного непонимания предмета рассуждения. Если честно, есть ощущение, что Сергей теперь может вещать что угодно с серьезным лицом, а все должны слушать преклоняясь перед опытом и возрастом. Очень неприятно.
я вам рассказываю про бизнес, а вы не слушаете. Два нативных приложения сделать не дешевле, а выгоднее. По cach flow. Сначала вы тратите на одно нативное приложение - потом получаете денег - потом тратите на второе. или не получаете денег и не тратите на второе. Это выгоднее, чем сразу заплатить 1.7-1.8х а потом ждать денег. Которые могут и не прилететь
@@SergeyNemchinskiy Повторюсь. Сделать два нативных приложения и не дешевле и не выгоднее. Выгоднее сделать одно приложение на флаттере ориентированное изначально на одну платформу, так как стоить это будет столько же, сколько стоит одно нативное приложение на эту же платформу, а то и дешевле, если говорить конкретно про флаттер (затраты на тесты и дизайн одинаковые, а время разработчиков, скорее всего, уйдет меньше). А затем, если будут деньги, можно будет не снова платить за целое нативное приложение, а просто доработать существующее. Если даже брать Ваши цифры 1.7 или 1.8 (хотя они тоже странные), то останется доплатить 0.7 или 0.8 от стоимости нативного приложения. Математика не в Вашу пользу даже если брать Вашу же логику и цифры.
Я понимаю что Вы про бизнес. Но если Вы думаете что шаурму делают с сосисками, то правильно просчитать кэш флоу шаурмячной не получится как ни крути...
отговорил от изучения этой темы )))
Спасибо 👍
Очень перспективная тема, а главное визуально приложения выглядят идентично.
А как относитесь к Kotlin Multiplatform? Есть ли преимущества перед flutter?
это немного разные вещи. KM это про бизнес логику, и UI тебе все равно придется на чем то писать. Flutter это в первую очередь про UI
Дарт это язык, флаттер фреймворк чтобы делать приложения. Что там странно сделано?
с той-же степенью странности что и Джава/Спринг или Пайтон/Джанго
С точки зрения отсутствия поддержки конкурентами производителями нативных приложений (IOS, Android) получается что Flutter(Dart) в выигрыше по сравнению с React Native т.к. его как минимум поддерживает компания Google с продуктом Android )
Расскажите почему GNU GPL это плохо я не понимаю. В чем тут проблема? Если можно конкретные примеры?
Unity3d как вам? он же тоже кроссплатформенные вещи дает делать?
Как раз для стратапов Флаттер и выгоден.
Очень ждал видео на эту тему! Считаю, что кроссплатформа с течением времени будет всё больше набирать популярности и заменит натив.
Флаттер не первая попытка сделать кроссплатформенную мобильную разработку. До этого был xamarin, apache cordova... короче ничего путного не вышло
Ну заменить это врядли) Свой кусок рынка откусит и упрется в потолок, а полностью вытеснить не сможет
@@Tualantino так флаттер сильно отличается от ксамаринов в лучшую сторону. и тут уже можно сказать, что все вышло
Спасибо, хороший обзор!
Если свет увидит когда нибудь фуксию - Dart/Flutter- будет сам нативной вещью)
Ну такое .. Фуксия умерла еще 2 года назад, неуспев появиться на свет ..
Что там такого в Флаттере что времени занимает как два нативных приложения ?
Там если приложение не использует сложные платформозависимые вещи (например приложение ходит в сеть и что-то там показывает) то время на два приложения стремится к времени потраченному на одно приложение. Даже если есть работа с блютусом, пермишенами и т.п. то как правило такого кода не очень много.
Спасибо за видео, но с тезисами не согласен.
Я разрабатываю приложения и на RN и Swift/iOS сейчас больше смотрю в сторону Flatter.
RN - сейчас мега популярен потому, что на рынке JS разраб дешевле чем нативный и он может написать и прилу на мобильные платформы и админку напилить а если ноду знает вообше топ все делает один человек. - грубо говоря - команда конечно.
Нативные прилы нужны если нужна мега производительность что б манипулировать потоками на GCD и перебрасывать анимации в GPU что б не нагружать проц.
Flutter же в свою очередь имеет больше плюсов с точки зрения разработки - НЕ БИЗНЕСА а разработки подчеркиваю.
Это :
- OOP
- Widget model
- сотни анимаций кастомных
- отличная дока от Google
- постоянные обновления
- возможность писать приложения для iOS/Android/Android TV/ Mac/Windows/Linux
- более правильный JS - Dart - просто топ что то среднее между Swift и JS
крч очень рекомендую
А в целом большое спасибо за видео!
Подумайте над тем что будет через 3-4 года. Да, flutter сообщество всё такое, возможно и кол-во вакансий будут равны. Сейчас все дернулись изучать этот язык. В итоге вакансий также, а конкуренция выше.
Вывод: изучайте flutter. Нам жить легче будет.
Здравствуйте Сергей, вы сказали под андроид разработка - жаба, но теперь есть Котлин. Тоесть вы списываете жабу со счетов, я правильно понял
Сергей, спасибо за сравнение 👍🔥
Отчасти пошёл на JS чтобы если вдруг что писать на React Native 🤣
3:46 все отличия кода приложений для Android и iOS достаточно покрыть тестами в каждой из двух веток контроля версий Flutter приложения, и нет проблем))
ну вообще-то не так просто
Статистика с доу на 04.06.2022:
Вакансий по react native 73, flutter 32, android 61, ios 79
Поэтому уже сейчас видно, что спрос крассплатформы почти приблизилась к нетиву
ну вообще-то это может означать большую текучку в кроссплатформе. лучше смотреть на результаты опроса
А почему нету упоминания о Xamarin Native? одна кодовая база с нейтивной юайкой и возможностями
Спасибо за информацию) Очень хотелось бы что-то подобное про Xamarin)
++
+
Разве он еще не вымер?
Разве он еще не вымер?
@@narikrus94 Вымер
Дякую, цікаво, зрозуміло. Але ІМХО тема не до кінця розкрита. Як що до варіанту третьої сторони (той же Майкрософт з .NEN, проект Кзамарін, якщо не помиляюся)? Чи там ще дуже вилами по воді => незрозуміла реакція ОС-х команд => назараз нема про що говорити?
Все тезисы ошибочны, вверху об этом уже писали. Мы выбрали флаттер и не прогадали. Деньги пилятся
Лайк Сергей, согласен.
Полностью согласен, что flutter никогда не заменит нативку, хоть и сам уже более 2х лет на нём работаю.
Не согласен с тем, что код на флаттера значительно сложнее нативки. На деле примерно так же, а некоторые вещи (например геолокация) на флаттера делать даже легче.
Реализовать на флаттере можно буквально всё. Есть возможность вызывать нативный код с помощью method channel. Кучу библиотек с различными готовыми решениями, которые внедряются на раз-два.
Но несмотря на всё преимущества, приложения на флаттере ощущаются немного иначе, чем нативные. Если на андроиде это не так заметно, то любой iOS юзер тут же поймёт, что приложение не нативное
Напиши примеры приложений из play market плз. Хочется посмотреть продуктовые варианты. Недавно начал изучать Flutter
@@nurmuratsmagulov3711 ArtBeat приложение. Муж моей знакомой сам написал.
По сравнению со свифтом дарт это удовольствие, а не вечная боль.
Каждый суслик хвалит свое болото.... Увы Сережа, мира ИТ идет своим путем - не зависимо признаете или нет ФЛАТТЕР И ДАРТ.... Ваше мнение сугубо согласно вашей коммерции... Это большая проблема стран СНГ - мир давно ушел вперед. Ваше мнение - НЕ ВАЖНО !!!!!!
3:42 -- здесь думаю кроется серьезная ошибка -- поскольку компании как раз хотят сбросить с себя груз развития чего либо -- в том числе языка программирования (тем более). Енто требует немалых вложений, которые компании хотели бы приберечь себе. И если будет нормальный инструмент разработки -- думаю компании нет смысла его не поддерживать исключительно потому, что енто продукт какой то конкурентной фирмы -- наоборот -- лучше бы сделать так, что бы могло нормально работать у тебя на платформе и с ентим фреймворком от конкурента.
Пишу достаточно сложное и красивое приложение на флаттере, проблем с красотой, анимацией, производительностью и отображением самого ui, не замечено. Если они и есть, то достаточно легко решаются(что уже не попадает под понятие (проблема)). К примеру была задача сделать карты как в циане. Юай в связке с блоком, прямыми руками и понимающим бэком, позволяют решить данную задачу на ура. Легко сказать, что кросс это бред, а вот детально пояснить, разобравшись в вопросе досконально, это видимо проблема. Есть знакомые которые ушли с нативки в кроссплатформу и вот что то я не заметил их негативной реакции.... только положительные отзывы. А на тему 1.7 1.8, ну это уже от правильности рук зависит. Очень многое зависит от архитектуры, если она изначально правильно построена и в процессе построения приложения улучшается, то тут хочешь не хочешь, разницу в качестве и производительности на ios или android придется поискать. Бывают конечно примеры команд, которые пишут прямиком из 2018 года, но это индивидуумы, которые не хотят пользоваться всеми благами, которые предоставляет команда гугла(лично проводил ревью приложения, в котором 1 мать его класс содержал в себе и бизнес логику и юай и экстеншены и по строкам больше 1000). Видео конечно познавательное, но если у разработчика руки из жопы, то он и на нативе напишет то, что будет дико лагать и тормозить.
Насчет сложности как по мне аргумент слабый. Да, безусловно тестов будет больше, но это обусловлено именно разработкой под две платформы, логично, что у свифта и котлина таких проблем не будет так как писать можно будет только под одну платформу, а если же одно приложение писать на двух разных языках, то, на мой взгляд это будет однозначно +сложнее чем написать его на флаттере, просто потому что это два разных языка. Да и в принципе синтаксис у дарта проще и понятнее чем у котлина и тем более джавы(недавно начал учить дарт и имея опыт в js и python очень быстро понял что к чему)
В Андроїд для розробки ще використовуються С та С++ з компіляцією сервісів та JNI бібліотек під кілька архітектур одночасно.
Автор где-то читал про flutter, но особо не вникал. Для справки, движок флаттера, вроде отрисовывает весь визуал с нуля. Таким образом не использует налитные компоненты той или иной операционной системы. Поправьте меня, если я ошибаюсь
Спасибо за рекламу флаттера) пойду на флатер пилить сразу под две ос)
Хороший видос, согласен почти по всем пунктам, я RN девелопер)
все еще пишешь на RN?) Все знакомые воют от него. флатер в каком-то смысле спасение.
Залежить від додатку та його цілей.
Якщо у вас аппка це: UI та робота з веб-сервісом. Flutter все покриє.
Для Android як на мене в більшості випадків можна брати Flutter/Dart замість ADT/Kotlin.
Та якщо iOS аппка потрібна була для галочки.
Якщо ви в додатку на повну використовуєте інтеграцію з системою:
* Кастомно працюєте з камерою та відео, звуком
* Використовуєте системні екстеншени
* Є аппка для Apple Watch
* В Background треба працювати
* Ви перфекціоніст і вам треба натівний ux для наприкад Tableview/ColletionView
То Flutter буде бідось. Вам потрібно буле робити багато бріджів, саппорт яких як на мене буде дорожчий натівної аппки.
Почему тогда есть кроплатформа на десктопе, а на мобилках нет. Windows ведь тоже конкуренты Apple, однако есть тот же QT С++ на котором можно пилить приложухи под Windows, Mac OS, Linux, на Java есть куча GUI фреймворков для кроссплатформенной разработки под desktop. Не пойму, в чем проблема сделать ту же кроссплатформу под мобилки.
Проблема в GUI. Оно не может быть одинаковым для мобильных систем и для десктопных систем. И это надо реализовывать.
Для игр сделали. Я тоже делаю кроссплатформенный движок, но на Паскале. Но для игр, с одной стороны, проще, а с другой там есть свои проблемы.
Самое главное преимущество Flutter - он реально кроссплатформенный, как для всех мобилок, так и для всех десктопов + веб
На флатере все намного легче я сам разработывал нативное приложение на джава чтобы элементарно список или таблицу на форму тратишь 2-3 часа времени а флаттере это делается за пол часа, также navigation drawer это несколько строк кода во флатере а в нативке это надо сделать макет программировать.
Попробуй на jetpack compose,тоже в декларативном стиле быстро писать можно и джаву в нативе юзать,такое себе занятие для новичков
Доброго времени суток.
Подскажите такую глупость, на сколько разумно делать приложение под айос\андроид в котором функционал "по заказу пиццы" с помощью вебвью ?
Можно легко сделать на flutter
За счет вниманию в первую очередь к UI flutter позволяет писать приложения в разы превосходящие по красоте нативные аналоги. Так что на флаттере в какой-то степени даже сложно написать некрасивое приложение.
КАВО? 🤦♂️ Что ты несёшь...
Флаттер пытается повторять концепции нативного ui для каждой платформы. Как раз потому что он ПЫТАЕТСЯ ПОВТОРЯТЬ, его возможности в построении ui гораздо уже чем у натива. Натив умеет все что и флаттер, но флаттер не умеет все что натив.
@@_Smai1e_ лол нет, у флатера есть все что у натива, а того чего нет у натива делается кастомно, так вот во флатере сделать чтото кастомно намного проще
@@oleksandrklymenko8272 Почему тогда все крупные приложения пишутся на нативе?
@@drovoseg потому что они легаси и уже не пишутся а поддерживаются. Я еще в 2019 начал писать очень крупное приложение на флаттере и мы уже релизнули множество версий.
@@oleksandrklymenko8272 да-да НАМНОГО проще чем в нативе...
Swift UI и Jetpack Compose так не думают
А плюсы подойдут для мобильной кросс разработки ?
не лучший выбор
Игровые движки это именно пример кросплатформы успешной. Но там билды не кросплатформенные а строго компилируемые под разные платформы так что здесь спорно считать ли их классически кросплатформенными
Флаттер именно такой: свой билд под каждую систему, оттуда и производительность.
@@alevlako да
смотрел видос - там комплитьися в плюсы
но пишет что найтив все равно быстрее (даже джава быстрее)
как так?
@@DanyloSyrotynskyy на десктопах джава программа медленно стартует потому что сначала поднимается JVM. Виртуалка Дарта более шустрая, но все равно это монстр по сравнению с легковесной программой, написанной для натива. Никогда не задумывался, но, похоже, на Андроиде JVM бежит всегда и ей скармливают джаву и Котлин - отсюда легковесность программ и их быстродействие.
@@alevlako типа в андроиде JVM вшита?
@@DanyloSyrotynskyy оказывается, всё хитрее ) Android не использует JVM для выполнения java программ, в нём используется виртуальная машина Dalvik, не являющаяся истинной JVM и не работающая с Java-байткодом. После запуска приложения Android, каждое из них выполняется в своей собственной виртуальной машине. Видимо, форкнуть Dalvik получается несколько быстрее, чем стартануть Dart VM.
Я так розумію що Kotlin набагато перспективніше ніж Flutter(DART)?
у каждого своя ниша
У меня нет такого интернета.. Не смотря на то что закалки есть... Смотрит за этим
тысячный лайк поставил )))
А що можете сказати стосовно Flutter для Веба? Чи е сенс замінити Angular JS на Flutter?
Вот до этого и правда ему далеко) Я и на веб пишу и на flutter. Flutter for web слабоват, это все признают. Но еще не вечер)
@@coolswood Благодарю за мнение)
Была попытка заменить JS на нормальный язык, но она провалилась. Flutter for web как игрушка для личного пет проекта может быть но не для бизнеса.
@@user-xc5cx7lh4l Спасибо, а что тогда лучше выбрать?
@@Proto_Astartes Ничего не меняется: React, Angular, Vue. Из новичков лично мне нравиться solid, но явно рано для бизнеса.
Как скачать на линукс убунту есть видео можете сделать видео как установить скачать и как пользоваться
Для несложных приложений - лучшее решение.
Язык программирования - java, фреймворк - spring. Не спрашивайте зачем так странно сделано, это их вопросы.
да, странно, все же всё пишут только на голом языке
@@ionizePlaying Вот именно!
Хороший байт на активність, зараз понабігають і розкажуть чому флатер/RN хороший чи поганий :D
хотелось бы увидеть видео о Golang
Главный недостаток Флаттера это маленькое количество вакансий, у нативной разработки 10+ лет приложений которые нужно поддерживать, да и новые продолжают писать на нативе.
Я думаю это потому что flutter очень новый, и не все пока готовы им пользоваться, пройдет время и уверен вакансий будет больше. Нативную разработку не заменит, но думаю будет тесно с ней существовать, а вот RN флаттер может вполне заменить в будущем.
@@ionizePlaying ну хз. Я вижу что про флаттер много говорят, снимают видео, но на рынке он пока востребован слабо, мало вакансий во всех странах и приложения флаттер это банальные e-commerce приложения, всякие пиццерии и т.д. Я думаю эта часть рынка и отойдет флаттеру, приложения для банков тоже можно написать, но банки не будут экономить и сделают это на нативе, как и многие другие. Например на desktop обычно пишут сложные приложения и вытянет ли флаттер все требования по производительности это вопрос, а писать магазин пиццы на desktop бред, есть web, да и вообще многое можно реализовать в WEB и это будет более удобно, нет зависимости от какой либо платформы и не нужно ничего устанавливать дополнительно, а push уведомления это вопрос времени. Для web есть куча отличных фреймворков и на всем этом писать на typescript куда более удобнее чем на dart-flutter, прикол web еще в том, что ты так же пишешь один код и можешь запускать его на любом устройстве где есть браузер и это будет нативно.
Хотя я и фанат флатера, но осознано воспринимаю тот факт что нативка всегда будет иметь весомые преимущества над кросплатформой.
Расскажи про Lisp
Вначале nodejs холиварили про безнадёжность, теперь до flutter'а дошли со своим экспертным мнением.
Сергей, вы маг
Хотел вынести вопрос о выборе стратегии разработки в условиях стартапа на стрим, а вы в итоге сыграли на опережение
бред пронёс ваш Сергей, для стартапа флаттер самый сок, за минимальные средства выйти на 2 платформы, собрать первые деньги и если на флаттере работали реальные рукожопы, переписывать на натив, думая что будет лучше
Все так думали про perl а потом такие
- а где перл?
А по-моему писать кросплатформенное приложение гораздо быстрее чем 2 нативных. Например приложение заказа пиццы я напишу в одиночку за день-два, и сильно сомневаюсь что нативные разработчики напишут его быстрее
Да плюс минус одинаково будет по времени)
@@user-mk8gx9mr1z если будут писать параллельно 2 команды, то времени займёт столько же, но человеко-часов намного больше
Конечно никогда не заменит. Кто так не считает, то читайте рассказ Айзека Азимова "Профессия". А если голова работает, то вспомните WordPress и "ручную" разработку сайтов.
А этот вопрос вчера на стриме был
На Flutter писать код сложнее, чем на нативном?) Странное заявление. Суть Flutter, каки остальных кроссплатформенных технологий,это УДЕШЕВЛЕНИЕ производства софта. Система флаттера построена на виджетах, которые в свою очередь уже являются врапперами каких-то групп нативных элементов. Нативщиков, конечно же, не вытеснит, НО, значительную часть пирога точно откусит
Бред вы пишите про врапперы. Движок flutter отрисовывает все элементы.. Так что это не нативные
тем временем на них уже пишут крупные проекты )
Категорически не согласна со всем, озвученном в видео) Как будто вы про флаттер совершенно ничего не знаете
Парни, кто возьмёт в ученики на дарт/флаттер?
ее заменит css
Немчинский Барабанщик? Не знал. Так мы вдвойне коллеги))
Зачем нужен flutter, если есть Kotlin MultiPlatform.
KMP - вещь перспективная, но все еще сырая(
он курсы продаёт, появится курс на флаттере, будет рассказывать другую сказку. По факту 90 процентов запросов может покрыть сам сдк, остальное решается плагинами и ЕСЛИ такого плагина нет или нужно доработать существующий, то всегда можно найти фрилансера, который сделает это для вас. Скажете гемор? гемор для бизнеса оплачивать минимум 2-х прогеров на 2 стека технологий, чем 1-го на флаттере. Скажете времени разработка больше занимает? Да как только появится хотелка/переделка, нужно в 2-х платформах править, пару таких хотелок и время на разработку тут же выравнивается. А сколько будет таких хотелок? Рассказ про чувство поведения нативной или кросплатформы - тож из пальца и актуально ток для динозавров с 4-го айфона сидящих, так как я без понятия как должно вести себя истинно нативное приложение, в сторах диких заопарк технологий и каждый лепит по своему, работает, не логает - значит всё норм
"Выгодно разрабатывать приложение, не требующее красот", а затем "функционал заказа пиццы" - так в этом функционале ничего, кроме красот и нет. Нужно красиво подать пиццу, чтобы захотелось её купить, удобный и красивый UI, чтобы хотелось путешествовать по магазину пицц.
А какое приложение "требует" красот? Да тем более, по-максимуму использующая функционал платформы. "Очистка памяти"? Сканер кодов?
А стартапу почему нельзя? Да большинство приложений стартапов как раз и похожи на заказ пиццы, только, возможно, не такие красивые, т.к. это стартап - и красивостями заморачиваться изначально нет смысла - после проверки гипотезы можно нанимать дизайнеров и верстальщиков.
Даже по всем высказанным критериям именно стартапам Flutter и нужен. Плюс к этому - язык один, а не три. Порог вхождения ниже, при этом вёрстка относительно красивой получается "из коробки" и на верстальщике можно экономить. Hot reload существенно облегчает и тем самым удешевляет разработку, что особенно важно в условиях постоянной переработки приложения и интерфейса в условиях проверки и корректировки гипотезы. И многое, многое другое.
Сразу видно что сам на фдаттере не писал код. С react native вообще не сопоставимо. Flutter для стартапных проектов создан.
02:56 🤯
что за подмена понятий?
2:01 Нативная разработка - это разработка под данную архитектуру. А не то что он говорит, цитата: "которое работает только на этой ОС".
2:48 Кросс-платформенная разработка, это не только, цитата: "написать один раз код, а потом выполнить его сразу и на Android и на iOS и ещё где-то".
Кросс-платформенная разработка - это когда пишешь один раз код и можешь его использовать на большом множестве ОС: Android, iOS, Windows, Linux и других. Только компилировать код надо будет именно под данные системы.
5:27 Человек знает о чём говорит? Я не знаю как во Flutter, я на Паскале отделяю код для одной ОС, для другой ОС, для третьей ОС и т.д. И любые изменения в программе, ни как не влияют ни на одну из ОС. Все функции работают с учётом ОС. При попытке внести изменения для одной ОС, это ни как не повлияет на изменения другой ОС. Для этого как раз и делаются функции, которые учитывают ОС на которой они работают (если интересно, то можете посмотреть как устроен нативный код на ZenGL в Паскале).
6:15 читаем что я писал о 5:27 и обнуляем слова Немчинского до нуля.
Я надеялся что-то полезное найти...
Dart сложнее Kotlin, или, прости Господи, Obj-C? Рили?🤦♂️
Ты не внимательно слушал. Не Dart сложнее котлина. А кроссплатформенная разработка сложнее нативной
@@user-bo7yz7wb1h Не сложнее. С учетом того, что юай и бизнес-логика на Флаттере пишется раз в 5 быстрее, чем на нейтиве, освободившиеся ресурсы можно быстро кинуть на разработку platform-specific вещей и быстро закрыть недостающие бреши плагинами или голыми method channel-ами, и то, если готовых решений нет.
@@andreasstager1642 Серьезно? Бизнес логика стает в 5 раз проще от смены языка?
А откуда необходимые знания про "method channel" у разработчика который ничего не понимает в нативной разработке?
@@user-xc5cx7lh4l Не бизнес-логика в 5 раз проще от смены языка, а все вместе в 5 раз проще, потому что юай гораздо проще нативного, а бизнес-логика тесно совмещена с юаем посредством любой популярной и эффективной стейт менеджмент техники, и все вместе под все возможные платформы пишется один единственный раз.
Насчет "разработчика, который ничего не понимает в нативной разработке" - по-твоему, Флаттер-девелоперами рождаются, или Флаттер используют исключительно тупые индусы, у которых это первая в жизни платформа?
Если что, то лично я пришел во Флаттер, имея за плечами 20+ лет опыта в разработке вообще, и в нативной в частности, причем не в той "нативной", под которой сейчас понимается этот ваш Котлин и Свифт, а в делфи и крестах. Сейчас параллельно занимаюсь бэкендом на Расте.
Кстати, не имея особого опыта в Андроиде до прихода во Флаттер, через неделю уже вполне комфортно себя чувствовал в написании нативных плагинов на том же Котлине с использованием method channels.
@@andreasstager1642 Ну все зависит от задач. Если 90% приложения - это UI, то вполне возможно. Но далеко не у всех приложений все так просто. Ну и естественно после 20+ лет опыта легко прыгать с технологии на технологию.
А вот надо хотя б минимально подписать документ сертификатом согласно ДСТУ или распознать лицо на фортналке, прочесть состав с камеры или любую другую бизнес-логику то Флаттер никак не помогает. Для каждой задачи - свой инструмент.
Отличный видос. Три месяца охеревал от флатера 1.х, сбежал в слезах на Android/kotlin
А что такое?
@@natalinatalitahere дарт это за гранью добра и зла
А что такое? Дарт имеет понятный и современный синтакс, просто меньше всякого сахара по сравнению с Kotlin. Зато на Flutter несравнимо приятней разрабатывать чем на нативном Андроиде, особенно кастомный UI.
@@Sasha25392665 и то, что такой выбор есть - делает меня счастливым :) удачи
ТРЕБОВАНИЯ ДЛЯ НАЧАЛА ОБУЧЕНИЯ
Опыт работы программистом не менее 3х лет. 😂😂😂
Сергей, вы уже дома? Там тепло?
дома, Даже жарко :)
Что значит не заменит нативную разработку? Flutter и есть нативная разработка
Что
на самом деле нативная разработка - это разработка под данную архитектуру, а не по данную ОС.
@@elshanaghayev9175 Нативная разработка под Андроид это разработка на Android NDK. Флаттер это разновидность под Android NDK. Разработка на Котлин или Джава это Android SDK. Поэтому Флаттер и является нативной разработкой, также таковым является разработка на Qt и на C++ Builder Embarcadero, а не разработка на Android SDK на Джава и Котлин. По моему приложение Телеграмм сделан на Qt, если я не ошибаюсь
@@sergshutk2757 Нативная разработка под Андроид это разработка на Android NDK. Флаттер это разновидность под Android NDK. Разработка на Котлин или Джава это Android SDK. Поэтому Флаттер и является нативной разработкой, также таковым является разработка на Qt и на C++ Builder Embarcadero, а не разработка на Android SDK на Джава и Котлин. По моему приложение Телеграмм сделан на Qt, если я не ошибаюсь
Как по мне, ОФИЦИАЛЬНОЙ поддержки нет даже и у нейтив разработки)
Каждый чёртов год великие Гугл/Эппл/Монополист_компани придумывают новые требования и приходится переписывать часть кода чтобы поддерживать последнюю версию или вообще просто чтобы держаться на рынке (просто чтобы приложение было в маркете)
(Я уже молчу о переобувании языков java->kotlin. Я не против того что они выбрали язык по лучше, даже за. Но факт есть факт. Про Objective-C->Swift ничего не могу сказать, так как пришёл в флаттер после многих лет нэйтив андроид разработки)
По поводу "На флаттер сложнее писать код из-за двойного кол-ва багов и двойного кол-ва тестирования" - отчасти согласен отчасти нет. Писать гораздо быстрее и проще за счёт удобства построения UI и его общения с теми же контроллерами, вьюв моделями (у каждого своё. Главное что проще рисовать сам UI).
Двойное кол-во багов уничтожается двойным кол-вом тестирования, вдобавок за 4 года разработки встречал ну очень уж мало таких специфик ОС багов, обычно они легко обходятся.
А двойное тестирование не избежать. Даже если приложение писать на нейтив ИОС+нейтив Андроид - всё равно придётся тестировать и ИОС и Андроид. Так в чём тогда выигрыш нейтив в данном случае?
Ну а красота - вообще дело каждого. Как по мне, я в нейтив java/kotlin никак не мог нормально сделать вот реально красивые анимации. Только когда добавили ConstraintLayout и то только когда им прикрутили анимации и ТО выходило как-то слишком линейно, какие бы я там выкрутасы не пытался сделать. На Flutter гораздо проще и интереснее работать с анимациями. Естественно с скруглением углов и прочим тоже (а скругление углов, как по мне, главная боль андроид разработчика в некоторых UI местах).
Ну и естественно, как некоторые люди в комментариях писали - на флаттер написание НЕЙТИВ кода не нивилировано. Можно писать нейтив код в том же проекте андроид и swift в иос, а из флаттера просто дёргать эти методы.