Моя грубая ориентация по видео, ничего не пропустил? 00:00 изобретения велосипеда)) 1:02:38 PHPUnit 1:49:30 dbunit extension for PHPUnit 2:07:00 тестирование контроллера)) 2:38:10 codeception 3:26:26 annotations 3:46:45 static proteries and objects and constants 3:56:46 запустить в консоле 4:04:51 acceptance test 4:48:46 протестить свой сайт 5:02:15 папка yii2-codeception 5:04:37 fixture testing 5:28:40 advanced template project testing 5:54:55 вопросы ответы и советы 6:14:20 теория тестирований(левая часть диаграммы) видео начинается со изобретением своего велосипеда(автор показывает как на самом деле работает написанные девелопером тесты) автору респект!
Доброй ночи!!!! Хочу выразить огромную благодарность автору канала и блога за все его публикации. Очень сильный программист, который помогает всем улучшить свой уровень, делиться правильными, нужными и верными советами. Более 4 лет работаю веб-программистом. Таких как Дмитрий очень редко встретишь. Все с таким уровнем - пафосные)) Но только не он. Всегда готов делиться своими знаниями. Жаль что так мало подписчиков - или все все знают или ... ) Продолжайте пожалуйста в этом же духе. И я думаю награда найдет Вас, за Ваши усилия и потраченное время
Слегка недоумеваю количеству возмущений по поводу длительности вебинара... Как будто никто не в курсе, что видеозапись можно поставить на паузу и просмотреть в удобном для себя режиме. Ну если человеку есть что сказать на 7 часов, то наверное это все же лучше, если бы у него было для нас информации всего на 7 минут.) Дмитрий, спасибо вам за ваш труд.
Прекрасное объяснение тестирования! Последовательное, подробное и логично-простое. Спасибо огромное) Очень приятно встречать людей, умеющих объяснять, это о многом говорит ^-^
Доброго времени суток) Ваши вебинары по yii2 лучшие из всех на youtube. Столько всего полезного. мм.. Читал на форуме yii2 о дальнейших темах вебинаров. Изменю пожалуй коммент. Инъекции зависимости на ближайшем вебинаре если бы можно было хоть немножко. В целом, любой урок будет полезен. Урок об MVC вообще шедевр) просто и понятно.
Действительно, стоило порезать на отдельные части запись, это было бы разумно. Но не беда, никто не заставляет смотреть за один подход. Большое спасибо, очень подробно всё и последовательно, для новичков особенно хорошо. P.S.: И да, конечно же ActiveRecord Sucks!
Дмитрий ведёт каст очень интересно, качественно, по-возможности освещая связанные темы для лучшего и объёмного понимания темы основной. И эта методика очень эффективна для понимания и усвоения. Очень интересно и полезно! %] Но иногда (он знает как правильно) Дмитрий подбирает такие самые омерзительные варианты произношения, что буквально подскакиваешь и зажмуриваешь уши: "файл `эксэ" (.exe), "ре`тарн" (return), "ве`рифи" (verify), ... Может это тоже фишка, чтобы "будить" аудиторию, но, на мой взгляд, такой интересной и качественной излагаемой им информации подошло бы более элегантное и академическое произношение. С уважением и ожиданием дальнейших кастов)
Интересно. Который ближе к Goethe. Оба варианта интересные, нравится, что ощущаю разницу и могу смоделировать). Return british - да, похоже сказать по-русски на "ретарн", но там тоже выхлоп c "ё".
Посмотрел наконец вебинар, очень понравилось. Спасибо за работу. Хотя, мое личное мнение, что на mock-объектах в PHPUnit стоило поподробней остановиться (3 минуты вскользь, как-то уж очень мало для такой важной составляющей модульного тестирования).
Большое спасибо за проделанную работу! Это пожалуй одно из немногих видео, где разбираются конкретные примеры использования, а не повторяются общие слова из документации. Можно прочесть всю документацию, но так и не понять, как реализовать что-то конкретное... Из минусов. Во-первых, смотреть нужно на скорости 1.5, иначе очень много времени уйдет. Во-вторых, примерно до половины ролика вся информация идет в довольно детальном формате, а вот во второй половине кажется "много воды"... Одни и те же общие вещи повторяются по несколько раз, а деталей нет, например, часть которая относится к мокам и стабам. Я вначале подумал, что это из-за отсутствия полного сценария, но, досмотрев до конца, понял, что сценарий был. Возможно автор просто устал, что вполне понятно. Еще раз спасибо!
Немного по тестированию контроллеров: В ASP .NET MVC есть возможность тестировать дейсвтия контроллера независимо от моделей. Для этого все модели, используемые в действиях контроллера инжектятся через конструктор. Ну а в модульных тестах создается заглушка и передается в контроллер при создании вместо реальной модели. Подробнее можно посмотреть тут: stackoverflow.com/questions/6646244/mvc-3-how-to-learn-how-to-test-with-nunit-ninject-and-moq/6646591#6646591 Немного погуглив узнал, что в Yii2 есть yii\di\Container, через который можно провернуть тот же прием с инъекцией моделей. А значит, тестировать контроллер в Yii2 при помощи Unit-тестов в принципе можно www.yiwork.com/doc-2.0/guide-concept-di-container.html#practical-usage
Дмитрий, спасибо большое за ваш труд! :) Вопрос: на 3:51:06 вы говорите, что каждая инициализация объекта перетирает $p. Но это не так - sandbox.onlinephpfunctions.com/code/96600f9c0f27a9affe69cf4bc1be3e2c5e0e9bff . Проверил на версиях PHP 5.4 - 7.2. Может я не так вас понял?
Подскажите, пожалуйста, название программы или сервиса, который бы позволял визуализировать множественные ветвления в виде наглядной схемы, как на видео в районе 5:59:20?
@@ElisDN, благодарю! Именно то, что я искал! Только сейчас узнал, как это правильно называется - mind map. :)) И спасибо за вебинар, в котором также масса познавательного!
Дмитрий, вы говорили что контроллеры можно тестировать функциональными тестами. есть ли возможность тестировать контроллеры rest api интеграционными, без переписывания реквеста и тд? в документации codeception тестирование api тоже производится функциональными. мне кажется что для разработки api через tdd более удобно и понятно именно Unit-тестирование. что вы можете сказать по этому поводу?
+ga mad Real Можете попробовать создать экземпляр контроллера, в нём создать действие через createAction и вызвать $action->runWithParams(...) или сам метод действия напрямую. Но пересоздавать Yii::$app->request всё равно придётся.
Чёт не понял как на 28:02 app.php был ещё небольшой, а на 28:03 уже появился тест -__- 30:33 Хм, что-то не понял, при создании экземпляра все поля же пустые! Тест должен ругаться сразу, т.к. поля required, а он ругается наоборот, когда не requried, что за бред? оО
@@ElisDN создавали ли метрики по code coverage? Поясню цель, собираемся внедрять больше тестов. Хотелось бы видеть историю изменения, процентаж покрытия. Классно было бы внедрить в уже существующую graphan-y.
@@Techpowers Для CI собирать и coverage-xml или coverage-clover и сохранять отчёты в артефакты и для плагинов вроде medium.com/@elisegev/running-tests-and-creating-code-coverage-reports-for-react-nodejs-project-continuously-with-60312b6a2dd0
Дмитрий, подскажите почему при запуске теста в codeception вылетает ошибка том, что класс модели не найден? Аналогичная проблема stackoverflow.com/questions/29681347/namespaces-not-working-with-codeception-yii2
Ответьте пожалуйста. Почему вы продолжаете топить за Yii2, если в symfony с ваших слов все хорошо? Я пишу на Yii уже годика 2-3. И настал момент серьезно задуматься над разработкой большого правильного проекта, и повышения квалификации до профессионала (архитектора), с тестами, DI, паттернами, CI и прочим. Стоит ли дальше "долбиться" в Yii2, или начать изучать Symfony прямо сейчас? Считаю вас профессионалом. Спасибо за видео о тестах, на момент написания посмотрел ровно половину, супер. Но вопрос о symfony не дает покоя, рассчитываю на ответ. Обратите внимание, пишу 23.01.2018 :)
> Почему вы продолжаете топить за Yii2 Уже давно не продолжаю. Это видео с 2015 года, когда была надежда, что что-то изменится в нём в лучшую сторону. Но, увы, за три года ничего не изменилось. В yiwork.ru/forum/viewtopic.php?f=12&t=44836 обсудили, что Yii в профессиональном плане пока потерян. Так что изучайте другие фреймворки и микрофреймворки и делайте всё серьёзное на Symfony. В свежих видео как раз рассказываю про PSR, DI и паттернам в HTTP-фреймворках.
Отличное видео! как вариант, чтоб людям немного легче было смотреть подобного типа ролики, можно упускать объяснение принципа работы встроенных методов. Думаю это упущение не будет критическим для понимания темы, зато продолжительность не будет так дизморалить))
Увидел Сифони первый раз в видео. Понял, что нужно учить его. А Дмитрий каждый раз начиная проэкт на yii2 переделывает его так, как сделано в Симфони(т.е. правильно), потом просто следуем правильным принципам(GRASP). Спасибо ему. Вопрос к Дмитрию: почему вы не делаете уроки, статьи по Symfony? Там уже эта ниша занята? Или Вам платят за это в Yii?
В написании статей "как сделать хорошо в Symfony" нет смысла, так как там всё хорошо уже из коробки, почти нет новичков и всё подробно описано в документации.
Дмитрий Елисеев то есть если мне нравится структура, в которую вы переделывать yii2, то есть смысл бросить его и идти на Симфони? Я года два назад решил учить yii, перечитал всю документацию, смотрел проэкты на git. Но я чувствовал( хотя не понимал), что все на столько криво(эти огромные контроллеры, божественные модели, а самое главное, что пугало это громадный afterSave с тайной логикой, не понимал этих сценариев..). Пытался писать в таком стиле(от бд), разочаровался в своих возможностях, немного в сторону от примера, я уже не понимал, как это реализовать, короче забросил. Решил еще попробовать с выходом yii2, пару видеоуроков, а там все тоже самое... И тут. слава Богам, попал на Вас. Читая Ваши статьи, у меня в голове начало само складываться, как реализовать архитектуру, как сделать, чтобы было удобно себе работать, как пользоваться фреймворком следуя ООП. Спасибо Вам, лучше видеоуроков и статей, чем у Вас, никогда не встречал!!! Собираюсь менять работу на IT через месяц-другой. Если получится, обязательно Вам задоначу.
И еще вопрос: Как Вы думаете, человек, который прошел ваш интенсив "Интернет-магазин", осознал его, сделал подобный проэкт сам(не переписывая, а пользуясь конспектом из интенсива), может претендовать на должность джуна в компании, где пишут на Yii2?(Он не полный ноль, а уже изучает ООП php например год)
Спасибо, Дмитрий! У меня не получается добиться того, чтобы глобально установленный phpunit был виден в phpstorm (автоподстановка и всё такое). Если кто-нибудь знает решение, поделитесь, пожалуйста!
Пока только начал смотреть, но не очень понятно, зачем что-либо сохранять в базу? Как я вижу ситуацию, следует мокнуть dao, и ассертить вызовы метода. Нет?
@@LongLong-lt9ou Именно. Сильная привязка AR к базе данных через сервис-локатор и нарушение закона Деметры в случае получения TableSchema не позволяет легко протестировать AR честными юнит-тестами без БД. Так что AR приходится тестировать в основном интеграционными тестами.
Дмитрий, 7 часов слишком много и очень все растянуто. Нужно брать примеры с зарубежных коллег. Пытался найти то что нужно из 7 часов, в итоге бросил это занятие. Неэффективно такие затяжные уроки делать.
Зачем делать такую херню создавая файлы конфиг, папки models тд вручную. После установки фреймворка эти файлы должны сами создаться. В результате какаято кривая версия фреймворка получается, которая есть только у автора этого вебинара
Моя грубая ориентация по видео, ничего не пропустил?
00:00 изобретения велосипеда))
1:02:38 PHPUnit
1:49:30 dbunit extension for PHPUnit
2:07:00 тестирование контроллера))
2:38:10 codeception
3:26:26 annotations
3:46:45 static proteries and objects and constants
3:56:46 запустить в консоле
4:04:51 acceptance test
4:48:46 протестить свой сайт
5:02:15 папка yii2-codeception
5:04:37 fixture testing
5:28:40 advanced template project testing
5:54:55 вопросы ответы и советы
6:14:20 теория тестирований(левая часть диаграммы)
видео начинается со изобретением своего велосипеда(автор показывает как на самом деле работает написанные девелопером тесты)
автору респект!
однокурсник привет
дайбохтебе здоровья!
Jumamidin Tashaliev тебе респект тоже
спасибо, мне как раз только Codeception нужен был
дерьмо тайминги, ниже комментарий более подробный и информативный
Доброй ночи!!!! Хочу выразить огромную благодарность автору канала и блога за все его публикации. Очень сильный программист, который помогает всем улучшить свой уровень, делиться правильными, нужными и верными советами. Более 4 лет работаю веб-программистом. Таких как Дмитрий очень редко встретишь. Все с таким уровнем - пафосные)) Но только не он. Всегда готов делиться своими знаниями. Жаль что так мало подписчиков - или все все знают или ... ) Продолжайте пожалуйста в этом же духе. И я думаю награда найдет Вас, за Ваши усилия и потраченное время
Очень круто, скорость 1.5 и всё ок)) спасибо за вебинар
А я всегда думал нафига есть функция ускорения и замедления. Думал для развлечения, а оказалось в таких видосах она просто жизненно необходима :).
Слегка недоумеваю количеству возмущений по поводу длительности вебинара...
Как будто никто не в курсе, что видеозапись можно поставить на паузу и просмотреть в удобном для себя режиме.
Ну если человеку есть что сказать на 7 часов, то наверное это все же лучше, если бы у него было для нас информации всего на 7 минут.)
Дмитрий, спасибо вам за ваш труд.
Это действительно круто и очень полезно)) Спасибо за проделанную работу!
+Дмитрий Александрович Спасибо за отзыв :) Лучший способ поблагодарить - это поставить лайк, подписаться на канал и на вебинары на сайте.
7 часов? О май гуднес! Спасибо за работу.
Прекрасное объяснение тестирования!
Последовательное, подробное и логично-простое.
Спасибо огромное)
Очень приятно встречать людей, умеющих объяснять, это о многом говорит ^-^
Дмитрий, огромное вам спасибо за видеоурок! У вас очень хороший преподавательский навык! Спасибо за труд!
спасибо! очень подробный и понятный материал
Доброго времени суток)
Ваши вебинары по yii2 лучшие из всех на youtube. Столько всего полезного.
мм.. Читал на форуме yii2 о дальнейших темах вебинаров. Изменю пожалуй коммент.
Инъекции зависимости на ближайшем вебинаре если бы можно было хоть немножко.
В целом, любой урок будет полезен. Урок об MVC вообще шедевр) просто и понятно.
Очень полезная информация. Внесли понимание о написании тестов вообще и для Yii в частности. Спасибо. С меня лайк и подписка)
Смотрю этот вебинар после Ваших более поздних видео. Тут вижу более .... человечного Дмитрия))))
Действительно, стоило порезать на отдельные части запись, это было бы разумно. Но не беда, никто не заставляет смотреть за один подход. Большое спасибо, очень подробно всё и последовательно, для новичков особенно хорошо.
P.S.: И да, конечно же ActiveRecord Sucks!
Дмитрий ведёт каст очень интересно, качественно, по-возможности освещая
связанные темы для лучшего и объёмного понимания темы основной. И эта
методика очень эффективна для понимания и усвоения. Очень интересно и
полезно! %] Но иногда (он знает как правильно) Дмитрий подбирает
такие самые омерзительные варианты произношения, что буквально
подскакиваешь и зажмуриваешь уши: "файл `эксэ" (.exe), "ре`тарн"
(return), "ве`рифи" (verify), ... Может это тоже фишка, чтобы "будить"
аудиторию, но, на мой взгляд, такой интересной и качественной излагаемой
им информации подошло бы более элегантное и академическое произношение.
С уважением и ожиданием дальнейших кастов)
А Вам какой вариант return из wooordhunt.ru/word/return больше нравится?
Интересно. Который ближе к Goethe. Оба варианта интересные, нравится, что ощущаю разницу и могу смоделировать). Return british - да, похоже сказать по-русски на "ретарн", но там тоже выхлоп c "ё".
Ты все-таки сделал это! Круто!
Посмотрел наконец вебинар, очень понравилось. Спасибо за работу. Хотя, мое личное мнение, что на mock-объектах в PHPUnit стоило поподробней остановиться (3 минуты вскользь, как-то уж очень мало для такой важной составляющей модульного тестирования).
7 часов... Когда бы теперь время найти все это посмотреть =)
Дмитрий, спасибо! Лайк и подписка
Большое спасибо за проделанную работу! Это пожалуй одно из немногих видео, где разбираются конкретные примеры использования, а не повторяются общие слова из документации. Можно прочесть всю документацию, но так и не понять, как реализовать что-то конкретное...
Из минусов. Во-первых, смотреть нужно на скорости 1.5, иначе очень много времени уйдет. Во-вторых, примерно до половины ролика вся информация идет в довольно детальном формате, а вот во второй половине кажется "много воды"... Одни и те же общие вещи повторяются по несколько раз, а деталей нет, например, часть которая относится к мокам и стабам. Я вначале подумал, что это из-за отсутствия полного сценария, но, досмотрев до конца, понял, что сценарий был. Возможно автор просто устал, что вполне понятно. Еще раз спасибо!
6 часов!! It's education time baby!!
Добавил 666 лайк) Видео было очень познавательным и интересным, не смотря на то, что тесты это очень скучно. Спасибо автору.
Дмитрий, спасибо за Ваш труд: видео, блог, отзывы на форумах.
Спасибо большое за такой контент.
Отличное видео. Спасибо!
было бы здорово добавить оглавление, чтобы можно было легко найти нужную тему в видео :)
+Motivation4YouLife Можете здесь в комментариях оглавление скинуть, и я в описание перенесу.
7 часов. Как сказал Александр Макаров, у Дмитрия железное терпение :)
Где он это сказал?)
@@super_mr_unknown комментарию 4 года) Я уже и не помню. Вроде в каком-то видео на вообще другом канале
Фух осилил, спасибо это было круто))
Спасибо за работу. Долго откладывал эту запись, но пришло время.
Очень классный вебинар. Супер!!! Спасибо!!!
Немного по тестированию контроллеров:
В ASP .NET MVC есть возможность тестировать дейсвтия контроллера независимо от моделей. Для этого все модели, используемые в действиях контроллера инжектятся через конструктор. Ну а в модульных тестах создается заглушка и передается в контроллер при создании вместо реальной модели. Подробнее можно посмотреть тут: stackoverflow.com/questions/6646244/mvc-3-how-to-learn-how-to-test-with-nunit-ninject-and-moq/6646591#6646591
Немного погуглив узнал, что в Yii2 есть yii\di\Container, через который можно провернуть тот же прием с инъекцией моделей. А значит, тестировать контроллер в Yii2 при помощи Unit-тестов в принципе можно
www.yiwork.com/doc-2.0/guide-concept-di-container.html#practical-usage
Спасибо, очень круто.
Спасибо!
Дмитрий, спасибо большое за ваш труд! :)
Вопрос: на 3:51:06 вы говорите, что каждая инициализация объекта перетирает $p. Но это не так - sandbox.onlinephpfunctions.com/code/96600f9c0f27a9affe69cf4bc1be3e2c5e0e9bff . Проверил на версиях PHP 5.4 - 7.2. Может я не так вас понял?
Как вижу, вы там используете массив. И вместо [22] три раза выводится [22,33].
Подскажите, пожалуйста, название программы или сервиса, который бы позволял визуализировать множественные ветвления в виде наглядной схемы, как на видео в районе 5:59:20?
У меня программа XMind. А так можно выбрать что угодно для построения Mind Maps.
@@ElisDN, благодарю! Именно то, что я искал! Только сейчас узнал, как это правильно называется - mind map. :)) И спасибо за вебинар, в котором также масса познавательного!
Включаем скорость 1.5|2 в плеере и наслаждаемся.
Подскажите, когда про selenium рассказывал?
2:38:30 Codeception
Is this for Yii2-basic or advanced?
Попробовал использовать specify, получилось 8 пропсов в before. В одном тесте 6-7 specify блоков. Тест выполняется 5 сек. Это норма?
Дмитрий, вы говорили что контроллеры можно тестировать функциональными тестами. есть ли возможность тестировать контроллеры rest api интеграционными, без переписывания реквеста и тд? в документации codeception тестирование api тоже производится функциональными. мне кажется что для разработки api через tdd более удобно и понятно именно Unit-тестирование. что вы можете сказать по этому поводу?
+ga mad Real Можете попробовать создать экземпляр контроллера, в нём создать действие через createAction и вызвать $action->runWithParams(...) или сам метод действия напрямую. Но пересоздавать Yii::$app->request всё равно придётся.
С какой минуты про DbUnit начинается?
Чёт не понял как на 28:02 app.php был ещё небольшой, а на 28:03 уже появился тест -__-
30:33 Хм, что-то не понял, при создании экземпляра все поля же пустые! Тест должен ругаться сразу, т.к. поля required, а он ругается наоборот, когда не requried, что за бред? оО
он же проверяет саму валидацию, правила которые там прописаны
Можно ли больше рассказать про покрытие кода. Какими инструментами пользуетесь? Как внедрили в CI? Как понять какие участки кода не покрыты тестами?
Для анализа покрытия доустановить XDebug, запускать phpunit --coverage-html report и смотреть отчёт в папке report.
@@ElisDN создавали ли метрики по code coverage? Поясню цель, собираемся внедрять больше тестов. Хотелось бы видеть историю изменения, процентаж покрытия. Классно было бы внедрить в уже существующую graphan-y.
@@Techpowers Для CI собирать и coverage-xml или coverage-clover и сохранять отчёты в артефакты и для плагинов вроде medium.com/@elisegev/running-tests-and-creating-code-coverage-reports-for-react-nodejs-project-continuously-with-60312b6a2dd0
22:07 - хэ-хэ, а у меня сразу получилось :)
Дмитрий, подскажите почему при запуске теста в codeception вылетает ошибка том, что класс модели не найден? Аналогичная проблема stackoverflow.com/questions/29681347/namespaces-not-working-with-codeception-yii2
Установите yii2-app-advanced и запускайте vendor/bin/codecept оттуда. Там должно всё работать.
Ответьте пожалуйста. Почему вы продолжаете топить за Yii2, если в symfony с ваших слов все хорошо? Я пишу на Yii уже годика 2-3. И настал момент серьезно задуматься над разработкой большого правильного проекта, и повышения квалификации до профессионала (архитектора), с тестами, DI, паттернами, CI и прочим. Стоит ли дальше "долбиться" в Yii2, или начать изучать Symfony прямо сейчас? Считаю вас профессионалом. Спасибо за видео о тестах, на момент написания посмотрел ровно половину, супер. Но вопрос о symfony не дает покоя, рассчитываю на ответ. Обратите внимание, пишу 23.01.2018 :)
> Почему вы продолжаете топить за Yii2
Уже давно не продолжаю. Это видео с 2015 года, когда была надежда, что что-то изменится в нём в лучшую сторону. Но, увы, за три года ничего не изменилось. В yiwork.ru/forum/viewtopic.php?f=12&t=44836 обсудили, что Yii в профессиональном плане пока потерян. Так что изучайте другие фреймворки и микрофреймворки и делайте всё серьёзное на Symfony. В свежих видео как раз рассказываю про PSR, DI и паттернам в HTTP-фреймворках.
Спасибо, за оперативный ответ. И за ссылку. Я последую вашему совету.
Отличное видео! как вариант, чтоб людям немного легче было смотреть подобного типа ролики, можно упускать объяснение принципа работы встроенных методов. Думаю это упущение не будет критическим для понимания темы, зато продолжительность не будет так дизморалить))
Увидел Сифони первый раз в видео. Понял, что нужно учить его. А Дмитрий каждый раз начиная проэкт на yii2 переделывает его так, как сделано в Симфони(т.е. правильно), потом просто следуем правильным принципам(GRASP). Спасибо ему.
Вопрос к Дмитрию: почему вы не делаете уроки, статьи по Symfony? Там уже эта ниша занята? Или Вам платят за это в Yii?
В написании статей "как сделать хорошо в Symfony" нет смысла, так как там всё хорошо уже из коробки, почти нет новичков и всё подробно описано в документации.
Дмитрий Елисеев то есть если мне нравится структура, в которую вы переделывать yii2, то есть смысл бросить его и идти на Симфони?
Я года два назад решил учить yii, перечитал всю документацию, смотрел проэкты на git. Но я чувствовал( хотя не понимал), что все на столько криво(эти огромные контроллеры, божественные модели, а самое главное, что пугало это громадный afterSave с тайной логикой, не понимал этих сценариев..). Пытался писать в таком стиле(от бд), разочаровался в своих возможностях, немного в сторону от примера, я уже не понимал, как это реализовать, короче забросил.
Решил еще попробовать с выходом yii2, пару видеоуроков, а там все тоже самое...
И тут. слава Богам, попал на Вас. Читая Ваши статьи, у меня в голове начало само складываться, как реализовать архитектуру, как сделать, чтобы было удобно себе работать, как пользоваться фреймворком следуя ООП. Спасибо Вам, лучше видеоуроков и статей, чем у Вас, никогда не встречал!!!
Собираюсь менять работу на IT через месяц-другой. Если получится, обязательно Вам задоначу.
И еще вопрос: Как Вы думаете, человек, который прошел ваш интенсив "Интернет-магазин", осознал его, сделал подобный проэкт сам(не переписывая, а пользуясь конспектом из интенсива), может претендовать на должность джуна в компании, где пишут на Yii2?(Он не полный ноль, а уже изучает ООП php например год)
Да, лучше бросить и перейти на другие фреймворки/микрофреймворки.
Такой человек не найдёт ничего интересного в компании, так как в мире Yii все привыкли всё делать криво.
Спасибо, Дмитрий! У меня не получается добиться того, чтобы глобально установленный phpunit был виден в phpstorm (автоподстановка и всё такое). Если кто-нибудь знает решение, поделитесь, пожалуйста!
Перейти в Settings -> Languages and Frameworks -> PHP и добавить путь к его папке src в список Paths.
@@ElisDN сработало. Спасибо огромное тебе, Человек!
Пока только начал смотреть, но не очень понятно, зачем что-либо сохранять в базу?
Как я вижу ситуацию, следует мокнуть dao, и ассертить вызовы метода. Нет?
В случае ActiveRecord слишком много придётся переопределять. Например, возврат TableSchema.
@@ElisDN спасибо. Я так понимаю это было не лучшее архитектурное решение во фреймворке )
@@LongLong-lt9ou Именно. Сильная привязка AR к базе данных через сервис-локатор и нарушение закона Деметры в случае получения TableSchema не позволяет легко протестировать AR честными юнит-тестами без БД. Так что AR приходится тестировать в основном интеграционными тестами.
@@ElisDN спасибо, буду смотреть ваши видео, делайте ещё )
@@LongLong-lt9ou Сейчас делаю на deworker.pro
can you do the same in english ?
No, I can't. it would be nice if somebody wrote subtitles.
Дмитрий, 7 часов слишком много и очень все растянуто. Нужно брать примеры с зарубежных коллег. Пытался найти то что нужно из 7 часов, в итоге бросил это занятие. Неэффективно такие затяжные уроки делать.
Это были прямые эфиры без монтажа. Теперь записываю короткие и чистые в deworker.pro/edu
ох, круто. но 7 часов? А можно тоже самое, но в текстовом виде, чтобы промотать разжевывание понятных вещей и прочитать именно то, что нужно
Пока только документация Codeception и PHPUnit. А если перегоните видео в текст, то будет можно.
Пожалуй целая книга получится :) Вообщем было бы классно, но работы много
какой же я лох по сравнении с вами. Чем больше я знаю, тем больше я понимаю, что ничего не знаю
Зачем делать такую херню создавая файлы конфиг, папки models тд вручную. После установки фреймворка эти файлы должны сами создаться. В результате какаято кривая версия фреймворка получается, которая есть только у автора этого вебинара
очень много воды..... бесполезное видео