Писать UI для Android на QT

Поделиться
HTML-код
  • Опубликовано: 18 дек 2024

Комментарии • 112

  • @AndroidBroadcast
    @AndroidBroadcast  2 года назад

    🔗 Telegram канал "Android Broadcast" ttttt.me/android_broadcast
    💰 Поддержать проект на Boosty boosty.to/androidbroadcast
    🔗 Чат сообщества в Telegram ttttt.me/android_broadcast_talks
    🔗 Telegram канал "Kotlin Broadcast" ttttt.me/kotlin_broadcast

  • @pavel_trpn
    @pavel_trpn 4 месяца назад

    О каком докладе речь на 51:45? Дайте ссылочку.

  • @BeDb_MeDb
    @BeDb_MeDb 2 года назад +1

    Спасибо за выпуск. Интересное видео)

  • @sovrinfo
    @sovrinfo 2 года назад

    Спасибо за видео. Коммент в поддержку!

  • @botsynth
    @botsynth Год назад +2

    Интересно, на чем сделаны яндекс карты? Такси для ios они, вроде бы, делали на флаттере.

    • @querylab
      @querylab Год назад +1

      не такси, а приложение для таксистов "разные приложения"

  • @ari_514
    @ari_514 2 года назад

    Можно посмотреть приложение для ios / android - Ubego
    Написано на Qt / QML

  • @Polite_person_
    @Polite_person_ 2 года назад +10

    Прикольное интервью. И технология интересная, но ну на фиг) Кстати хотят я сам топлю за KMM, но хотелось бы интервью с путевым flutter разработчиком, который не будет тупо нахваливать свое болото, а объективно расскажет все плюсы и минусы. Думаю подобный контент будет многим интересен.

  • @ТимофейПшеничный

    Откуда-нибудь можно скачать исходники демки?

  • @SUPERPUPERDRONCHIK
    @SUPERPUPERDRONCHIK 2 года назад +4

    Кирилл, уж пригласил бы flutter разработчика. Тех же ребят из Surf иля Яндекс. Пока как-то в интервью обходите стороной эту технологию.

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      Так оно и не про кроссплатформу и Flutter

    • @SUPERPUPERDRONCHIK
      @SUPERPUPERDRONCHIK 2 года назад +1

      Прошу прощения за не совсем корректный первоначальный комментарий. Я имел ввиду интервью во множественном числе. В ваших интервью лишь вскользь упоминается Flutter. Хотя сейчас это, пожалуй, самое популярное кроссплатформенное решение, позволяющее шарить не только бизнес-логику, но и UI. Я понимаю, вам нравится больше KMM. Но не рассказывая о возможностях Flutter, на мой взгляд, не доносите общую картину мобильной индустрии.

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      @@SUPERPUPERDRONCHIK что-то путаете вы с журналистким каналом и расследованиями. Я не гонюсь сравнить все. Никто вам нигде не даст объективной точки зрения, а выразит свою позицию. Мне Flutter не заходит, желания в нем разбираться нет

    • @АнтонИцкович-х7у
      @АнтонИцкович-х7у 2 года назад +1

      @@AndroidBroadcast а ты попробуй разберись. и не тормози всех за собой своим нативным андроидом. ты уже про непопулярный и C++ ный QT заговорил... тебе уже нечего рассказывать, ну присмотрись ты к тому что предлагает текущее время!

    • @АнтонИцкович-х7у
      @АнтонИцкович-х7у 2 года назад

      Да кстати... сколько разработчик на kotlin/java-андроиде тупо ждет пока проект соберется? полдня? во флаттере же быстрее разработка идет.

  • @vladimirmartynov4747
    @vladimirmartynov4747 Год назад

    Спасибо!

  • @-31_75
    @-31_75 Год назад +1

    Jetpack Compose чем-то похож на Qt

  • @usergnusmas6879
    @usergnusmas6879 4 месяца назад

    Расскажите, пожалуйста, как вы используете cmake? Я обнаружил, что при использовании его в кюткриэйторе, нет возможности подключать другие проекты. Как можно было так накосячить?

    • @ГригорийШтыков
      @ГригорийШтыков 29 дней назад

      Можете объяснить, что значит нет возможности подключать другие проекты ? add_subdirectory(path/to/other/project) не работает ?

    • @usergnusmas6879
      @usergnusmas6879 29 дней назад

      @ГригорийШтыков вы так исходники подключить можете, а не другие проекты

    • @ГригорийШтыков
      @ГригорийШтыков 29 дней назад

      @@usergnusmas6879 а что бы другой проект подключить нужно использовать другую систему сборки ? Или есть какое-то решение ?

    • @ГригорийШтыков
      @ГригорийШтыков 29 дней назад

      @@usergnusmas6879 а вы смогли как - то решить эту проблему ? или используете другую систему сборки ?

    • @ГригорийШтыков
      @ГригорийШтыков 29 дней назад

      а вы смогли как-то решить проблему ? или используете другую систему сборки ?

  • @crazy-man
    @crazy-man 2 года назад +1

    Сколько пользуюсь 2 гис, только заметил язык чтобы поменять применить нужно перезагрузить приложение) это удивляет реально нет метода аюв реальном в ремени менять ? Анимации нету на нажатие кнопок как то сухо или это специально?

    • @crazy-man
      @crazy-man 2 года назад

      Хотя анимации есть в настройках нету кнопок анимации просто

  • @АнтонАлександрович-п1с

    Я слышал, что QT более не работает в России... Как с этим ситуация?

    • @AndroidBroadcast
      @AndroidBroadcast  Год назад

      Ребята использовали его открытую версию, подробностей не расскажу

    • @mirzaevtimur4519
      @mirzaevtimur4519 Год назад

      VPN в помощь

    • @silvermedved3562
      @silvermedved3562 11 месяцев назад

      qt -opensource проект, то что qt ограничили это комерческую лицензию и прекомпилные либы

  • @VoroninSergey
    @VoroninSergey 2 года назад

    А что на счет материал дизайна?

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      Вряд ли он есть в QT

    • @eukalyptusbonb0n
      @eukalyptusbonb0n Год назад +2

      в qml есть модуль, как надстройка для контроллеров с material дизайном. controls.material

  • @parennasubaru
    @parennasubaru Год назад

    Ты опоздал с QT минимум на 5 лет. У меня исторически несколько проектов QT/QML постепенно перевожу клиентов на флаттер повторно оплачивая работы.

  • @lumixbrothers
    @lumixbrothers 9 месяцев назад +1

    И да под мобилу на qt написана телега

  • @duoduoo6732
    @duoduoo6732 2 года назад

    какие еще есть способы писать на нативном C++ андройд приложения? кроме Qt

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад +1

      Android NDK

    • @duoduoo6732
      @duoduoo6732 2 года назад

      @@AndroidBroadcast а в unity3d например можно писать на си шарп. Он в итоге код превращает в яву и выполняется не как .so а как Ява обычная?

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад +1

      @@duoduoo6732 насколько знаю нет. Там своя виртуальная машина для выполнения C# скриптов

    • @SergeyGalin
      @SergeyGalin Год назад

      @@duoduoo6732 емнип, он тащит в APK рантайм для шарпов.

    • @SergeyGalin
      @SergeyGalin Год назад

      @@AndroidBroadcast Это немного про разное, NDK это набор компилятора, системных библиотек и тд (которым, в том числе, собирается приложение на Qt), а сам Qt про UI и интеграцию с ОС.

  • @vdrmkr
    @vdrmkr 2 года назад +8

    Спасибо за выпуск, если бы у собеседуемого был микрофон нормальный было бы вообще огонь.

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад +4

      Не всегда получается сделать все как нужно, но стараемся

  • @MentorOfMentors
    @MentorOfMentors Год назад

    Композ мне понравился куда больше

    • @AndroidBroadcast
      @AndroidBroadcast  Год назад

      Поддерживаю, но идеи интересные в QT есть

  • @terentyeff
    @terentyeff Год назад

    Это он еще в исходниках андроида не копался. Там такой 3,1415926535здец. Особенно после выхода Project Treble(Generic System Image)

    • @AndroidBroadcast
      @AndroidBroadcast  Год назад

      Что именно? Можно здесь или на почту kirill@androidbroadcast.dev

    • @terentyeff
      @terentyeff Год назад

      @@AndroidBroadcast к примеру, при отключении зависимости в стандартном лаунчере от поискового движка(в AOSP. Там, где даже сервисов Гугла нет, как и поиска тоже), ломало всю сборку напрочь, хотя там ничего такого от него не было. При том, что даже с этой зависимостью не собиралось, ибо нужны были исходники GApps =). Ну или вот, при сборке обычного system.img, если нет в device tree конфига с ядром, то сборка тоже ломалась. Постоянно приходилось зависимости отключать. Благо, потом патчик написали и они до сих пор работали, до выхода Android 13. Сейчас снова приходится лезть ручками и отключать все зависимости =)
      До версии 8.0 со сборкой проблем вообще не было никаких, максимум, чисто под устройство правки. И то, конфигов в device tree =). Собиралось абсолютно всё.

  • @lumixbrothers
    @lumixbrothers 9 месяцев назад +1

    Люблю QT

  • @AntonKashcheev
    @AntonKashcheev Год назад +1

    Говорите "Qt", в заголовке "QT" (QuickTime) :(
    UPD. А ещё говорите "КьюТи", хотя правильнее "Кьют".

  • @Alexey.Lapshin
    @Alexey.Lapshin 2 года назад

    "Ну были значит 1960ые, мы выбрали cobol, потому что никаких си и паскалей ещё не было..."

  • @vodnickk3134
    @vodnickk3134 2 года назад +1

    Да почему такой постоянный хейт Flutter со стороны Android разработчиков? Что вам плохого сделала данная технология? Просто убила надпись в превью Flutter больше не нужен, как будто это что-то плохое... Вот уже как 4-ый месяц пришел на Flutter с нативного Android и не хочу обратно и не хочу делать какой-то хейт в сторону нативной разработки

    • @sauvignonblanc5086
      @sauvignonblanc5086 2 года назад

      Обычные токсики) Не обращай внимания)

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      Я против Flutter ничего не имею. Технология справляется со своей задачей, но лично у меня предпочтения другие (явно не QT). Превью больше для хайпа и привлечения внимания

  • @stspvs
    @stspvs 2 года назад +1

    Одним из препятствий разработки на Qt явплатный QtCreator, который из России сейчас и не купишь

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      Ребята собирают свою сборку и можно пользоваться

    • @yetanotherandreyev
      @yetanotherandreyev 2 года назад +1

      Исходный код Qt и Qt Creator открытый и никуда не делся. Например, готовые бинарники как были доступны в линукс-дистрибутивах, так и остались. Но, да, коммерческая европейская компания Qt Company сейчас не заключает договора в России и не пускает к своим сборкам с российских адресов.

    • @SergeyGalin
      @SergeyGalin Год назад

      QtCreator платный не нужен. Ценные платные вещи это Quick Compiler и возможность статической линковки.

  • @serhioramires3166
    @serhioramires3166 Год назад

    Звук напряг

  • @lolkekadylbek
    @lolkekadylbek Год назад

    Ну всё, перехожу на кьюти. Потому что не надо лазить в стаковерфлоу.

  • @bulsond
    @bulsond 2 года назад +8

    Йо. Писать на языке без сборщика мусора еще то удовольствие. Плюсы годятся для написания систем, драйверов. Для прикладных задач есть языки с более комфортной работой. Да и синтаксис плюсовый в 21 веке уже выглядит старомодно. А так то можно упороться и на GO с Fyne писать под мобилки.
    С Flutterом сравнивать смешно. Во флаттере запускаешь один раз эмулятор, и редактируешь UI и тут же видишь результат, а не как в этой демке: две строчки добавил -> запускаешь на выполнение, останавливаешь, меняешь в коде еще пару строк -> опять запускаешь, смотришь, убиваешь, снова правишь и т.д. Как в старые добрые времена лет 20 назад ага? И это еще быстро собирается, а если нужно ждать перед каждым запуском по 3-4мин? Еще то удовольствие будет.

    • @Alexey.Lapshin
      @Alexey.Lapshin 2 года назад +3

      Там вроде смарт-поинтеры есть.
      Тут скорее вопрос больше к тому, насколько все будет лагать и тормозить на мобиле среднестатистического пользователя с использование не "старомодных синтаксисов" (вообще это крайне упоротый критерий, как определять новомодность, старомодность и на что это влияет?)

    • @bulsond
      @bulsond 2 года назад

      @@Alexey.Lapshin "вообще это крайне упоротый критерий, как определять новомодность, старомодность и на что это влияет?" А я вам скажу на что влияет. На читаемость и понимаемость кода, а значит на поддерживаемость.
      А про лаги и тормоза излюбленная тема, да, тех кто к месту и не к месту пропагандирует использование языков предназначенных прежде всего для системного программирования, а не прикладного каковым является написание обычных мобильных приложений. Давайте выйграем еще пару десятков наносекунд на выполнении этого участка кода написав его на ассемблере! Только вот обычная среднестатестическая мобильная аппликуха, ничего не вычисляет, а только бегает в сеть к бэкенду и отображает данные полученные с него и вообщем то больше ничего не делает, может еще в локальную БД что-то записывает. Таким образом плюсы здесь вряд ли дадут хоть какое-то ощутимое преимущество, а вот сложности в разработке добавять без сомнения.
      Я конечно не знаю, почему 2гис выбрала такую платформу для своего приложения, видимо это было оправданно какими-то весомыми соображениями. Ну, ОК тогда.

    • @yetanotherandreyev
      @yetanotherandreyev 2 года назад +1

      @@bulsond, в ответ на ваше исходное сообщение:
      Сборщик мусора имеется для декларативной среды, где обрабатывается QML и JS (ECMAScript). Одно из отличий по сравнению со средой браузеров в том, что нет объекта window или DOM API.
      Для обновления декларативной разметки на ходу есть проект QML Live (Luxoft). Также лайвкодинг прямо в браузере (webasm) можно попробовать в проекте QML Online (KDE).
      С Flutter сравнивать смешно, но для меня по другой причине. Гугл продает то, что уже работает много лет, но, как обычно, имеет "фатальный недостаток". И, если что, библиотека графики флаттера, как и хрома -- это skia, она на плюсах.
      Так что не вижу причин холиварить на пустом месте

    • @Alexey.Lapshin
      @Alexey.Lapshin 2 года назад +7

      @@bulsond не, ну если вы не умеете в плюсы, это не значит что все не умеют, и это будет тяжело поддерживать

    • @bulsond
      @bulsond 2 года назад

      @@yetanotherandreyev Архитектура Flutter как раз и подтверждает мою мысль. В основе база написанная на языке системного уровня - на C++. А сверху прикладной уровень написанный на дарте. И пользователь фреймворка пишет на языке прикладном, на Dart потому, что так конечному пользователю-кодеру проще, удобнее, комфортнее и быстрее в конечном случае. Для того и делаются разные слои, уровни и каждый инструмент-язык под него.

  • @_plaha_
    @_plaha_ 2 года назад +4

    Можно и яму палкой выкопать, но зачем?

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      Когда нет ничего кроме палки, а яма нужна - это неплохой вариант

    • @_plaha_
      @_plaha_ 2 года назад

      @@AndroidBroadcast только мы не в каменном веке, и инструменты у нас есть

    • @yetanotherandreyev
      @yetanotherandreyev 2 года назад +2

      Пробовали Qt/QML? Если нет, рекомендую. Может захотеться называть палками другие проекты, которыми пользовались до этого.

    • @_plaha_
      @_plaha_ 2 года назад +1

      @@yetanotherandreyev пробовал Qt. Очень полезная, а главное нужная технология. На город в 3млн целых 0 работ. Даже на compose 30 есть. С этим мусором можно только, ну вы знаете куда, пойти

    • @yetanotherandreyev
      @yetanotherandreyev 2 года назад

      ​@@_plaha_, неплохая попытка поспорить, но с таким же успехом можно искать php-фреймворки и радоваться вакансиям ( ͡° ͜ʖ ͡°)

  • @ЯрославЛихачев-ф3д
    @ЯрославЛихачев-ф3д 2 года назад +19

    Я запрещаю ругать flutter

    • @hotmule
      @hotmule 2 года назад +5

      Клуб кроссплатформенного мастерства двумя этажами ниже

    • @andreyshishkin4958
      @andreyshishkin4958 2 года назад +3

      Я запрещаю вам запрещать 🙂

    • @ДенисСаранин-м1и
      @ДенисСаранин-м1и 2 года назад +1

      А я расзапрещаю обратно

    • @andreyshishkin4958
      @andreyshishkin4958 2 года назад

      @@ДенисСаранин-м1и Все бы ничего, но такого слова нет 🙂

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад +1

      🚫🚫🚫

  • @СашаСвиридов-н8э
    @СашаСвиридов-н8э Год назад +1

    Qml + qt = прощай лаконичность. Пишу два года на данном стеке. Любое изменение в плюсишной модели - это боль. Qml документация - это боль, сколько не боролся, но излишней информации придостаточно, как сделать то, что тебе никогда не понадобиться и испортит код. С выпуском обновлений для qml новых фич становиться больше, а старые фичи остаются. Разобраться с нагромождением новичку будет очень сложно. А курсов и пособий в инете мало. Если брать чистый qt, то никаких проблем не возникает, документация ок, код работает, ui строиться, но если связать это с qml... моя психика не выдержала, и теперь Я плавно перехожу на android разработку.

  • @alexeyprokhach5517
    @alexeyprokhach5517 2 года назад +4

    Прикольно, чувак пишет на qt, а сам в гноме сидит, который на gtk))

  • @Vlad-sw4zd
    @Vlad-sw4zd 2 года назад

    Бля,неужели реально у кого-то принято называть кутэ - кьют?

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад

      Все мы начинаем переиначивать слова. Например, говорим софт, а не софтваре. Тот же SQLite мало кто произносит как авторы говорят

    • @СемёнНеизвестный-н2ж
      @СемёнНеизвестный-н2ж Год назад

      Кьют правильно, много лет назад когда сам писал на нём интересовался и где-то на просторах сети нашёл комментарий от тех кто это название и придумал 😄

    • @SergeyGalin
      @SergeyGalin Год назад

      Qt читается как "cutie" (милашка, красотка)

  • @IlyaLesnoy
    @IlyaLesnoy 6 месяцев назад

    Кросс платформа зло. Вы лишаете индустрию сотен человек часов. Зачем писать один раз и будет работать везде (с незначительные правками) когда можно писать отдельное приложение для Андроид, МакОс, АйОс, Виндовс, Линукс и запрашивать у бизнеса за это деньги. Да и по итогу в теории получится шустрее и оптимальнее если нативно все а не через кросплатформ прослойки. Нативно имею ввиду относительно Андроид само собой это Джава и фреймворк для гуев нативный, для Винды ВинАпи, MFC, но никак ни UWP и не Maui. Любите кодить много, пока есть такая возможность (отсылка к ии)

  • @singlebw4065
    @singlebw4065 Год назад

    Как спользовать React js + OS Aurora?

  • @ixaran
    @ixaran 2 года назад +11

    Кто ругает flutter, тот не программист

    • @ЯрославЛихачев-ф3д
      @ЯрославЛихачев-ф3д 2 года назад +3

      И того мама не любит

    • @AndroidBroadcast
      @AndroidBroadcast  2 года назад +1

      🤪

    • @ixaran
      @ixaran 2 года назад +1

      @@ЯрославЛихачев-ф3д Это комплексы не полноценного программиста, или недопрограммиста, боязнь того что выяснится он дилетант, не знающий что такое .so файлы