Це відео не доступне.
Перепрошуємо.

Android с нуля. Что выбрать Compose или XML / Mobile Developer

Поділитися
Вставка
  • Опубліковано 25 лип 2024
  • Всем привет, сегодня поговорим про часто задаваемый мне вопрос "Что выбрать - учить Jetpack Compose / SwiftUI или XML / UIKit". Никаких тайных секретов не открою, но как всегда обращу внимание на главное и оно же вроде бы очевидное. Приятного просмотра!
    Что чаще всего встречается в вакансиях Android разработчиков:
    t.me/mobiledevnews/747
    00:00:00 - Всем привет
    00:00:54 - Про инертность
    00:03:05 - Compose
    00:04:58 - Proof of concept
    00:09:34 - SwiftUI
    00:11:00 - Всем пока
    Если вам понравилось видео, то поддержать канал и получить доступ к эксклюзивному контенту можно подписавшись на Boosty
    ===========================================
    Поддержать канал на Boosty - boosty.to/mobiledev
    ===========================================
    Полезные статьи из мира мобильной разработки
    Яндекс.Дзен - zen.yandex.ru/id/5e4aa0a9f2b9...
    Teletype - teletype.in/@alexgladkov
    Мобильный разработчик в других соц. сетях
    =======================
    Вконтакте - mdeveloper
    Телеграм - t.me/mobiledevnews
    =======================
    Если ты прочитал это - напиши коммент! Тест на внимательность :D

КОМЕНТАРІ • 81

  • @itcult
    @itcult 2 роки тому +26

    Логика понятна, но получается так, что последние 3 проекта были на compose. Возможно мне так повезло/не повезло и стоит лотерейный билет сходить купить, что так случилось) Для программистов один из критериев выбора работы является использование новых библиотек, поэтому между компанией с rxJava и coroutines/flow программисты предпочитают последнюю. Это одна из немаловажных причин почему компании переходят на compose, чтобы не оказаться в легаси по самые уши в тот момент, когда рынок порешал и уже давно ушёл в compose 3.0. Плюс любой разработчик скажет, что запилить список на compose это 4 строчки, а на xml это минимум два класса с биндингами и вьюхолдерами. Над оптимизацией, конечно нужно поработать, но в любом случае от идеи до готового решения проходит меньше времени, плюс что-то поменять в разы быстрее. На мой взгляд compose это не то что нужно учить в свободное время, а то что нужно учить обязательно и уже сейчас на собесах спрашивают знаешь ли compose. Koltin в Android заезжал также как сейчас compose - сначала осторожно и через инициативных разработчиков, которые ставили плагины Kotlin, которые были дико забагованные, а потом в один прекрасный день Google сказал, что это основной язык разработки. Через 4 года уже нужно будет догонять тех, кто выучил и конкурировать со спецами с четырёхлетним опытом разработки на compose. Поэтому через 4 года окажется, что надо было учить compose 4 года назад)

    • @antonparfenov8519
      @antonparfenov8519 Рік тому +1

      Ого, вот это прямо мнение огонь!

    • @dedpihto680
      @dedpihto680 Місяць тому

      жиза. recyclerView на xml это же ужас для новичка. я когда это учил то тупо переписывал код как мартышка молясь о том что бы ничего не пришлось изменять или ковырять .

  • @antonparfenov8519
    @antonparfenov8519 Рік тому +2

    Спасибо, Леха! Как раз не пытаюсь устроиться на работу, а только использую для себя, так сказать хобби. И как раз есть прямо интерес к jetpack compose. Ты как раз и ответил на мой вопрос

  • @sovrinfo
    @sovrinfo Рік тому

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

  • @abuiman5251
    @abuiman5251 Рік тому

    Спасибо за видео!👍🏻

  • @LarryMoore
    @LarryMoore Рік тому

    Абсолютно согласен, и про SwiftUI

  • @user-zv2pe2cz9v
    @user-zv2pe2cz9v 2 роки тому +1

    спасибо, только сегодня задумался о том что начать углубляться Compose или нет, спасибо за то что спас мое время)

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Пожалуйста :)

    • @user-hq7yk6gj1p
      @user-hq7yk6gj1p 2 роки тому +1

      если вы опытный разраб то почему нет?

    • @andreass7012
      @andreass7012 2 роки тому

      @@user-hq7yk6gj1p возможно, он неопытный разраб :)

  • @user-se9km1ou7c
    @user-se9km1ou7c 2 роки тому +1

    Алексей Гладков, вы супер! Сегодня подписался на boosty. Не жалею 🔥 Куча годного контента, спасибо вам за вашу работу

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

      Спасибо большое что поддерживаете канал!)

  • @i_am_vasilyev
    @i_am_vasilyev Рік тому +3

    "нашему несчастному бедному джуну", каждый раз когда слышу, такое ощущение что прям ко мне лично обращаешься ))))

  • @maksimkolosov5076
    @maksimkolosov5076 2 роки тому +3

    Слова здравомыслящего человека))) Спасибо большое за объективную оценку того, что происходит в мире мобильной разработки. Хотелось бы побольше обзоров, особенно с тем, что связано с последними санкциями и т. п. Ещё интересен такой вопрос: возможно ли в нынешних условиях получать доход от приложений в Apple App Store, не открывая счёт в иностранном банке?

    • @andreass7012
      @andreass7012 2 роки тому

      Можно, если банк не под санкциями и работает со Swift

  • @Dark3470
    @Dark3470 6 місяців тому +5

    12 января 2024, гугл убрал курс андроид разработки на xml

  • @8648132
    @8648132 2 роки тому

    Ребят, я не могу понять, композ использует язык котлин? Чтоб понимать композ надо вначале изучить котлин?

  • @user-ok9tp5lx6n
    @user-ok9tp5lx6n Рік тому

    спасибо

  • @MxMayers
    @MxMayers 2 роки тому +1

    6:17 вообще в точку, болячки не то что детские, а парадоксальные это и пугает. То что делается нагромождением в xml в композе легко и просто тот же lazycolumn vs. recyclerview к которому нужен адаптер у которого биндинг и тд. но если понадобится анимировать item 1 раз при появлении, в recyclerview делается двумя строчками против (грубо говоря) тонны кода на compose, viewpager (а это как бы базовый компонент) до сих пор доступен только из accompanist, viewpager - PageTransformer это вообще отдельная тема.. graphicsLayer призванный решить эту задачу работает не так как ожидается, например код из нативного PageTransformer класса просто копируется в Flatter с минимальными изменениями и получается такая же анимация свайпа страницы (зум альфа и тд) а вот в graphicsLayer нужен бубен. В xml что бы иметь bottomsheet с динамическим содержимым надо писать просто ужас сколько кода, а в Compose буквально 10 - 15 строк. Я фанат compose но когда попался реальный заказ на приложение в частную фирму для 30ти человек, заряжать compose я так и не решился хотя там до безумия все было просто 4 экрана что то взять с сервера и показать на экранах...

    • @paulsoja2732
      @paulsoja2732 2 роки тому +2

      Я вот решился небольшой проект написать на компоузе. Плеваться хочется от него. Куча аннотаций с пометками experimental. Куча функций, которые вложены друг в друга. ViewPager с кастомным видом карточек - вообще простыня кода. Preview вообще перестал юзать, потому что это кусок г... Ну и сам код компоуза не сильно читабельный. В общем с удовольствием вернулся на xml и надеюсь компоуз не увижу еще долго. Та и по большому счету он не готов на 100% к проду.

    • @MxMayers
      @MxMayers 2 роки тому +2

      @@paulsoja2732 причем experimental на простых вещах с которых логичнее было бы начать разрабатывать сам compose да 😂? Compose имеет место быть когда он реально заменяет 10+ xml лайаутов в drawable, на экранах типа профиль/настройки или другая "простыня" информации, но опять же как сказано в видео не с lazycolumn списками.
      P.S. Попробуйте написать экран в композе с поддержкой планшетов или даже просто с разграничением вертикальной и гориз. ориентации, или поддержку material3 rail для планшетов + bottomNavBar для телефонов, там такие if начнутся что просто ппц будет

  • @mex5341
    @mex5341 2 роки тому

    какой вывод ?

  • @kochewnic9984
    @kochewnic9984 2 роки тому

    в чем проблема писать под iOS 15? он поддерживается с iPhone 6s, достаточное количество устройств

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Вы явно в ритейле не работаете или в банкинге. В чем прикол для бизнеса уходить с ОС? Это просто потеря платёжеспособной аудитории. Поэтому уходят обычно когда есть весомые преимущества (SwiftUI к таким не относится) либо если аудитория упала до минимума

  • @user-hq7yk6gj1p
    @user-hq7yk6gj1p 2 роки тому +2

    Уже больше года верстаю исключительно на компоуз, несмотря на все детские болезни и проблемы, на xml возвращаться нет никакого желания)

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Речь в видео про джунов, а так у самого в проде все проекты на компоузе уже давно )

  • @rezograthtv9905
    @rezograthtv9905 2 роки тому

    Алексей, день добрый! А можете озвучить , что сейчас с вакансиями на андоойд? Какие мерспективы и зарплаты

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

      Да все как обычно )) зарплаты высокие, вакансий много (это все не касается джунов)

    • @rezograthtv9905
      @rezograthtv9905 2 роки тому

      @@MobileDeveloper Получается, что сейчас идти на андройд - разработку учиться малоперспективно?

    • @rezograthtv9905
      @rezograthtv9905 2 роки тому

      А можете посоветоапть квосы? Я на Яндекс Практикум записался- годовой курс, Java/ Kotlin, но там нет актуальных технологий, котопые вы озвучили...

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Смотря что вы называете перспективой. Если ждёте золотых гор через 5 дней от старта, то вообще без шансов)

    • @rezograthtv9905
      @rezograthtv9905 2 роки тому

      @@MobileDeveloper Нет, что вы! Минимум год нужно, чтобы вникнуть...

  • @Comm1ted
    @Comm1ted 2 роки тому +1

    Алексей, а насколько тяжело было разбираться в Android и IOS сразу?

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Ну ) это было интересно как минимум ) не сказал бы что тяжело ) я не думал такими категориями. Мне просто было это все очень интересно

    • @Comm1ted
      @Comm1ted 2 роки тому

      @@MobileDeveloper Алексей, а можете подсказать книгу по Андроиду? Я вот знаю Java Core и немного о андроиде. Сейчас изучаю старые гайды от гугла (потому что новые на котлине). Я понимаю что придётся изучать Котлин, просто пока хочется с самим андроидом повзаимодействовать. Может у вас есть книга на примете, которая даст ощутимый буст в понимании?Заранее спасибо за ответ

  • @andreass7012
    @andreass7012 2 роки тому +1

    По поводу SwiftUI. Согласно статистике Apple от 31 мая этого года, 82% всех устройств (айфоны) уже используют iOS 15, ещё 14% - iOS 14. Оставшиеся 4% - это неплатёжеспособная аудитория. SwiftUI 2.0 (iOS14+) вполне годный инструмент для прода

    • @paulsoja2732
      @paulsoja2732 2 роки тому

      Это надо рассказать менеджменту, что можно поддерживать только последнюю версию ios. И сразу же услышишь в какую сторону идти надо

    • @andreass7012
      @andreass7012 2 роки тому +1

      @@paulsoja2732 ну только последнюю маловато наверное будет. А вот две последних версии для 99% приложений будет достаточно. В iOS гораздо лучше обновляемость устройств на новую ось, чем в андроид, не понимаю этих кукареканий менеджеров

    • @paulsoja2732
      @paulsoja2732 2 роки тому

      @@andreass7012 Это ж для разраба интересен новый стек, а бизнесу оно нафиг не надо. Ты много видел компаний, которые отслеживают аналитику сколько времени тратится на поддержку старых версий андроида/иоса? Я такого вообще не встречал. Отказывались только тогда, когда всей командой настаивали, что это гемор и надо отказаться.

  • @user-cg6qx8pk7e
    @user-cg6qx8pk7e 2 роки тому

    Можно видео на тему, где вы рассказываете сколько зарабатываете сейчас и сколько зашибали раньше?

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +3

      Я про это не буду рассказывать

    • @aiklklivlind9451
      @aiklklivlind9451 2 роки тому

      Хахаах, хорош чел 😅😅

  • @banditcolibri308
    @banditcolibri308 2 роки тому

    Алексей, сколько вы закалачиваете денег в месяц?

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Мож вам ещё ключи дать от квартиры где деньги лежат?

    • @banditcolibri308
      @banditcolibri308 2 роки тому

      @@MobileDeveloper Странные сопоставления с квартирой и расположением денег. Многие топ-разработчики спокойно говорят о заработках, не совсем понимаю причины почему нет. Просто если заработок легальный, то можно про это спокойно говорить

    • @asp424
      @asp424 2 роки тому

      @@banditcolibri308 Прочти "12 стульев", поймешь)

  • @Maks-ek7xg
    @Maks-ek7xg 2 роки тому

    К счастью, 4 года ещё не прошло 😅

  • @elron2010
    @elron2010 2 роки тому +4

    Проблема compose в том что после изменения UI-кода нужно пересобирать модуль чтобы увидеть новую разметку, а это в разы(!!) дольше чем XML

    • @Comm1ted
      @Comm1ted 2 роки тому +1

      Факт!

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +2

      С компоузом заметил что компилирую код намного реже

    • @user-hq7yk6gj1p
      @user-hq7yk6gj1p 2 роки тому +3

      верстаю в слепую а потом правлю пачкой, проблему особо не ощутил, ну и вроде же есть @Preview если в слепую верстать тяжело, как-то юзал, вполне работает, правда иногда добавлять дефолтные параметры повсюду достает

    • @paulsoja2732
      @paulsoja2732 2 роки тому

      @@user-hq7yk6gj1p особенно когда через параметры функции закидываешь viewModel...

    • @user-hq7yk6gj1p
      @user-hq7yk6gj1p 2 роки тому

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

  • @azizbekrasulmetov9293
    @azizbekrasulmetov9293 Рік тому

    Насчёт Compose , работаю больше года, делали все проекты на нём,все просто супер. Все делается легко и быстро и в кайф. Изучайте compose за ним будущее. Уверен что полностью заменит xml через пару лет.

    • @MobileDeveloper
      @MobileDeveloper  Рік тому +1

      Ну я в последнем видео уже рекомендую новичкам сразу же начинать с компоуза

    • @OxidanteRed
      @OxidanteRed Рік тому

      @@MobileDeveloper Привет 🖖 Можно ссылку на это видео или название ?

  • @idnull8434
    @idnull8434 2 роки тому +1

    Имхо. Учите computer science. Будите легко переключатся между технологиями, языками ,платформами.

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      Это само собой )

    • @Libra7by
      @Libra7by 2 роки тому +4

      Имхо. Учите квантовую физику. Будет легко переключаться между вселенными, где вы знаете разные технологии, языки ,платформы. :)

  • @illyaevseev312
    @illyaevseev312 2 роки тому +1

    Лично мне импонирует Compose. Но начинать с него 100%...200%...300% не стоит. Проектов, где все на чистом compose лично я видел ровно ни одного. А я гребу на галере. У нас движняка хватает. Если вы не освоите XML, то в 99.99999% проектов вам придется очень круто наверстывать просто потому, что вы не будете ничего понимать как все это работает.
    Ну и по поводу простоты. Не далее как на прошлой неделе мы вдвоем еще с одним разработчиком проковырялись почти час что-бы сделать как хочется, а не как получается. В случае XML уже есть куча доков, примеров и все давно однозначно и этот UI вообще бы не вызвал вопросов.
    Ну и еще одно замечание по поводу того, что Compose со временем позволит очень быстро разрабатывать UI. Как выглядит все в моей голове. Я открываю figma, бью экраны на элементы типа заголовок побольше, поменьше, основной блок текста, картинка, икона и т.д. А потом со скоростью ветра компоную это все в экраны. Как это будет на самом деле. Я открываю figma и вижу 7 видов заголовка, 24 отступа, 12 штифтов, 207 цветов и т.д. И мне уже хочется не делать UI, а найти дизайнера и ... ну вы сами понимаете.

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

      Есть проекты на 100% компоуз ) я такие знаю )

    • @illyaevseev312
      @illyaevseev312 2 роки тому

      @@MobileDeveloper Я своими глазами пока только видел проект где используются фрагменты, но вместо XML Compose. Конечно есть те, кто уже перешел. Я слышал, что Instagram это сделали. А если говорить вообще все его ковыряют, говорят, что скорее нравится, но в продакшене все еще XML.

    • @user-cp4jo9cl9o
      @user-cp4jo9cl9o 2 місяці тому

      Хорошо, ты можешь сказать какой курс взять по xml для обучения?

  • @Anton-gb3cl
    @Anton-gb3cl 2 роки тому

    Flutter

  • @user-il4oo4og7h
    @user-il4oo4og7h 2 роки тому

    Где горящие пуканы?

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

      А почему они должны быть?)

  • @mayonnaise3341
    @mayonnaise3341 2 роки тому

    Почему прозвучала фраза "времени у вас немного"? Есть, кто сможет пояснить дураку?)

  • @lex_nel3097
    @lex_nel3097 2 роки тому

    После таких выводов, на KMM можно ещё лет 5 не смотреть.

  • @user-gf6wb2qi5g
    @user-gf6wb2qi5g 8 місяців тому

    Компоуз гавно которое скоро будем все кушать