Многомодульность: что это такое? Объяснение для новичков. MVVM Retrofit Git. Чистая архитектура

Sdílet
Vložit
  • čas přidán 25. 02. 2024
  • Что такое многомодульность? Зачем оно нужно и причем здесь чистая архитектура? Пишем проект с нуля.
    Весь код на гитхабе
    github.com/JohnnySC/AnimeQuote
    телеграм канал
    t.me/easyCodeRu

Komentáře • 51

  • @diskys8174
    @diskys8174 Před 4 měsíci +6

    Интересно, спасибо. Мне как новичку интересно! ❤

  • @daishu1
    @daishu1 Před 5 dny

    Очень интересное и полезное видео, спасибо

  • @martinborns
    @martinborns Před 15 dny

    Интересно было посмотреть!

  • @fliker2309
    @fliker2309 Před 4 měsíci +2

    Всегда думал, что много модульность реально для мидлов/сеньоров, очень важная и полезная тематика видео 🔥🔥

    • @fliker2309
      @fliker2309 Před 4 měsíci

      Будет продолжение про добавление модулей с фичами?

  • @oleg12395
    @oleg12395 Před 4 měsíci +4

    Классная тема, спасибо за видос

  • @unknown6886
    @unknown6886 Před 2 měsíci

    Господи, спасибо за внятную инфу.

    • @easyCodeRu
      @easyCodeRu  Před 2 měsíci +1

      Лайк и подписка! А ещё в телеграмм канале можно найти информацию про 500 премиум видео

  • @ruzibekov
    @ruzibekov Před 4 měsíci +4

    вместо Implementation можно написать api для получения доступа на retrofit в application модуле

  • @rinatislamov8977
    @rinatislamov8977 Před 4 měsíci +1

    Спасибо за видео! хотел бы видео ещё с Hilt, особенно показали-бы часть про app module

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci

      В следующем видео будет Hilt с многомодульностью

    • @rinatislamov8977
      @rinatislamov8977 Před 4 měsíci

      @@easyCodeRu Спасибо

  • @Alexandr-le6eu
    @Alexandr-le6eu Před 4 měsíci +1

    Отлично!

  • @alexeisimacov1591
    @alexeisimacov1591 Před 4 měsíci

    Оганнес, спасибо за видео! Как обычно все разжевано для новичков :)
    Хотелось бы увидеть продолжение по многомодульности, но уже с использованием юзкейсов и интерцепторов, постепенно увеличивая сложность, как в ZeroToHeroTDD.

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci +1

      ну планирую хилт добавить

  • @yuriisurzhikov
    @yuriisurzhikov Před 4 měsíci

    Если правильно помню, то consumer-rules дает возможность объявить такие же правила для proguard в рамках модуля. То есть в этом файле объявляется какие правила использовать только для данного модуля, затем в build.gradle самого модуля указывается, что данный модуль предоставляет следующим правла(вроде бы какая-то переменная типа consumerFiles, или что-то в этом роде), и тогда при сборке proguard соберет все proguard-rules, и consumer-rules, и обфусцирует/минимизирует согласно полученному общему файлу

  • @TreiderTV
    @TreiderTV Před 4 měsíci +1

    отдавать пару в качестве результата чистейшее зло))

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci +2

      Именно! Никогда так не делайте! Нужно писать нормальное ооп с интерфейсом и классами

  • @MrZiko1975
    @MrZiko1975 Před 4 měsíci

    Было бы еще неполохо озвучить правила использования модификатора доступа interntal - если мы боремся за чистоту использования слоев то этот модификатор в тему, что стоит помечать как internal, а что оставить public.
    Имхо также зря обошел стороной такой вопрос как layer entity, имхо это важный вопрос в вопросе разделения на слои. Если мы за слабое связывание модулей, то необходимо рассказать про трансформацию сущностей в слоях, где и когда необходимо мапить (частично сказал, что в presentation приходит domain entity, но на вью идет уже модель презентации)
    Но так все четко и понятно. 5+

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci +1

      Ну я потому и сказал в видео что это ПОСОБИЕ ДЛЯ НОВИЧКОВ. И главная тема это разделение на слои и модули в принципе. Если б я начал говорить и показывать все то видео было б на 10 часов и было б сложным для новичков. Поэтому это видео как минимум для тех кто никогда не сталкивался с многомодульностью и чистой архитектурой

  • @remkun8636
    @remkun8636 Před 4 měsíci +2

    После Японии все прилаги будут про аниме :3

  • @user-bn7vt2ui1x
    @user-bn7vt2ui1x Před 4 měsíci +1

  • @rinatislamov8977
    @rinatislamov8977 Před 4 měsíci

    Если приложение с 3 уровнями допуска. Пользователь, работник, Администратор. Как я понял надо написать общий модуль авторизации. и написать 3 модуля для каждого допуска?
    Пользователь-presentation Пользователь-domain
    работник-domain работник-presentation
    Администратор-domain Администратор-presentation
    и один модуль для бизнес логики.
    как я понял из вашего видео в модуль бизнес логики должен находится строго тот который отвечает за рекламу и платные функции приложения?
    или в модуль бизнес логики какой код должен входить или их должно быть больше для каждого уровня допуска?

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci

      можно делать по разному> можно разбивать по фичам, можно по слоям, а можно и по фичам и по слоям
      про бизнес логику правильно поняли: все что относится к бизнесу

  • @user-fj8df8gb4b
    @user-fj8df8gb4b Před 4 měsíci

    А обязательно ли создавать buildSrc модуль?

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci

      мы создали 3 модуля (domain, data, presentation) имея первый app модуль по умолчанию

  • @bigpiglove
    @bigpiglove Před 2 měsíci

    Крутое видео! Скажи а на чем андройд разработчики пишут BackEnd?

    • @easyCodeRu
      @easyCodeRu  Před 2 měsíci

      Android разрабы не пишут бекенд)) Тогда они фулстек называются если пишут и андроид и бекенд

    • @bigpiglove
      @bigpiglove Před 2 měsíci

      @@easyCodeRu На собеседовании, когда сказал что бэкэндом не занимаюсь - тетя HR крайне удивилась и сказала, что в ее команде все пишут серверы на java. Она была крайне возмущена, что я этим не занимался)))

    • @easyCodeRu
      @easyCodeRu  Před 2 měsíci

      В вакансии пишут джава разработчик, это значит бекенд разработчик. Тот факт что и Андроид разработчики знают джава часто путает эйчаров

    • @bigpiglove
      @bigpiglove Před 2 měsíci

      @@easyCodeRu Спасибо большое! Очень полезный цикл про многомодульность у Вас. Сейчас изучаю.

  • @ephitariathegame2brainstud996
    @ephitariathegame2brainstud996 Před 4 měsíci +1

    Окай

  • @miyamura_izumi_yuji
    @miyamura_izumi_yuji Před 4 měsíci +1

    Угарнул с шутки про 2 дженерика

  • @rinatislamov8977
    @rinatislamov8977 Před 4 měsíci

    Здравствуйте, будут видео разбору проектов подписчиков? я бы с радостью бы дал вам свой проект на разбор чтобы узнать насколько мой проект не правильный. Мой проект мульти модульность написан не по вашему видео. Я дописываю свой проект в свободное время. Достаточно много кода. Часть логики на сервере Ktor часть на android. Использовал библиотеки jetpack compose, Hilt,Retrofit

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci

      Отправь в телеграм t.me/easyCodeRu

  • @vovaserpov8556
    @vovaserpov8556 Před 4 měsíci +11

    Спасибо огромное. Только малый процент людей в действительности могут понять ценность твоих видео

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci +3

      и тебе спасибо. массам нужны лишь зрелища на 5 минут, а не часовое видео с реальным кодингом

  • @user-rw8zs7vz9u
    @user-rw8zs7vz9u Před 16 dny

    Это не многомодульность, это чистая архитектура с 3 пакетами. По отдельности они не будут собираться

    • @easyCodeRu
      @easyCodeRu  Před 16 dny

      Во что должен собираться отдельно дата модуль?

    • @user-rw8zs7vz9u
      @user-rw8zs7vz9u Před 16 dny

      @@easyCodeRu ни во что, потому что это не модуль а пакет, а ты преподносишь это как многомодульность

    • @easyCodeRu
      @easyCodeRu  Před 16 dny

      Хм. А я думал что нажимая создать новый модуль создаётся новый модуль

    • @user-rw8zs7vz9u
      @user-rw8zs7vz9u Před 16 dny

      @@easyCodeRu почему ты думаешь что ты создаёшь модуль? То что говоришь про data, domain, presentation это все пакеты, они так и создаются new package

    • @easyCodeRu
      @easyCodeRu  Před 16 dny +1

      посмотри пожалуйста еще раз внимательно, я же нажимаю создать модуль, а не пакет : make new module

  • @DeelordSubscribe
    @DeelordSubscribe Před 4 měsíci +1

    Я конечно не андроид разработчик, но, кажется, автор половину видео нес какие-то антипаттерны, а некоторые вещи вообще не понятно зачем были освящены в видео, дропнул на 70% просмотра.

    • @easyCodeRu
      @easyCodeRu  Před 4 měsíci

      Если речь про ProvideViewModel то это ручной диай, в следующей серии будет Hilt
      жаль что дропнул, посмотрел бы до конца возможно увидел бы что к чему и зачем