Back-end driven UI - Алексей Шпирко (Avito)

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ส.ค. 2024
  • Никто не любит заполнять длинные формы. Сложнее заполнения длинных форм только их разработка, поддержка и валидация входных данных. В докладе я расскажу о подходе, в котором можно максимально вынести логику построения сложных форм с мобильного клиента на бекенд и минимизировать количество изменений в коде при постоянно меняющихся бизнес-требованиях.
    Avito.iOS (17.06.2017) #avitoios
    avitotech.time...

ความคิดเห็น • 11

  • @yan.y.gerasimuk
    @yan.y.gerasimuk 7 ปีที่แล้ว +5

    Отличный доклад! Спасибо.

  • @Evergreenscoderzone
    @Evergreenscoderzone 2 ปีที่แล้ว +1

    Интересно, поменялось ли что-то за 5 лет - перешли ли на JSONForms или еще что-то вместо полностью самописного решения?

    • @AS-sg5vy
      @AS-sg5vy 2 ปีที่แล้ว

      привет! поменялось все :) Сейчас делаем другое, тоже самописное решение, но проще, универсальнее, расскажем о нем, как будет готово

    • @Evergreenscoderzone
      @Evergreenscoderzone 2 ปีที่แล้ว

      @@AS-sg5vy а почему бы не использовать существующие решения, такие как jsonforms или uniforms?

    • @AS-sg5vy
      @AS-sg5vy 2 ปีที่แล้ว

      @@Evergreenscoderzone Это хороший топик для afterparty после митапов) Но при масштабировании продукта и команд (в Авито десятки независимых команд, делающих продукт) часто сталкиваемся с тем, что готовые решения в edge кейсах не работают так, как нам нужно и затраты по их подпиливанию под наши требования сопоставимы, а то и больше, чем поддержка своего решения. Не знаю про приведенные Вами выше продукты, возможно, они тоже хороши)

    • @Evergreenscoderzone
      @Evergreenscoderzone 2 ปีที่แล้ว

      @@AS-sg5vy ок, понимаю. пока я вижу что только сильно кастомные вещи - например при смене города подчищать поля адреса - сложно реализовать готовыми библиотеками. Но вот все остальные вещи - валидация, display-if, локализация, required-if, layout и т.п. - легко пишется через предложенные мной выше библиотеки. А так как они описаны декларативно, по можно отрисовать как угодно. Я тоже недавно задавался таким вопросом, поэтому и начал ресеч, нашел ваше видео, и хотел узнать сделали ли вы что-то иное.

  • @aleksundervolkov5807
    @aleksundervolkov5807 4 ปีที่แล้ว +1

    А если все это еще завязать на swiftUI?)

  • @user-pq1qe2jf2y
    @user-pq1qe2jf2y 11 หลายเดือนก่อน

    жэсть, а я думал BDUI отнистельно недавно начали все внедрять, а тут авито 6 лет назад сотворили чтото нереальное

  • @romdevios
    @romdevios 4 ปีที่แล้ว

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

    • @AS-sg5vy
      @AS-sg5vy 4 ปีที่แล้ว +1

      Привет! NSPredicate для нашей задачи показался слишком ограниченным, очень много проверок включали ссылку на другие поля и сама логика проверок выходила за рамки базового функционала, что дают NSPredicate. Но не берусь судить за более общие кейсы, когда нужно сравнить 2 строковых значения, может там и ок, но не углублялись в рисерч.