Laravel урок №26: [ Что такое Репозиторий? #2 ]
Вставка
- Опубліковано 20 сер 2024
- Продолжение. Это второе видео посвященное репозиториям (repository) в целом и репозиториям в нашем проекте в частности.
#laravel #видеокурс #репозитории
Видеокурс по изучению фреймворка Laravel (5.7.2 - 5.7.25)
Автор: Дмитрий Афанасьев.
Плейлист курса: goo.gl/jzfKeP
Канал: goo.gl/3gMEeU
www.donational...
Выразить благодарность, поддержать донатом развитие канала.
Продолжение предыдущего видео про репозитории.
Очень интересная тема)
Благодарю за кучу жизненных примеров и за твой опыт. Очень полезно и именно в таком доступном формате!
Благодарю!
Шло 2е видео и 3й месяц работ, у нас было 3 таблицы и неизвестное тз, мы обсуждали а что бы не свинтить на другую СУБД...
Дима, мне нравиться, что ты рассказываешь о тонких ньюансах при кодинге, как в данном ролике. Побольше бы такого)
Благодарю!
Дмитрий, спасибо за видео! В особенности за то, что вы объясняете, как делать не стоит (пусть даже эта идея "на будущее выглядит как беспроигрышный вариант"). Только начал изучать laravel (как и программирование в целом) и как по мне - это информация намного ценнее, чем сделать блог за 20 серий.
Красава, все очень толково рассказываешь, особенно о тех вещах, о которых другие молчат. А за экшоны и роуте отдельное спасибо)))
Как то выполнял тестовое задание, простой чат с ролями. Получил фидбек, что отсутствует понимание MVC, что надо было делать с репозиториями и сервисами в 5 строк, а еще что конфиг тестового проекта добавил в гит ) Так что работодатели тоже разные бывают. А у вас реально с практической точки зрения 👍
Просто иногда, а по большей части зачастую, с вашим кодом будет работать еще 20 человек, в разные отрезки времени жизни компании, и когда существует некий стандарт, можно избежать многих неудобств. Это касается не только работы после вас, но представьте что вы пришли в компанию которая существует уже лет 5, и начинаете трудиться над проектом, который разрабатывали 40 человек, и каждый из них, видел структуру по своему, использовал свои нейминги, свой подход. Это просто ад=)
Просто шикарный урок! Чувствуется, тема очень больная )) особенно в отношении юных падаванов
Я сколько читал про шаблон и видел его в паре готовых проектов, так и не понял, зачем нужен репозиторий, когда есть ORM. И в репозитории просто дублировались методы модели, не привнося ничего нового.. такая лишняя абстракция. ORM уже абстрагирована от базы данных, Ларавелу вообще пофиг с какой бд работать. Чтобы пересесть с майскл на постгрес не надо почти ничего переписывать. Только изменить конфиги. Об этом даже недавно статья была на хабре "Пожалуйста, прекращайте говорить про шаблон Репозиторий с Eloquent", а то я уже начал думать, что я просто лох и нуб, что не могу понять зачем в ларавеле юзать репозиторий.
Полностью поддерживаю!
Спасибо!
4:40 - Эти слова надо напечатать золотым цветом на тёмно-зелёном бархате, закатить в шикарную рамку и повесить на стену
Ты конечно же всё правильно говоришь, но я вот подумал. Если один только репозиторий мы будем изучать неделю и если учесть, что мы пока пишем код так как писать его не нужно (в первых видео ты так сказал), то наверное Блог на том коде на котором нужно, мы закончим писать на Laravel 8 и это только первый сезон.
И говоришь ты всё правильно и сказать это нужно. Я понимаю это. Но может быть как то надо оптимизировать уроки, а то получается слишком затянуто?
Это палка о двух концах.... (я тоже хочу чтобы "Игра престолов" последний сезон вышел сразу, все серии и на ютубе!!!!). И есть люди которые говорят противоположное - хотят чтобы абсолютно все разжевывалось, например детальный осмотр ФАКЕРА!!!!! (А не так как у меня - беглый взгляд).
То есть сделать так чтобы был доволен и ты и тот человек - не возможно в принципе. По этому какой выход? Выход один - делать так как автор считает нужным - а недовольные как и довольные будут всегда.
Соглашусь с Сергеем, те кто давно с Димой, давно уже понимают эти мелочи и им хочется уже перейти к верному созданию. Но и Дмитрия понять можно, канал растет и новичков приходит новых много, хорошо если они догадались посмотреть прошлые уроки и плейлисты, а если нет, начинают говнить в коментах.
Я думаю есть вариант решить это и с донатом и с курсом. Для патреонов даешь доступ на сайте к готовым урокам и всё сразу. Для всех остальных выпускаешь как обычно по N-серии/в неделю,месяц на ютубе. Курс по факту получат и те и другие, но те кто внес вклад в проект получают его раньше =)
@@DmitryAfanasyev Мне кажется, что Сергей хотел сказать, что сейчас за 7 минут ты раз 500, наверное не меньше, повторил "вот допууустим тебе надо будет перейти с mysql".
@@user-gl3ou8fd4w нет. Сергей другое имел ввиду. Во всех своих суждениях ты ошибся. Как минимум два бага найдено в твоем комменте.
Раскажу вам историю зачем может понадобится сложный репозиторий или еще одна абстракция:
Создаю проект, который на основном сервере работает как бекенд полноценный с админкой и прочими плюшками, а при подключении сервера в другой локации данные проще забирать по АПИ - и так у нас фабрика, которая выбирает работать с БД напрямую (на основном сервере) или дергать данные по АПИ (геосервера)
Как-то так)))
твое любимое разделяй и властвуй
Спасибо
Мне интересно если в
к EF, реализовать нормальный и понятный crud. Это будет каким то патерном?
Дмитрий, по поводу того что пишут люди снизу, на мой взгляд они от части и правы и нет. Мне кажется многие не берут в расчет, что в вашем курсе по мимо просто смотрим код - переписываем к себе, вы делитесь опытом + знаниями из реальной жизни проекта и вашего как разработчика, а это очень ценно на самом деле, особенно для тех кто хочет развиваться в этой сфере, а не просто создать для развлекухи свой блог, а потом кичиться перед всеми какой он программист. То, что я вижу у вас в видео чем-то больше походит на лекцию в универе, нежели очередной курс строительства блога, просто в меньшем масштабе.
Как предложение с моей стороны, почему бы не сделать разбиение уроков на логические куски, вы же навряд ли, когда записываете новое видео не имеете перед собой\в голове плана самого видео. Например возьмем эти же самые репозитории, почему бы не сделать 1 комплексное видео связанное с теорией\реальным опытом, и уже последующие которые бы содержали в себе уже именно сам код, ну и соответственно как то это помечать в тайтле видео. Это поможет на мой взгляд и тем, кто зашел лишь бы просто переписать код, и они будут визуально знать что им смотреть и тем, кто хочет понимать что он делает. Как писал ниже человек, если он захочет поделится ссылкой с другом\коллегой, на тему которую вы хорошо осветили, он сможет точечно скинуть ссылку на конкретное видео, где ново смотрящему не придется наблюдать не за тем, за чем он изначально пришел. Например, зная, что это видео о теории, я могу его посмотреть в транспорте, т.к. понимаю, что компьютер мне не понадобится и код переписывать я не буду. Плюсом ко всему, это возможно поможет унифицировать и временные рамки самих видео, чтобы они в среднем все шли одинаково. В общем User friendly и все такое :)
11:35 - "классика, почему, потому что сайт посвящен шаблонам проектирования, с примерами на PHP"
видимо это курс Дмитрий делал, до своего курса по паттернам по фактам уничтожил этот самый designpatternsphp :)
я вот согласен смыслей бизнеса там быстрее на красоту плевать .... тогда как вариант делать так тима креативщиков клипает а бы как а вторая тима глядит на это и на основание этого делает феншуй да потеря денег но зато выигрыш во времени
А если не свинчивать, а просто в проекте используется mysql и какая-нибудь nosql. И вдруг нам понадобилось в одном месте оптимизировать доставания миллион данных из бд (из mysql) как раз с помощью перевода их в nosql, типа она порезвей будет. Тогда будет ли профит от репозиториев? Или всё таки описанный мною кейс не реален? P.s. я просто фронт, пока что мало чего знаю
Кейс вполне реален и встречался в практике. В рамках laravel это может решаться силами фреймворка, без лишних изощрений. Либо можно работать "по Мартину" (Роберт Мартин, Чистая архитектура) и полностью отделиться от бд сделав ее плагином, в этом случае шаблон "репозиторий" можно использовать иначе (например так сделоно в apiato)
@@DmitryAfanasyev Спасибо!!! А в рамках laravel это сделать - у вас это можно будет где-нибудь в видео найти?
Таких видео у меня еще нет. Начать удобнее отсюда - stackoverflow.com/questions/42260285/laravel-custom-db-driver
Друг, курс хороший, спасибо тебе, но... Приходится тебя слушать на скорости 1.75! - Ты тааааааак доооооооолго таак мнооооого разговариваешь и перепрыгиваешь с темы на тему.......... Быстрее документацию получается читать) А ведь кажется что видео должно быть быстрее)
Если говорить скороговоркой - найдутся те кому это не понравится. И раз получилось ускорить - в чем проблема? Вопрос ведь решён....
История из жизни затянулась)) Но все равно интересно
Само создание BlogCategoryRepository я не увидел?? Подскажите как правильно создать
Из видео ничего не вырезано... Файл создаётся руками - артизан команды именно для создания репозиториев нет. Весь код файла должен быть в видео.
Ну раз ты уже записал видео по какому-то моменту - выкладывай сразу. а то 2 части про репы есть, а третья? И не вижу смысла разбивать на продолжения... Если у меня кто-то спросит совета о чем-то я не смогу дать твое видео если оно разбито на продолжение. Не разбивай, если ты освещаешь одну тему
Смысл есть. Да тебе его не видно..... И да, был бы я зрителем ВОЗМОЖНО мне бы тоже хотелось всё и сразу (хотя мне больше по душе короткие видосы).... Но пока так, возможно в будущем что-то изменится. И любое видео курса рассматривается в контексте курса. Открывать курс в середине.... ну такое..... Что делать если желаешь поделиться с товарищем? Кидать ссылку и на сам курс и на первое тематическое видео. Причем это "неудобство", оно исключительно для тех кто смотрит, так сказать "LIVE", для остальных, тех кто начал сегодня с первого видео - этой проблемы не будет.
@@DmitryAfanasyev Я о том, что у тебя какой-то момент хорошо освещен и хочется поделится этим моментом с НЕ новичком и проще кинуть одну видяху, чем говорить чтоб посмотрел это и два последующих.
@@DmitryAfanasyev видосики должны быть атомарны ведь. Миграции, сиды, репы, сервис слои или композеры... Хотя это мое мнение. Взял видео об миграциях - просмотрел и понял
Это формат ларакаста - когда ты вроде посмотрел, усвоил, познал лару.... а потом говнокодишь жирными контроллерами, моделями и тп (но с глубокими знаниями лары!) У этого курса иной формат. Возможно будет и формат ларакаста - тот же хелп-справочник но в видеоформате. И опять же - лично мне не по душе длинные видосы.
Гапоминает старый советский анекдото про советского партийного деятеля, который приехал в кетай...
Рассказывайте))!
@@user-xy4ef9yq6y Ну как начала говорить, говорил 5 минут... Переводчик говорят - сяо.... Опять этот деятель вещает еще 5 минут... Опять переводчик - сяо... Ну и так далее... Закончил он речь, сказал типа до свидания товарищи - переводчик - дан сяо.... Заинтересовал этот вопрос этого деятеля и он спросил что означает это сяо и дан сяо... Ему отвечают - болтает и закончил болтать
@@vtc5ful ))))!!
Что я понял в конце видео: плохому репозиторию и яйца мешают.
Я наверно совсем деревянный.... Но так и не понял как появилась папка Repositories и файл CoreRepository. Пошел гуглить.
Руками создали. Это не является частью фреймворка и нет команд для создания.
Спасибо