🔗 Telegram канал "Android Broadcast" ttttt.me/android_broadcast 💰 Поддержать проект на Boosty boosty.to/androidbroadcast 🔗 Чат сообщества в Telegram ttttt.me/android_broadcast_talks 🔗 Telegram канал "Kotlin Broadcast" ttttt.me/kotlin_broadcast
Прикольное интервью. И технология интересная, но ну на фиг) Кстати хотят я сам топлю за KMM, но хотелось бы интервью с путевым flutter разработчиком, который не будет тупо нахваливать свое болото, а объективно расскажет все плюсы и минусы. Думаю подобный контент будет многим интересен.
Прошу прощения за не совсем корректный первоначальный комментарий. Я имел ввиду интервью во множественном числе. В ваших интервью лишь вскользь упоминается Flutter. Хотя сейчас это, пожалуй, самое популярное кроссплатформенное решение, позволяющее шарить не только бизнес-логику, но и UI. Я понимаю, вам нравится больше KMM. Но не рассказывая о возможностях Flutter, на мой взгляд, не доносите общую картину мобильной индустрии.
@@SUPERPUPERDRONCHIK что-то путаете вы с журналистким каналом и расследованиями. Я не гонюсь сравнить все. Никто вам нигде не даст объективной точки зрения, а выразит свою позицию. Мне Flutter не заходит, желания в нем разбираться нет
@@AndroidBroadcast а ты попробуй разберись. и не тормози всех за собой своим нативным андроидом. ты уже про непопулярный и C++ ный QT заговорил... тебе уже нечего рассказывать, ну присмотрись ты к тому что предлагает текущее время!
Расскажите, пожалуйста, как вы используете cmake? Я обнаружил, что при использовании его в кюткриэйторе, нет возможности подключать другие проекты. Как можно было так накосячить?
Сколько пользуюсь 2 гис, только заметил язык чтобы поменять применить нужно перезагрузить приложение) это удивляет реально нет метода аюв реальном в ремени менять ? Анимации нету на нажатие кнопок как то сухо или это специально?
@@AndroidBroadcast к примеру, при отключении зависимости в стандартном лаунчере от поискового движка(в AOSP. Там, где даже сервисов Гугла нет, как и поиска тоже), ломало всю сборку напрочь, хотя там ничего такого от него не было. При том, что даже с этой зависимостью не собиралось, ибо нужны были исходники GApps =). Ну или вот, при сборке обычного system.img, если нет в device tree конфига с ядром, то сборка тоже ломалась. Постоянно приходилось зависимости отключать. Благо, потом патчик написали и они до сих пор работали, до выхода Android 13. Сейчас снова приходится лезть ручками и отключать все зависимости =) До версии 8.0 со сборкой проблем вообще не было никаких, максимум, чисто под устройство правки. И то, конфигов в device tree =). Собиралось абсолютно всё.
@@AndroidBroadcast Это немного про разное, NDK это набор компилятора, системных библиотек и тд (которым, в том числе, собирается приложение на Qt), а сам Qt про UI и интеграцию с ОС.
Йо. Писать на языке без сборщика мусора еще то удовольствие. Плюсы годятся для написания систем, драйверов. Для прикладных задач есть языки с более комфортной работой. Да и синтаксис плюсовый в 21 веке уже выглядит старомодно. А так то можно упороться и на GO с Fyne писать под мобилки. С Flutterом сравнивать смешно. Во флаттере запускаешь один раз эмулятор, и редактируешь UI и тут же видишь результат, а не как в этой демке: две строчки добавил -> запускаешь на выполнение, останавливаешь, меняешь в коде еще пару строк -> опять запускаешь, смотришь, убиваешь, снова правишь и т.д. Как в старые добрые времена лет 20 назад ага? И это еще быстро собирается, а если нужно ждать перед каждым запуском по 3-4мин? Еще то удовольствие будет.
Там вроде смарт-поинтеры есть. Тут скорее вопрос больше к тому, насколько все будет лагать и тормозить на мобиле среднестатистического пользователя с использование не "старомодных синтаксисов" (вообще это крайне упоротый критерий, как определять новомодность, старомодность и на что это влияет?)
@@Alexey.Lapshin "вообще это крайне упоротый критерий, как определять новомодность, старомодность и на что это влияет?" А я вам скажу на что влияет. На читаемость и понимаемость кода, а значит на поддерживаемость. А про лаги и тормоза излюбленная тема, да, тех кто к месту и не к месту пропагандирует использование языков предназначенных прежде всего для системного программирования, а не прикладного каковым является написание обычных мобильных приложений. Давайте выйграем еще пару десятков наносекунд на выполнении этого участка кода написав его на ассемблере! Только вот обычная среднестатестическая мобильная аппликуха, ничего не вычисляет, а только бегает в сеть к бэкенду и отображает данные полученные с него и вообщем то больше ничего не делает, может еще в локальную БД что-то записывает. Таким образом плюсы здесь вряд ли дадут хоть какое-то ощутимое преимущество, а вот сложности в разработке добавять без сомнения. Я конечно не знаю, почему 2гис выбрала такую платформу для своего приложения, видимо это было оправданно какими-то весомыми соображениями. Ну, ОК тогда.
@@bulsond, в ответ на ваше исходное сообщение: Сборщик мусора имеется для декларативной среды, где обрабатывается QML и JS (ECMAScript). Одно из отличий по сравнению со средой браузеров в том, что нет объекта window или DOM API. Для обновления декларативной разметки на ходу есть проект QML Live (Luxoft). Также лайвкодинг прямо в браузере (webasm) можно попробовать в проекте QML Online (KDE). С Flutter сравнивать смешно, но для меня по другой причине. Гугл продает то, что уже работает много лет, но, как обычно, имеет "фатальный недостаток". И, если что, библиотека графики флаттера, как и хрома -- это skia, она на плюсах. Так что не вижу причин холиварить на пустом месте
@@yetanotherandreyev Архитектура Flutter как раз и подтверждает мою мысль. В основе база написанная на языке системного уровня - на C++. А сверху прикладной уровень написанный на дарте. И пользователь фреймворка пишет на языке прикладном, на Dart потому, что так конечному пользователю-кодеру проще, удобнее, комфортнее и быстрее в конечном случае. Для того и делаются разные слои, уровни и каждый инструмент-язык под него.
Исходный код Qt и Qt Creator открытый и никуда не делся. Например, готовые бинарники как были доступны в линукс-дистрибутивах, так и остались. Но, да, коммерческая европейская компания Qt Company сейчас не заключает договора в России и не пускает к своим сборкам с российских адресов.
@@yetanotherandreyev пробовал Qt. Очень полезная, а главное нужная технология. На город в 3млн целых 0 работ. Даже на compose 30 есть. С этим мусором можно только, ну вы знаете куда, пойти
Да почему такой постоянный хейт Flutter со стороны Android разработчиков? Что вам плохого сделала данная технология? Просто убила надпись в превью Flutter больше не нужен, как будто это что-то плохое... Вот уже как 4-ый месяц пришел на Flutter с нативного Android и не хочу обратно и не хочу делать какой-то хейт в сторону нативной разработки
Я против Flutter ничего не имею. Технология справляется со своей задачей, но лично у меня предпочтения другие (явно не QT). Превью больше для хайпа и привлечения внимания
Qml + qt = прощай лаконичность. Пишу два года на данном стеке. Любое изменение в плюсишной модели - это боль. Qml документация - это боль, сколько не боролся, но излишней информации придостаточно, как сделать то, что тебе никогда не понадобиться и испортит код. С выпуском обновлений для qml новых фич становиться больше, а старые фичи остаются. Разобраться с нагромождением новичку будет очень сложно. А курсов и пособий в инете мало. Если брать чистый qt, то никаких проблем не возникает, документация ок, код работает, ui строиться, но если связать это с qml... моя психика не выдержала, и теперь Я плавно перехожу на android разработку.
Кросс платформа зло. Вы лишаете индустрию сотен человек часов. Зачем писать один раз и будет работать везде (с незначительные правками) когда можно писать отдельное приложение для Андроид, МакОс, АйОс, Виндовс, Линукс и запрашивать у бизнеса за это деньги. Да и по итогу в теории получится шустрее и оптимальнее если нативно все а не через кросплатформ прослойки. Нативно имею ввиду относительно Андроид само собой это Джава и фреймворк для гуев нативный, для Винды ВинАпи, MFC, но никак ни UWP и не Maui. Любите кодить много, пока есть такая возможность (отсылка к ии)
@@ЯрославЛихачев-ф3д Это комплексы не полноценного программиста, или недопрограммиста, боязнь того что выяснится он дилетант, не знающий что такое .so файлы
🔗 Telegram канал "Android Broadcast" ttttt.me/android_broadcast
💰 Поддержать проект на Boosty boosty.to/androidbroadcast
🔗 Чат сообщества в Telegram ttttt.me/android_broadcast_talks
🔗 Telegram канал "Kotlin Broadcast" ttttt.me/kotlin_broadcast
О каком докладе речь на 51:45? Дайте ссылочку.
Прикольное интервью. И технология интересная, но ну на фиг) Кстати хотят я сам топлю за KMM, но хотелось бы интервью с путевым flutter разработчиком, который не будет тупо нахваливать свое болото, а объективно расскажет все плюсы и минусы. Думаю подобный контент будет многим интересен.
Окт
Спасибо за выпуск. Интересное видео)
Интересно, на чем сделаны яндекс карты? Такси для ios они, вроде бы, делали на флаттере.
не такси, а приложение для таксистов "разные приложения"
Спасибо за видео. Коммент в поддержку!
Кирилл, уж пригласил бы flutter разработчика. Тех же ребят из Surf иля Яндекс. Пока как-то в интервью обходите стороной эту технологию.
Так оно и не про кроссплатформу и Flutter
Прошу прощения за не совсем корректный первоначальный комментарий. Я имел ввиду интервью во множественном числе. В ваших интервью лишь вскользь упоминается Flutter. Хотя сейчас это, пожалуй, самое популярное кроссплатформенное решение, позволяющее шарить не только бизнес-логику, но и UI. Я понимаю, вам нравится больше KMM. Но не рассказывая о возможностях Flutter, на мой взгляд, не доносите общую картину мобильной индустрии.
@@SUPERPUPERDRONCHIK что-то путаете вы с журналистким каналом и расследованиями. Я не гонюсь сравнить все. Никто вам нигде не даст объективной точки зрения, а выразит свою позицию. Мне Flutter не заходит, желания в нем разбираться нет
@@AndroidBroadcast а ты попробуй разберись. и не тормози всех за собой своим нативным андроидом. ты уже про непопулярный и C++ ный QT заговорил... тебе уже нечего рассказывать, ну присмотрись ты к тому что предлагает текущее время!
Да кстати... сколько разработчик на kotlin/java-андроиде тупо ждет пока проект соберется? полдня? во флаттере же быстрее разработка идет.
Можно посмотреть приложение для ios / android - Ubego
Написано на Qt / QML
Спасибо за выпуск, если бы у собеседуемого был микрофон нормальный было бы вообще огонь.
Не всегда получается сделать все как нужно, но стараемся
Откуда-нибудь можно скачать исходники демки?
Расскажите, пожалуйста, как вы используете cmake? Я обнаружил, что при использовании его в кюткриэйторе, нет возможности подключать другие проекты. Как можно было так накосячить?
Можете объяснить, что значит нет возможности подключать другие проекты ? add_subdirectory(path/to/other/project) не работает ?
@ГригорийШтыков вы так исходники подключить можете, а не другие проекты
@@usergnusmas6879 а что бы другой проект подключить нужно использовать другую систему сборки ? Или есть какое-то решение ?
@@usergnusmas6879 а вы смогли как - то решить эту проблему ? или используете другую систему сборки ?
а вы смогли как-то решить проблему ? или используете другую систему сборки ?
Jetpack Compose чем-то похож на Qt
Композ мне понравился куда больше
Поддерживаю, но идеи интересные в QT есть
Сколько пользуюсь 2 гис, только заметил язык чтобы поменять применить нужно перезагрузить приложение) это удивляет реально нет метода аюв реальном в ремени менять ? Анимации нету на нажатие кнопок как то сухо или это специально?
Хотя анимации есть в настройках нету кнопок анимации просто
Ты опоздал с QT минимум на 5 лет. У меня исторически несколько проектов QT/QML постепенно перевожу клиентов на флаттер повторно оплачивая работы.
И да под мобилу на qt написана телега
А что на счет материал дизайна?
Вряд ли он есть в QT
в qml есть модуль, как надстройка для контроллеров с material дизайном. controls.material
Спасибо!
Это он еще в исходниках андроида не копался. Там такой 3,1415926535здец. Особенно после выхода Project Treble(Generic System Image)
Что именно? Можно здесь или на почту kirill@androidbroadcast.dev
@@AndroidBroadcast к примеру, при отключении зависимости в стандартном лаунчере от поискового движка(в AOSP. Там, где даже сервисов Гугла нет, как и поиска тоже), ломало всю сборку напрочь, хотя там ничего такого от него не было. При том, что даже с этой зависимостью не собиралось, ибо нужны были исходники GApps =). Ну или вот, при сборке обычного system.img, если нет в device tree конфига с ядром, то сборка тоже ломалась. Постоянно приходилось зависимости отключать. Благо, потом патчик написали и они до сих пор работали, до выхода Android 13. Сейчас снова приходится лезть ручками и отключать все зависимости =)
До версии 8.0 со сборкой проблем вообще не было никаких, максимум, чисто под устройство правки. И то, конфигов в device tree =). Собиралось абсолютно всё.
какие еще есть способы писать на нативном C++ андройд приложения? кроме Qt
Android NDK
@@AndroidBroadcast а в unity3d например можно писать на си шарп. Он в итоге код превращает в яву и выполняется не как .so а как Ява обычная?
@@duoduoo6732 насколько знаю нет. Там своя виртуальная машина для выполнения C# скриптов
@@duoduoo6732 емнип, он тащит в APK рантайм для шарпов.
@@AndroidBroadcast Это немного про разное, NDK это набор компилятора, системных библиотек и тд (которым, в том числе, собирается приложение на Qt), а сам Qt про UI и интеграцию с ОС.
Я слышал, что QT более не работает в России... Как с этим ситуация?
Ребята использовали его открытую версию, подробностей не расскажу
VPN в помощь
qt -opensource проект, то что qt ограничили это комерческую лицензию и прекомпилные либы
Говорите "Qt", в заголовке "QT" (QuickTime) :(
UPD. А ещё говорите "КьюТи", хотя правильнее "Кьют".
КУ ТЭ :)))), так что Кью ти ещё не самый худший вариант
"Ну были значит 1960ые, мы выбрали cobol, потому что никаких си и паскалей ещё не было..."
🥱
Люблю QT
Ну всё, перехожу на кьюти. Потому что не надо лазить в стаковерфлоу.
Йо. Писать на языке без сборщика мусора еще то удовольствие. Плюсы годятся для написания систем, драйверов. Для прикладных задач есть языки с более комфортной работой. Да и синтаксис плюсовый в 21 веке уже выглядит старомодно. А так то можно упороться и на GO с Fyne писать под мобилки.
С Flutterом сравнивать смешно. Во флаттере запускаешь один раз эмулятор, и редактируешь UI и тут же видишь результат, а не как в этой демке: две строчки добавил -> запускаешь на выполнение, останавливаешь, меняешь в коде еще пару строк -> опять запускаешь, смотришь, убиваешь, снова правишь и т.д. Как в старые добрые времена лет 20 назад ага? И это еще быстро собирается, а если нужно ждать перед каждым запуском по 3-4мин? Еще то удовольствие будет.
Там вроде смарт-поинтеры есть.
Тут скорее вопрос больше к тому, насколько все будет лагать и тормозить на мобиле среднестатистического пользователя с использование не "старомодных синтаксисов" (вообще это крайне упоротый критерий, как определять новомодность, старомодность и на что это влияет?)
@@Alexey.Lapshin "вообще это крайне упоротый критерий, как определять новомодность, старомодность и на что это влияет?" А я вам скажу на что влияет. На читаемость и понимаемость кода, а значит на поддерживаемость.
А про лаги и тормоза излюбленная тема, да, тех кто к месту и не к месту пропагандирует использование языков предназначенных прежде всего для системного программирования, а не прикладного каковым является написание обычных мобильных приложений. Давайте выйграем еще пару десятков наносекунд на выполнении этого участка кода написав его на ассемблере! Только вот обычная среднестатестическая мобильная аппликуха, ничего не вычисляет, а только бегает в сеть к бэкенду и отображает данные полученные с него и вообщем то больше ничего не делает, может еще в локальную БД что-то записывает. Таким образом плюсы здесь вряд ли дадут хоть какое-то ощутимое преимущество, а вот сложности в разработке добавять без сомнения.
Я конечно не знаю, почему 2гис выбрала такую платформу для своего приложения, видимо это было оправданно какими-то весомыми соображениями. Ну, ОК тогда.
@@bulsond, в ответ на ваше исходное сообщение:
Сборщик мусора имеется для декларативной среды, где обрабатывается QML и JS (ECMAScript). Одно из отличий по сравнению со средой браузеров в том, что нет объекта window или DOM API.
Для обновления декларативной разметки на ходу есть проект QML Live (Luxoft). Также лайвкодинг прямо в браузере (webasm) можно попробовать в проекте QML Online (KDE).
С Flutter сравнивать смешно, но для меня по другой причине. Гугл продает то, что уже работает много лет, но, как обычно, имеет "фатальный недостаток". И, если что, библиотека графики флаттера, как и хрома -- это skia, она на плюсах.
Так что не вижу причин холиварить на пустом месте
@@bulsond не, ну если вы не умеете в плюсы, это не значит что все не умеют, и это будет тяжело поддерживать
@@yetanotherandreyev Архитектура Flutter как раз и подтверждает мою мысль. В основе база написанная на языке системного уровня - на C++. А сверху прикладной уровень написанный на дарте. И пользователь фреймворка пишет на языке прикладном, на Dart потому, что так конечному пользователю-кодеру проще, удобнее, комфортнее и быстрее в конечном случае. Для того и делаются разные слои, уровни и каждый инструмент-язык под него.
Звук напряг
Одним из препятствий разработки на Qt явплатный QtCreator, который из России сейчас и не купишь
Ребята собирают свою сборку и можно пользоваться
Исходный код Qt и Qt Creator открытый и никуда не делся. Например, готовые бинарники как были доступны в линукс-дистрибутивах, так и остались. Но, да, коммерческая европейская компания Qt Company сейчас не заключает договора в России и не пускает к своим сборкам с российских адресов.
QtCreator платный не нужен. Ценные платные вещи это Quick Compiler и возможность статической линковки.
Можно и яму палкой выкопать, но зачем?
Когда нет ничего кроме палки, а яма нужна - это неплохой вариант
@@AndroidBroadcast только мы не в каменном веке, и инструменты у нас есть
Пробовали Qt/QML? Если нет, рекомендую. Может захотеться называть палками другие проекты, которыми пользовались до этого.
@@yetanotherandreyev пробовал Qt. Очень полезная, а главное нужная технология. На город в 3млн целых 0 работ. Даже на compose 30 есть. С этим мусором можно только, ну вы знаете куда, пойти
@@_plaha_, неплохая попытка поспорить, но с таким же успехом можно искать php-фреймворки и радоваться вакансиям ( ͡° ͜ʖ ͡°)
Прикольно, чувак пишет на qt, а сам в гноме сидит, который на gtk))
Да почему такой постоянный хейт Flutter со стороны Android разработчиков? Что вам плохого сделала данная технология? Просто убила надпись в превью Flutter больше не нужен, как будто это что-то плохое... Вот уже как 4-ый месяц пришел на Flutter с нативного Android и не хочу обратно и не хочу делать какой-то хейт в сторону нативной разработки
Обычные токсики) Не обращай внимания)
Я против Flutter ничего не имею. Технология справляется со своей задачей, но лично у меня предпочтения другие (явно не QT). Превью больше для хайпа и привлечения внимания
Qml + qt = прощай лаконичность. Пишу два года на данном стеке. Любое изменение в плюсишной модели - это боль. Qml документация - это боль, сколько не боролся, но излишней информации придостаточно, как сделать то, что тебе никогда не понадобиться и испортит код. С выпуском обновлений для qml новых фич становиться больше, а старые фичи остаются. Разобраться с нагромождением новичку будет очень сложно. А курсов и пособий в инете мало. Если брать чистый qt, то никаких проблем не возникает, документация ок, код работает, ui строиться, но если связать это с qml... моя психика не выдержала, и теперь Я плавно перехожу на android разработку.
Бля,неужели реально у кого-то принято называть кутэ - кьют?
Все мы начинаем переиначивать слова. Например, говорим софт, а не софтваре. Тот же SQLite мало кто произносит как авторы говорят
Кьют правильно, много лет назад когда сам писал на нём интересовался и где-то на просторах сети нашёл комментарий от тех кто это название и придумал 😄
Qt читается как "cutie" (милашка, красотка)
Я запрещаю ругать flutter
Клуб кроссплатформенного мастерства двумя этажами ниже
Я запрещаю вам запрещать 🙂
А я расзапрещаю обратно
@@ДенисСаранин-м1и Все бы ничего, но такого слова нет 🙂
🚫🚫🚫
Кросс платформа зло. Вы лишаете индустрию сотен человек часов. Зачем писать один раз и будет работать везде (с незначительные правками) когда можно писать отдельное приложение для Андроид, МакОс, АйОс, Виндовс, Линукс и запрашивать у бизнеса за это деньги. Да и по итогу в теории получится шустрее и оптимальнее если нативно все а не через кросплатформ прослойки. Нативно имею ввиду относительно Андроид само собой это Джава и фреймворк для гуев нативный, для Винды ВинАпи, MFC, но никак ни UWP и не Maui. Любите кодить много, пока есть такая возможность (отсылка к ии)
Как спользовать React js + OS Aurora?
Кто ругает flutter, тот не программист
И того мама не любит
🤪
@@ЯрославЛихачев-ф3д Это комплексы не полноценного программиста, или недопрограммиста, боязнь того что выяснится он дилетант, не знающий что такое .so файлы