• Есть ли в PHP общий класс от которого наследуются все классы?

    @EvgeniiR
    https://github.com/EvgeniiR
    Хочу здесь принимать объекты конкретного типа, а в интерфейсе нельзя указать общий тип для всех классов

    Вы нарушаете Liscow Substitution Principle когда в наследниках требуете более конкретный тип чем в родителе, не нужно так делать.

    Для экземпляров любых классов есть тайп хинт object, но он вам не поможет по описанной выше причине.

    Смысла в общем интерфейсе для всех репозиториев нет.
    Ответ написан
    5 комментариев
  • Что почитать про правильное проектирование своих приложений?

    @Flying
    Думаю что имеет смысл отметить что, безотносительно самого фреймворка как прикладного инструмента, Yii - не лучший кандидат для освоения правильного проектирования своих приложений...

    В целом, если вы хотите получше разобраться в паттернах проектирования - можно брать любую хорошую книжку по этой теме (те же Gang of Four, Мартин Фаулер (на русском) и т.п., предложенная Ярослав ссылка тоже выглядит весьма достойно), изучать, а затем пытаться найти эти паттерны в коде популярных и хорошо написанных проектов.

    Я несколько предвзят, но могу порекомендовать Symfony и Doctrine в качестве отправных точек. К примеру та же Doctrine прямо реализует целый пласт паттернов, описанных Фаулером. Symfony существенно более разнообразна, там можно встретить много различных решений.

    Изучение реализации паттернов в рамках конкретных реализаций позволит вам с одной стороны лучше понять сами паттерны, а с другой - лучше разобраться с тем как изнутри работают довольно сложные проекты, это позволит использовать их самих и, что ещё важнее, заложенные их идеи в вашем собственном коде.
    Ответ написан
    8 комментариев
  • Что почитать про правильное проектирование своих приложений?

    myks92
    @myks92
    Нашёл решение — пометь вопрос ответом!
    К дополнению выше.

    Возможно вам, как новичку, будет многое не понятно из того, что вам предлагают. Но изначально просто посмотрите хорошие проекты как они устроены и как строят свои приложения хорошие разработчики. Впервую очередь код должен быть читабельным как книжка и без документации. Папки должны быть понятны. Я уже отвечал на подобный вопрос по этой теме ранее. Возможно, это будет полезно:

    Архитектура приложения. Как сделать независимые модули (сервисы)?
    Ответ написан
    Комментировать
  • Что почитать про правильное проектирование своих приложений?

    @DEugene
    "Чистая архитектура" Роберта Мартина - маст хэв для понимания того как лучше подходить к вопросу разделения приложения на логические слои.
    Ответ написан
    Комментировать
  • Как "проксировать"("стримить") видео с youtube(или vimeo) на свой сайт?

    Олег Максимов, вы хотите усложнить скачивание видео, организовав потоковое вещание заранее созданного видеофайла. Вам все правильно сказали, вы не получите эффекта 100 % защиты, так как банально включается проигрывание и ставится запись экрана. Даже не через виртуальную машину, а просто через OBS.
    Но я бы просто хотел обратить внимание на такой момент, о котором вам почему то не сказали. Когда вы разместили iframe c плеером на своем сайте или дали прямую ссылку на плеер, они соотносится с конкретным файлом на сервере. Можно конечно сделать так, чтобы при нажатии на кнопку плей, начиналось создании трансляции из загруженного файла. Но это работает ровно для одного зрителя. Потому что второй нажавший кнопку плей получит уже сформированный поток.
    Либо для него необходимо формировать другой плеер и другую трансляцию. Умножаем это на количество одновременных зрителей.
    Представьте себе, сколько вам придется заморачиваться с созданием инфраструктуры и настройкой серверов.
    Поэтому рекомендую просто пойти другим путем:
    1) продавать свои видео не как видео, а как вебинары. Тогда вы никого не обманываете, все приходят к назначенному времени и смотрят одно и тоже. Только 80% зрителей все равно попросят запись)
    2) пойти по пути, пройденному другими компаниями. Для того чтобы исключить непосредственное скачивание с помощью плагинов и программ используется шифрование видеопотока. Способов шифрования несколько: есть реализуемые на коленке, есть коммерческие решения за разные деньги. Бонус в удобстве для зрителя, ему не нужно совершать дополнительных движений и что то устанавливать. Пример реализации, нативные DRM системы, Vimeo (на больших тарфиах), Wistia, Бумстрим - наша компания.
    3) можно предоставлять зрителю изначально зашифрованный контент. Привязка доступа идет к железу и ОС устройства просмотра. Неудобство для зрителя в дополнительной установке софта для просмотра. Такое решение предоставляют из российских компаний Инфопротектор и Starforce.
    4) ни одно из этих решений не защищает от захвата экрана. смиритесь.
    Украсть можно что угодно. Ценность видео курсов в обновлении и обратной связи.
    Ответ написан
    2 комментария
  • Кто как защищает от пиратства свое видео?

    @spaceatmoon
    О боже, ни одного верного ответа. Сейчас это делается всё намного проще.

    Для кинотеатров добавляют определенные метки "битые пикселы". Они не видны глазом и палятся даже если снято через камеру. Запись потом можно прогнать через специальное оборудование и проверить легитимность видео. Метки уникальные и можно точно узнать с какого кинотеатра произошел слив.

    К сожалению технология платная и по поводу цен сказать не могу. В цифре аналогичный способ, добавляют в видео дорожку дополнительную информацию для проверки легитимности видео.

    К большому для нас сожалению, это технология недоступна для простых смертных из-за дороговизны. Всё же это сфера услуг.

    У меня есть идея "для бомжей". Если вы уверены, что не будет подмены звуковой дорожки, то можете на определенных частотах слабо слышимых человеком звукам добавить свою информацию по копирайту.
    How to Hode Secret Message. Уникальность технологии заключается в том, что на спектрограмме всё четко видно.
    Ответ написан
    2 комментария
  • Кто как защищает от пиратства свое видео?

    sim3x
    @sim3x
    Такие защиты всегда комплекс мер по уменьшению копирования
    Они требуют кучи денег и редко бывают еффективны
    - стеганография и водяные знаки уникальные для каждого пользователя
    - верификация получателя контента
    - система слежения за торрент треккерами и просто площадками
    - хардварные системы для тв
    - ...

    Кроме того - сейчас идет огромная борьба за внимание и время
    Любое ваше решение, которое создаст неудобства для пользователя автоматом означает, что ваш пользователь уйдет к другим производителям контента в два клика
    Даже ваше подозрение, что юзер что-то скопировал и дал кому-то может накинуть на вентилятор и от вас уйдут все
    Ответ написан
    2 комментария
  • Кто как защищает от пиратства свое видео?

    evgensenin
    @evgensenin
    Yii2 || Laravel, vue & nuxt
    вряд ли у вас уникальное видео, стоящее миллионы руб/долларов. поэтому не парьтесь, скопируют, а вы обновляйте видео новыми фишками, актуализируйте материал и делайте всё, чтобы ваш материал бы был ценнее пиратски сворованного
    а вообще предлагаю дорогостоящий способ:
    1. заключайте договор с прослушивателем с обязательствами.
    2. видео защитите с правовой точки зрения (юридически закрепите за собой авторские права)
    3. в видео каждого прослушивателя добавляйте невидимые глазу метки, чтобы однозначно идентифицировать слушателя.
    4. если какой-то прослушиватель поведет себя по-пиратски и выложит в интернет - можете подавать иск. тут главное юридическая сила (нужны компетентные специалисты). (предварительно уведомив пирата для полюбовного закрытии дела)
    5. на всех видеохостингах и раздачах требуете удалить ваш материал. роскомнадзор поможет.
    6. но и это не спасет, то хотя бы возместите часть денег на разработку видео и юристов.
    Ответ написан
    5 комментариев
  • Кто как защищает от пиратства свое видео?

    @rPman
    Существуют технологии DRM защиты контента от копирования (для каждого браузера свои если нужен именно веб), но они требуют 'надежные' пользовательские устройства, т.е. от соответствующих приложений на машине до аппаратной поддержки. На сколько я помню hdmi подключение к монитору даже содержит соответствующие возможности но давно уже взломано. С другой стороны, чтобы скопировать DRM видео нужно как минимум оборудование, хоть и не сильно дорогое но хоть немного ограничивает пиратство.

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

    И это хорошо, что такие технологии не безальтернативны! Потому что даже имея скудный инструментарий, правообладатели дрючат всеми способами как производителей контента так и потребителей, а что будет когда вариантов не останется?
    Ответ написан
    2 комментария