Шаблоны Java. Прокси / Заместитель (Proxy / Surrogate)

Поділитися
Вставка
  • Опубліковано 23 кві 2016
  • Шаблон проектирования Прокси, он же Заместитель, он же Суррогат, предназначен для косвенного обращения к объекту. То есть обращение к методам реального объекта происходит через объект-заместитель (прокси).
    Основные типы заместителей: удаленный заместитель (remote proxy), виртуальный заместитель (virtual proxy) и защитный заместитель (protection proxy).
    вКонтакте: java4you
    Плейлист: • Шаблоны проектирования...
    Видео: • Шаблоны Java. Прокси /...

КОМЕНТАРІ • 34

  • @user-bu2ds6ej6q
    @user-bu2ds6ej6q 7 місяців тому +1

    Крутой ролик) Особенно пример в конце - бомба!!

  • @xsplitgames4138
    @xsplitgames4138 7 років тому +31

    Обошёл ограничение по доступу к рутрекеру, уехав в Польшу :)

    • @programm4you
      @programm4you  7 років тому +2

      отличный пример паттерна в реальной жизни))

  • @alext711
    @alext711 8 років тому +4

    Спасибо! Все круто и понятно, жду шаблоны Bridge и Flyweight.

  • @yevheniikozhevin5845
    @yevheniikozhevin5845 4 роки тому +4

    ух как посмеялся после слов "это незаконно, я вообще-то это не использую"

  • @nikolaygoltsov1782
    @nikolaygoltsov1782 8 років тому +5

    Респект за видео. И за дополнение)))

  • @Vetala007
    @Vetala007 4 роки тому +1

    огромное спасибо)) очень доступно донесли смысл))

  • @user-bq5dz8ke7m
    @user-bq5dz8ke7m 7 років тому +1

    Шикарно объяснили, жизненно.)

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

    ну всё, тюрьма ждёт тебя за нелегальный просмотр))
    Спасибо!)

  • @Denis-xc4qz
    @Denis-xc4qz 4 роки тому +2

    Действительно! куда уже проще) очень хорошо разжевал. Даже такой тупой как я все понял

  • @f4er800
    @f4er800 8 днів тому

    Забавно вышло XD

  • @lichlichi
    @lichlichi 6 років тому +2

    В конструктор Proxy кроме присвоение адреса картинки, можно было бы реализовать отрисовку этой картинки но в более низком разрешении.

  • @andrewvalevskiy3879
    @andrewvalevskiy3879 7 років тому +1

    Благодарю! Просьба используйте модификаторы доступа для полей

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

      зачем? Здесь акцент именно на шаблонах проектирования. И вовсе не стоит отвлекаться еще и на модификаторы

  • @paradise_cracked
    @paradise_cracked 6 років тому

    thx

  • @user-qy7yv1ut4c
    @user-qy7yv1ut4c 6 років тому

    dynamic Proxy обьяснил бы)

  • @xfg9183
    @xfg9183 7 років тому

    Как теперь писать юнит-тест на Proxy ? Как подменить захардкоженную зависимость?

    • @chepurful
      @chepurful 7 років тому

      в unit и не нужно, тестируй тот сервис что используешь, а ресурс замокай (Mockito).
      Интегрейшн сложнее, нужно делать тестоваый контекст, а там можно все что угодно уже

  • @javastream9414
    @javastream9414 3 роки тому +1

    А что вам мешало не в конструкторе прописать load(), а отдельным методом. Тогда бы при создании реального RealImage будет также создан только путь к файлу, как и в прокси сервисе. Загрузку как и в прокси вызываете когда юзер запустит видео)) Зачем огород классов городить?

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

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

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

      тут дело в том, что не всегда можно повлиять на поведение класса напрямую (сторонняя библиотека). А вот этот шаблон как раз-таки можно использовать для кастомизации чужого класса.

  • @shaldenkov
    @shaldenkov 7 років тому +1

    brazzers-hd.com во фригейте
    хы-хы

    • @programm4you
      @programm4you  7 років тому +3

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

  • @karohovhannisyan3580
    @karohovhannisyan3580 7 років тому

    почему не создать просто синглтон класс ? и с помощью объекта данного класса вызывать метод display() и в нем вызвать метод load()?

    • @karohovhannisyan3580
      @karohovhannisyan3580 7 років тому

      или если не нужно синглтон , то разве не может метод load просто вызывать в методе display()?

    • @chepurful
      @chepurful 7 років тому

      представь что тебе попался ресурс который не ты делал, а он вот берёт и закачивает.
      Если пропустишь через обёртку то ты по сути сделаешь прокси, только без такого же интерфейса и поэтому не сможешь удобно его использовать.

    • @MrChip-eg2bv
      @MrChip-eg2bv 6 років тому +1

      синглтон - антипаттерн.

    • @sergeykurk
      @sergeykurk 6 років тому

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

  • @guugle
    @guugle 4 роки тому

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

  • @lichlichi
    @lichlichi 6 років тому +3

    Не могу этого не сказать, но КАЗАЛОСЬ БЫ ПРИЧЁМ ТУТ УКРАИНА?))))))))))))))))))))

    • @programm4you
      @programm4you  6 років тому

      да, пересмотрел. И правда, забавно вышло. Наверное, в начале хотел что-то еще включить и забыл)))))

    • @dmitriyshevchenko8188
      @dmitriyshevchenko8188 5 років тому

      @@programm4you смею предположить, что вы ака Jameson Born решили перевести свой request примерно по такому маршруту: Россия => Казахстан => Украина => Казахстан => Украина => Беларусь => Казахстан. Я бы точно не ожидал такой прыти))

  • @user-on4ce8fg8s
    @user-on4ce8fg8s 3 роки тому

    казалось бы при чем тут Украина)