R class Tech
R class Tech
  • Видео 58
  • Просмотров 847 206
PHP 8.3 - Плюшки, изменения и производительность
Поговорим об основных изменениях в новой версии PHP 8.3, а они там есть, пусть и не столь существенные. Чуть-чуть затронем производительность в узких кейсах. Всё просто и понятно, как обычно.
00:00 - Вступление
00:37 - Изменение свойств при клонировании
04:07 - Типизированные константы
04:18 - #[Override] атрибут
06:11 - json_validate()
07:49 - Извлечение констант из классов
08:30 - Анонимные классы только для чтения
08:52 - Randomizer дополнения
10:52 - Новые исключения по дате/времени
11:47 - unserialize() обработка ошибок
12:05 - Изменения в range() функции
13:28 - Трейты и статические свойства
14:11 - Замыкание магических методов
15:26 - Инвариантная видимость констант
15:52 - get_class(), get_paren...
Просмотров: 4 627

Видео

Оптимизация обработки данных на PHP
Просмотров 1,9 тыс.7 месяцев назад
Общие практики и подходы для работы с данными в момент выгрузки и загрузки больших (и не очень) объемов данных. Будут как Right-way так и bad practice. 00:00 - Вступление 01:58 - Планирование 04:58 - Дробление 06:40 - Индексы 07:53 - минутка bad practice 14:44 - Про UPDATE 15:47 - RAM 18:15 - ORM и LazyLoad 25:24 - Мониторинг 26:12 - Заключение Теги: php, orm, база данных, mysql, индексы, синхр...
Doctrine: запросы, связи. DQL, QueryBuilder, JOIN, каскадные операции.
Просмотров 1,4 тыс.7 месяцев назад
Вторая часть мини-курса по Doctrine. Изучаем связи, запросы и коллекции. Рассмотрим стратегии извлечения, Regular и Fetch Join, виды результатов запросов, а так же почему и когда стоит использовать DQL и Query Builder. Первая часть: ruclips.net/video/K5yRtP1Nw7w/видео.html Презентация: docs.google.com/presentation/d/10iIITL08OFyj5S-fVoYrZMrwvMEiih_A4JCkv9Guv6Q/edit 00:00 Вступление 00:26 План 0...
Doctrine ORM: Entity, Identity Map, Unit Of Work
Просмотров 3,2 тыс.10 месяцев назад
Первая часть небольшого курса по Doctrine ORM. Поговорим об ORM в целом, о Doctrine и ее механизмах работы: Entity, Repository, Identity Map, Unit Of Work и так далее. 00:00 - Приветствие и вступление 00:40 - План 00:56 - Что такое ORM 03:44 - Реализации ORM 03:55 - ActiveRecord 07:34 - DataMapper 10:21 - Что лучше? 11:56 - О Doctrine 13:18 - Entity 14:12 - Anemic Model 17:12 - Rich Model 20:27...
PHP 8.0 - 8.2 | Производительность и фичи
Просмотров 15 тыс.Год назад
Краткий чейнджлог по PHP от 8.0 до 8.2. Плюсом разберем что сделали с производительностью в 8.2 (а об этом почему-то почти никто не говорит). Всё как обычно - мемы и гифки в комплекте :) 00:32 Стартуем! 01:13 8.0: полезное 06:26 8.1: полезное 13:31 8.2: полезное 15:26 Производительность 8.2 16:52 Динамические свойства 17:50 Random 18:03 Подписывайтесь :)
Ошибки web-дизайнера | Сложные элементы web-страниц | Дизайнер vs Верстальщик
Просмотров 638Год назад
Разберем сложные элементы web-страниц, которые часто рисуют дизайнеры, а верстальщикам потом с этим жить. Как быть, куда бежать и что делать? Мемы и гифки - всё как обычно) 00:30 Стартуем! 02:11 Иконки без подложки 04:03 Формы в модалках 05:25 Endless-пагинация 06:38 Кнопка "Назад" 08:09 Анимация (но не сейчас) 09:43 Плавные переходы 13:40 Кастомные инпуты 16:24 Плавный скролл 20:10 Модные вста...
Большие файлы логов? | LogFileNavigator | Удобная работа с логами
Просмотров 2,7 тыс.2 года назад
Расскажем о проблемах, связанных с большими файлами логов и небольшой программке, которая позволяет быстро и удобно работать с такими логами.
Пакетные менеджеры, composer, lock-файлы
Просмотров 4,1 тыс.2 года назад
Сегодня кратко говорим о пакетных менеджерах, в частности о composer, немного затронем yarn и npm, lock-файлы и работу пакетных менеджеров с ними. Посмотреть презентацию: docs.google.com/presentation/d/1tsqrHdba44dIT8RNIt300E-1XF-gsIV483emM7H-2A4/edit?usp=sharing Теги: composer.json, package.json, composer.lock, composer, пакетный менеджер
Inversion of Control, Dependency Injection, DI Container - что это такое и кто все эти люди?
Просмотров 20 тыс.3 года назад
В этом видео мы поговорим о: - Inversion of Control (Инверсия управления, инверсия контроля) - Dependency Injection (Инъекция зависимостей, внедрение зависимостей) - Dependency Injection Container (DI Container) - Service Locator Расскажем что это такое и покажем реализацию этих штук на примере PHP. Пачка примеров и мемасиков, всё как обычно :) Презентация: docs.google.com/presentation/d/1d1vd0...
Распаковка гаджета от Яndex
Просмотров 8843 года назад
Распаковка гаджета от Яndex
Базы данных. ClickHouse. Колоночные СУБД
Просмотров 41 тыс.4 года назад
Базы данных. ClickHouse. Колоночные СУБД
Базы данных. NoSQL. Redis
Просмотров 30 тыс.4 года назад
Базы данных. NoSQL. Redis
Базы данных. NoSQL. MongoDB
Просмотров 29 тыс.4 года назад
Базы данных. NoSQL. MongoDB
Базы данных. MySQL. Транзакции
Просмотров 35 тыс.4 года назад
Базы данных. MySQL. Транзакции
Базы данных. MySQL. Индексы
Просмотров 66 тыс.4 года назад
Базы данных. MySQL. Индексы
Базы данных. MySQL. Alter, Engines
Просмотров 6 тыс.4 года назад
Базы данных. MySQL. Alter, Engines
Базы данных. MySQL. Подзапросы
Просмотров 19 тыс.4 года назад
Базы данных. MySQL. Подзапросы
Web Components
Просмотров 2,5 тыс.4 года назад
Web Components
Базы данных. MySQL. Update, Delete
Просмотров 5 тыс.4 года назад
Базы данных. MySQL. Update, Delete
Адаптивные изображения (webp, picture, source)
Просмотров 2,9 тыс.4 года назад
Адаптивные изображения (webp, picture, source)
Базы данных. MySQL. Left Join, Right Join
Просмотров 8 тыс.4 года назад
Базы данных. MySQL. Left Join, Right Join
Babel
Просмотров 6854 года назад
Babel
Базы данных. MySQL. Cross Join, Inner Join.
Просмотров 12 тыс.4 года назад
Базы данных. MySQL. Cross Join, Inner Join.
webpack для начинающих
Просмотров 19 тыс.4 года назад
webpack для начинающих
Базы данных. MySQL. Select: GROUP, HAVING
Просмотров 16 тыс.4 года назад
Базы данных. MySQL. Select: GROUP, HAVING
Базы данных. MySQL. Функции, AS, UNION.
Просмотров 9 тыс.4 года назад
Базы данных. MySQL. Функции, AS, UNION.
Базы данных. MySQL. Select: Where, Order, Limit
Просмотров 9 тыс.4 года назад
Базы данных. MySQL. Select: Where, Order, Limit
Базы данных. SQL. MySQL. Insert
Просмотров 8 тыс.4 года назад
Базы данных. SQL. MySQL. Insert
Базы данных. SQL. MySQL: Внешние ключи
Просмотров 18 тыс.4 года назад
Базы данных. SQL. MySQL: Внешние ключи
Базы данных. SQL. MySQL: Таблицы, типы данных
Просмотров 23 тыс.4 года назад
Базы данных. SQL. MySQL: Таблицы, типы данных

Комментарии

  • @alanhadartsev4155
    @alanhadartsev4155 2 дня назад

    Чувак ты лучший , с меня подписка и лайк !!!

    • @Rclass
      @Rclass 2 дня назад

      Спасибо, стараемся для вас 🙏

    • @alanhadartsev4155
      @alanhadartsev4155 2 дня назад

      @@Rclass подскажи пожалуйста , материал понимается вроде неплохо , а вот когда задачи перед носом , не могу применять , что посоветуешь 🤔?

  • @user-yr2gp5yt5p
    @user-yr2gp5yt5p 4 дня назад

    Вы точно мне счёт потом не пришлёте, такие вещи бесплатными не бывают

    • @Rclass
      @Rclass 4 дня назад

      Как видите, бывают ) Пользуйтесь, всё для вас :)

  • @user-yr2gp5yt5p
    @user-yr2gp5yt5p 4 дня назад

    Ну красаучик есть же

    • @Rclass
      @Rclass 4 дня назад

      Спасибо ❤️

  • @user-yr2gp5yt5p
    @user-yr2gp5yt5p 7 дней назад

    Информативно

    • @Rclass
      @Rclass 6 дней назад

      Спасибо 🥹

  • @user-yr2gp5yt5p
    @user-yr2gp5yt5p 7 дней назад

    чуть не забыл поставить LIKE

    • @Rclass
      @Rclass 7 дней назад

      Спасибо :)

  • @millkiway3682
    @millkiway3682 12 дней назад

    23:30 а как форсить нужный тип данных для БД? Например нужно чтобы доктрина в mysql создала char(32) not null default='sometxtobj'

  • @le_mon_tree
    @le_mon_tree 16 дней назад

    большое спасибо за объяснение что это происходит именно внутри фреймворка и именно в тех местах, которые нам выделены для написания кода и что мы не всегда имеем над ними полный контроль!

    • @Rclass
      @Rclass 16 дней назад

      Старались для вас 😊

  • @artfiltersai
    @artfiltersai 17 дней назад

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

    • @Rclass
      @Rclass 8 дней назад

      Спасибо, стараемся для вас!

  • @alexzhaliazouski5924
    @alexzhaliazouski5924 18 дней назад

    как вам не стыдно сделать ролики на такую важную тему и на продолжать их

    • @Rclass
      @Rclass 17 дней назад

      Добрый день! Презентация по следующей части готова, ролик снимать будем через неделю-две. Напишите в личку в телеграм нашему техдиру: @qantus - выдадим вам ссылку :)

  • @dj_omen
    @dj_omen 18 дней назад

    Таблица users а выбирают из workers. Нормальное начало))

  • @millkiway3682
    @millkiway3682 18 дней назад

    Почему картавых и неуверенных в себе людей заставляют этим заниматься. По населению картавых людей 2%, но судя по Ютубу кроме них некому больше этим заниматься

  • @subarin4802
    @subarin4802 19 дней назад

    Непонятно зачем в этот список Nuxt попал)

    • @Rclass
      @Rclass 19 дней назад

      Там половина не понятно зачем) Дикий компот :) Но вот так попросили осветить)

  • @Siplyi_s_otvertkoij
    @Siplyi_s_otvertkoij 25 дней назад

    вообще не понимаю, чем третья усиленная форма отличается от второй, если что там, что там, мы вводим таблицу связей

  • @infotauta9234
    @infotauta9234 28 дней назад

    Вам бы в языки типизирование пойти а не ПХП засирать, со своей типизацией! Кто вас тут держит!!!???

    • @Rclass
      @Rclass 28 дней назад

      Мы прекрасно понимаем и плюсы и минусы динамической типизации и то что нам дают выбор очень ценим. В первую очередь мы за то чтобы развивался язык на котором работаем - не больше и не меньше.

    • @infotauta9234
      @infotauta9234 28 дней назад

      @@Rclass Спасибо за ответ! Никто ни в коей мере не говорит о стагнации! Но на данный момент по моему мнению. Наш ПХП превращается в помойную яму в которую спихивают все. Не понимая, не осознавая, не думая. Хорошо ли это. Какие улучшения это дает. Гляньте на свое видео. Кака упала скорость (Да в 8.2 может и поднялась)!!! А сколько дурочков не думая прыгают с версии на версию. Это как с пластиком на планете. Тотальное, не обдуманное использование. И какой результат. Вот скажите мне, зачем теперь отрицательный индекс в массиве!!!??? Спору нет проверка json на валидность это хорошо. ?? это хорошо. Много хорошего. НО ещё больше плохого. Та же типизация. Предположим кто то хочет. Ну тогда пускай, он включит это. А в ядре все как было до этого.

  • @user-zs4kv4ii7d
    @user-zs4kv4ii7d Месяц назад

    О своей лекции автор точно сказал на 4-й минуте. Выключаю.

  • @websoda
    @websoda Месяц назад

    имба

  • @DimaTiunov
    @DimaTiunov Месяц назад

    5.20 так сделай Contact объектом (Интерфейсом), а в нужном месте передавай реализаций и пройдёшь ревью

  • @donjuanfamily1128
    @donjuanfamily1128 Месяц назад

    Итнро топ, чисто за него сразу лайк 👍

    • @Rclass
      @Rclass Месяц назад

      Спасибо)

  • @guilbertde1516
    @guilbertde1516 Месяц назад

    Отличный ролик, много полезной инфы доступным языком! Спасибо!

    • @Rclass
      @Rclass Месяц назад

      Для вас стараемся ;)

  • @Dzheintululu
    @Dzheintululu 2 месяца назад

    Паспорт можно утерять и будет другой номер, паспорт нельзя за первичный ключ брать

    • @Rclass
      @Rclass 2 месяца назад

      Для примера! Всё для примера! Естественно в каждой отдельной ситуации нужно думать головой)

  • @belphegor6979
    @belphegor6979 2 месяца назад

    Спасибо Гене, без него бы не понял!

    • @Rclass
      @Rclass 2 месяца назад

      Спасибо за отклик)

  • @TheILOVEYOUXD
    @TheILOVEYOUXD 2 месяца назад

    Парень немного зажатый, я первый раз на канале. Чисто мое мнение, надо мне кажется немного на чиле быть 😅

    • @TheILOVEYOUXD
      @TheILOVEYOUXD 2 месяца назад

      А так очень полезно, спасибо ❤

    • @Rclass
      @Rclass 2 месяца назад

      Сложно на камеру работать, а так Рома у нас в целом всегда на чиле)

  • @user-nf1td4hh7y
    @user-nf1td4hh7y 2 месяца назад

    Антон спасибо за Ваши лекции, супер

    • @Rclass
      @Rclass 2 месяца назад

      Всегда пожалуйста :)

  • @user-nf1td4hh7y
    @user-nf1td4hh7y 2 месяца назад

    Антон, вы супер объясняете! Спасибо!

    • @Rclass
      @Rclass 2 месяца назад

      Спасибо, стараемся :)

  • @user-si4qz6ps9o
    @user-si4qz6ps9o 2 месяца назад

    ведущий позитивный, класс)

    • @Rclass
      @Rclass 2 месяца назад

      Спасибо, мы стараемся)

  • @GuruNemo
    @GuruNemo 2 месяца назад

    можно было бы пару слов сказать про Criteria, что это и зачем.

    • @Rclass
      @Rclass 2 месяца назад

      В следующем видео информация эта есть :) И достаточно подробно :)

  • @GuruNemo
    @GuruNemo 2 месяца назад

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

    • @Rclass
      @Rclass 2 месяца назад

      Согласны, что-то с этим надо делать. Раньше мы просто экран камерой записывали, но в итоге было тоже плохо(

  • @GuruNemo
    @GuruNemo 2 месяца назад

    а в какой момент Доктрина использует рефлексию при работе с классами объектов?

    • @Rclass
      @Rclass 2 месяца назад

      Надо забираться "под капот" )

  • @GuruNemo
    @GuruNemo 2 месяца назад

    так и в чём разница между Active Record и Data Mapper? если и там и там можно в модель запихивать поведение?

    • @Rclass
      @Rclass 2 месяца назад

      Гм, в подходе?) Active Record - сам объект умеет себя сохранять и удалять из базы. В DataMapper объект - это просто объект.

    • @GuruNemo
      @GuruNemo 2 месяца назад

      @@Rclass но Rich Model судя по объяснению в видео это тот же Active Record.

    • @Rclass
      @Rclass 2 месяца назад

      @@GuruNemo отнюдь. Бизнес-логика и логика уровня работы с сохранением данных - это разные вещи.

    • @GuruNemo
      @GuruNemo 2 месяца назад

      @@Rclass если не пихать бизнес логику в Active Record, то отличия с Rich Model не вижу. Ещё раз пересмотрел видео, но отличия не нашёл кроме обращения напрямую и через Data Mapper.

  • @jlvby
    @jlvby 2 месяца назад

    У Зандстры в книге есть рекурсивный DI-контейнер

    • @Rclass
      @Rclass 2 месяца назад

      🚀

  • @user-cx8kh4sb2i
    @user-cx8kh4sb2i 2 месяца назад

    все круто, но цокать поменьше надо)

    • @Rclass
      @Rclass 2 месяца назад

      Спасибо, исправимся)

  • @lafoerteaitishnik4793
    @lafoerteaitishnik4793 2 месяца назад

    PHP-разработчики - самые добрые и нетоксичные среди всех😇

    • @Rclass
      @Rclass 2 месяца назад

      Именно так ^_^

  • @hook_off
    @hook_off 2 месяца назад

    дай бох здоровья

    • @Rclass
      @Rclass 2 месяца назад

      Спасибо)

  • @mikurrey416
    @mikurrey416 3 месяца назад

    Спасибо! Не всё понятно сразу, видимо, нужно еще вернуться к просмотру после небольшой практики. Но в целом - здорово!

    • @Rclass
      @Rclass 3 месяца назад

      Спасибо за положительный отклик, нам очень приятно :)

  • @KGB1st
    @KGB1st 3 месяца назад

    походу у меня вся база в 2 и 3 НФ, я даже составные ключи не делаю.. это уже даже вошло в привычку. Если я вижу, что две совершенно разные сущности сразу создаю таблицу объединения по внешним ключам.. до 4 и 5 НФ даже дело не доходит :)

    • @Rclass
      @Rclass 3 месяца назад

      Это же замечательно :) Отличная привычка! Всем бы такую)

    • @KGB1st
      @KGB1st 3 месяца назад

      @@Rclass ладно.. спасибо.. всегда хотел спросить такую вещь. Хранение и поиск по строкам очень затратно? Тогда почему ФИО мы не разбиваем на имена и отчества, которые часто встречаются, что бы в таком случае фамилию хранить рядом с их индексами и поиск выполнять только по фамилии?

    • @Rclass
      @Rclass 3 месяца назад

      @@KGB1st всё зависит от задачи, если у вас огромная информационная система в которой это будет иметь смысл - именно так и нужно делать! :)

  • @wsg2843
    @wsg2843 3 месяца назад

    Ответы по задачам: SELECT worker_id, SUM(salary)FROM `salaries` GROUP BY worker_id; SELECT worker_id, AVG(salary) as salary FROM `salaries` WHERE (date<"2020-03-01") GROUP BY worker_id ORDER BY salary DESC; SELECT MONTH(date) as month, AVG(salary) FROM `salaries` GROUP BY month; SELECT MONTH(date) as month, SUM(salary) as sum FROM `salaries` GROUP BY month HAVING sum >=2000; SELECT COUNT(tag_id) as count, tag_id FROM `tags_tasks` GROUP BY tag_id ORDER BY count DESC; SELECT COUNT(tag_id) as count, tag_id FROM `tags_tasks` GROUP BY tag_id ORDER BY count DESC LIMIT 1 OFFSET 1; SELECT worker_id, COUNT(end_at) as count FROM `tasks` WHERE end_at is not null and worker_id not in (11,12) GROUP BY worker_id ORDER BY count DESC; SELECT MONTH(date), DAY(date), SUM(salary) FROM `salaries` GROUP BY MONTH (date), DAY(date);

    • @Rclass
      @Rclass 3 месяца назад

      Лучший подписчик просто :) Спасибо большое :)

  • @wsg2843
    @wsg2843 3 месяца назад

    Запросы, которые получились по задачкам, просто оставлю здесь: 1 SELECT MAX(salary) FROM `salaries`; 2 SELECT description as `Before`, REPLACE(description,"Починить","Исправить") as `After` FROM `tasks` where description LIKE "%починить%" or description LIKE "%исправить%"; 3 SELECT AVG(salary) FROM `salaries` where date>="2020-03-01" and date<"2020-04-01"; 4 SELECT TIME(date) FROM `salaries` where salary=(SELECT MAX(salary) FROM `salaries`); 5 SELECT COUNT(salary) FROM `salaries` where date>="2020-01-01" and date<"2020-03-01"; 6 SELECT SUM(salary) FROM `salaries` where DAY(date)=10; 7 SELECT COUNT(*) FROM `tags_tasks` WHERE task_id in (10,13,22); 8 SELECT COUNT(*) AS total_tasks_started_in_january, SUM(CASE WHEN end_at IS NOT NULL THEN 1 ELSE 0 END) AS completed_tasks_in_january, (SUM(CASE WHEN end_at IS NOT NULL THEN 1 ELSE 0 END) / COUNT(*)) * 100 AS percentage_completed_in_january FROM `tasks` WHERE MONTH(started_at) = 1; 9 SELECT salary, ABS(salary-330) as `diff` FROM `salaries` ORDER BY diff ASC LIMIT 5; 10 SELECT AVG(TIMESTAMPDIFF(MINUTE, started_at, end_at)) FROM `tasks` where started_at is not null and end_at is not null;

    • @Rclass
      @Rclass 3 месяца назад

      Спасибо большое :) В закреп, как обычно)

  • @wsg2843
    @wsg2843 3 месяца назад

    Лучший! Антон, респект! И команде, кто помогал Отличное объяснение, коротко и по теме. Спасибо что заморочились с БД и задачками и выложили все это в открытый доступ. Я уже работал с БД, но решил закрыть все пробелы и порешать задачки. Вот запросы которые получились, может кому полезно будет: SELECT * FROM tasks WHERE (created_at>="2020-02-01" and created_at<"2020-03-01") OR (started_at>="2020-02-01" and started_at<"2020-03-01") OR (end_at>="2020-02-01" and end_at<"2020-03-01"); SELECT * FROM tasks WHERE end_at>="2020-01-01" and end_at<"2020-02-01"; SELECT * FROM tasks WHERE started_at is not null and end_at is null ORDER BY started_at DESC; SELECT * FROM tasks WHERE description like "%бюджет%"; SELECT * FROM tasks ORDER BY created_at DESC LIMIT 3; SELECT * FROM tasks WHERE started_at is null ORDER BY created_at ASC LIMIT 2; SELECT * FROM tasks WHERE worker_id IN (8,9,11); SELECT * FROM tasks WHERE end_at is not null or started_at is null; SELECT * FROM tasks WHERE creator_id=worker_id; SELECT * FROM tasks WHERE description LIKE "%изменить%" or (creator_id=12 and end_at is null);

    • @Rclass
      @Rclass 3 месяца назад

      Спасибо! За ответы особенно! В закреп!

  • @wickedtorpedo75
    @wickedtorpedo75 3 месяца назад

    хочется чтобы учитель был моим тимлидом в проекте

    • @Rclass
      @Rclass 3 месяца назад

      Спасибо, стараемся :)

  • @P_B_N_D
    @P_B_N_D 3 месяца назад

    Мне нужен такой Гена, на моей работе!😅

    • @Rclass
      @Rclass 3 месяца назад

      Нам всем иногда нужен Гена)

  • @exLesnick
    @exLesnick 3 месяца назад

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

    • @Rclass
      @Rclass 3 месяца назад

      Спасибо, мы старались ^_^

  • @user-ok8dp3mt1w
    @user-ok8dp3mt1w 3 месяца назад

    Очень круто розжевал. Иногда автор затачивает видео под какой-то конкретный язык что на мое мнение не является правильным так как язык это просто инструмент. В этом видео все будет понятно в не зависимости от языка программирования. Спасибо)

    • @Rclass
      @Rclass 3 месяца назад

      Именно этого и хотелось добиться, спасибо :)

  • @user-vu9du2ui4m
    @user-vu9du2ui4m 4 месяца назад

    Подскажите, где можно ответы на дз посмотреть? Хочется свериться

    • @Rclass
      @Rclass 3 месяца назад

      Увы, ответов нет(

  • @user-vu9du2ui4m
    @user-vu9du2ui4m 4 месяца назад

    Спасибо большое, классная подача!

    • @Rclass
      @Rclass 3 месяца назад

      Спасибо что смотрите:)

  • @olegkonyushevsky6216
    @olegkonyushevsky6216 4 месяца назад

    Объясните, пожалуйста. Третья нормальная форма предполагает, согласно видео, отсутствие связей между неключевыми атрибутами. Однако в правой таблице появляется связь между именем и телефоном: первичный ключ -> имя -> телефон. Получается транзитивная зависимость, или я неправильно понял? В свою очередь идентификатор шины никак не связан с поставщиком, а мы в примере наоборот их разносим в разные таблицы. Хотя они зависят от первичного ключа и не зависят друг от друга . Согласно тому что говорит "Гена", так и должно быть. Почему мы тогда их разнесли в разные таблицы?

  • @user-ii3ip7ye1z
    @user-ii3ip7ye1z 4 месяца назад

    О боже, пошел в шарагу после 9 на программиста т.к. думал что это халявный диплом IT-шника, а теперь сижу тут и пытаюсь вникнуть. Спасибо за ролик, благодаря вам меня допустят к практике.

  • @user-pi3jy4qz7i
    @user-pi3jy4qz7i 4 месяца назад

    в конце про нормализацию когда рассказывали, там же ошибка больше логическая в примере чем проблема не оптимальности, премия сотруднику начислялась по ОТДЕЛУ а не по тому какой он сотрудник, значит там никак у двух разных разрабов премия быть разной не может, после решили что у разрабов премия 20, так разделение таблиц нужно было что бы избавиться от двух одинаковых записей а не пофиксить, что у одного 10 а у другого 20.

  • @millkiway3682
    @millkiway3682 4 месяца назад

    В первых 10 минутах 10 ошибок и не верных терминов.

  • @muhammadumarsotvoldiev8768
    @muhammadumarsotvoldiev8768 4 месяца назад

    Спасибо огромное

    • @Rclass
      @Rclass 4 месяца назад

      Спасибо за отклик :)

  • @zagar_on1
    @zagar_on1 4 месяца назад

    Очень годно и доступно обьяснил , читал википедию , смотрел видео на ютубе , очень скудная инфа , а тут все просто и по полкам , респект !!!!! А главное хорошие примери

    • @Rclass
      @Rclass 4 месяца назад

      Спасибо, мы старались :)