background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "Why do I need BEM — HTML Shorts"

input logo icon
Теги видео
|

Теги видео

htmlacademy
бэм
bem
css
html
loftschool
вёрстка
frontend
фронтенд
html5
css3
программирование
веб-разработка
обучение
технологии
google
apple
видеоуроки
мобильные
браузер
курсы
яндекс
loftblog
geekbrains
epic skills
нетология
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:00:06
Привет, это HTML Шорты и Вадим Макеев. В этом шоу мы отвечаем на ваши вопросы про вёрстку.
00:00:15
Следуете ли вы БЭМу, и насколько он востребован вне Яндекса? — спрашивает наша ученица Евгения.
00:00:20
Следуем, Евгения, и БЭМ вполне применим не только в Яндексе. Давайте разберёмся.
00:00:24
БЭМ расшифровывается как: блок, элемент, модификатор. Это такой набор абстракций,
00:00:29
на который можно разбить интерфейс и разрабатывать всё в одних и тех же терминах.
00:00:33
Как говорит сайт bem.info, БЭМ предлагает единые правила написания кода, помогает его масштабировать
00:00:40
и повторно использовать, а также увеличивает производительность и упрощает командную работу.
00:00:44
Круто, да? Но зачем вам масштабируемость и командная работа, если вы один верстальщик на проекте?
00:00:51
Который не претендует на популярность Яндекса.
00:00:54
Чтобы ответить на этот вопрос, нужно отмотать историю лет на 10 назад, когда это подход только начали формулировать.
00:01:00
В основу того, что мы сейчас называем БЭМом, легла идея независимых блоков, которую Виталий Харисов
00:01:06
сформулировал и презентовал в 2007 году на первой российской конференции по фронтенду.
00:01:11
Это было настолько давно, что тогда даже слова «фронтенд» ещё не было, тогда это называлось клиент-сайд.
00:01:16
Идея была в том, чтобы ограничить возможности CSS для более предсказуемых результатов.
00:01:21
Использовать минимум глобальных стилей и каждый отдельный элемент страницы делать блоком со своим уникальным классом
00:01:28
и стилями, которые полностью его описывают.
00:01:31
Селекторы по элементам и ID, хрупкая вложенность — всё это заменялось на простые селекторы по классам.
00:01:37
Каждый класс в стилях — это блок.
00:01:39
Благодаря этому блоки можно легко менять местами, вкладывать друг в друга и не бояться конфликтов или влияния.
00:01:45
Потом появились абсолютно независимые блоки (АНБ), где у элементов внутри есть свой префикс с именем родителя,
00:01:52
а состояния блоков снова дублируют класс, но уже с постфиксом.
00:01:55
Подход обрёл черты современного БЭМа, одна из которых — многословность классов.
00:02:00
Эта многословность гарантирует уникальность элементов и модификаторов в рамках одного проекта.
00:02:05
За уникальностью имён блоков вы следите сами, но это довольно просто, если каждый блок описан в отдельном файле.
00:02:12
Глядя на такой класс в HTML или CSS, можно легко сказать, что это, и к чему оно относится.
00:02:18
Изначально АНБ, а потом и БЭМ, решали задачу, важную для вёрстки любых масштабов:
00:02:23
предсказуемое поведение и создание надёжного конструктора.
00:02:26
Вы же хотите, чтобы ваша вёрстка была предсказуемой? Вот и Яндекс тоже.
00:02:30
Ещё это называется «модульность» — о ней хорошо написал Филип Уолтон в «Архитектуре CSS», ссылка на перевод в описании.
00:02:37
Через пару лет в Яндексе окончательно сформулировали нотацию БЭМ. Любой интерфейс предлагалось разделять на блоки.
00:02:44
Неотделимые части блоков — элементы. У тех и других есть модификаторы.
00:02:47
Например, блок поиска по сайту. Он может быть в шапке и в подвале — значит, это блок.
00:02:52
В нём есть обязательные части: поле поиска и кнопка «найти» — это его элементы.
00:02:56
Если поле нужно растянуть на всю ширину, но только в шапке, то блоку или элементу,
00:03:01
который отвечает за это растягивание, даётся модификатор.
00:03:03
Для полной независимости блоков мало назвать классы правильно или изолировать стили, нужно собрать всё, что к нему относится.
00:03:10
В проекте по БЭМу нет общего script.js или папки images со всеми картинками сайта.
00:03:14
В одной папке с каждым блоком лежит всё, что нужно для его работы.
00:03:18
Это позволяет удобно добавлять, удалять и переносить блоки между проектами.
00:03:22
Потом, конечно, все ресурсы блоков при сборке объединяются в зависимости от задач проекта.
00:03:27
Когда БЭМ вышел за пределы Яндекса, сначала его воспринимали как магию и старались воспроизводить дословно,
00:03:33
вплоть до префиксов b- у каждого блока. Такой смешной карго-культ.
00:03:37
Некоторые неверно понимали идею и появлялись даже элементы элементов.
00:03:41
Потом за нотацию взялись энтузиасты и появилась одна из самых популярных:
00:03:45
блок отделяется двумя подчёркиваниями, а модификатор — двумя дефисами. Наглядно и просто — сам так пишу.
00:03:51
А зачем вообще все эти нотации — я ведь один верстальщик на проекте, помните? Помню. А ещё помню, как сам верстал до БЭМа:
00:03:58
в каждом проекте придумывал что-нибудь такое новенькое.
00:04:01
А потом открывал код годичной давности и удивлялся — какой идиот это написал?
00:04:04
Возьмём, к примеру, русский язык. Мы же пишем с прописной имена людей, названия и прочее такое? Пишем.
00:04:10
Чтобы легко потом считывалось: это Надя или надежда на лучшее?
00:04:14
Уж не говоря про знаки препинания и другие полезные договорённости. Вот буква ё, например, смягчает…
00:04:19
Так, о чём мы? Да, БЭМ.
00:04:21
До БЭМа были проекты с портянками стилей, которые нельзя трогать.
00:04:25
Они копились годами, слой за слоем, как обои в древней коммуналке.
00:04:29
Их просто подключали первыми, а потом перезаписывали что мешало.
00:04:33
Когда у вас есть div — это даже уже не смешно.
00:04:37
БЭМ продолжил развиваться в Яндексе и вырос за пределы вёрстки:
00:04:40
появились уровни переопределения, богатый инструментарий, JS-библиотека для работы с БЭМ-классами,
00:04:46
шаблонизаторы и целый БЭМ-стэк. БЭМу даже жест придумали, но это совсем другая история, специфичная для Яндекса.
00:04:53
Были и другие методологии: OOCSS Николь Салливан, SMACSS Джонатана Снука, вариации БЭМа и целые фреймворки.
00:05:01
Даже у нас на продвинутом интенсиве HTML Академии можно было выбрать любую методологию для вёрстки учебного проекта.
00:05:06
Но выжил только БЭМ и его вполне можно назвать стандартом де-факто современной разработки интерефейсов.
00:05:12
И что — это финальная ступень эволюции? Нет конечно.
00:05:16
Как ни автоматизируй, многое в БЭМе приходится делать руками, и возможны конфликты.
00:05:20
Модульность и изоляцию стилей блока можно решить ещё лучше.
00:05:24
Есть веб-компоненты, CSS-модули, куча решений CSS-в-JS и даже, прости господи, атомарный CSS.
00:05:30
Но нет единого решения накопившихся проблем на следующие 10 лет, каким когда-то стал БЭМ.
00:05:35
Что это будет? Посмотрим. Я ставлю на веб-компоненты.
00:05:38
А пока, если вы опишете интерфейс по БЭМу — код будет организован, предсказуем, расширяем
00:05:44
и готов для повторного использования. Не только для вас, но и для других.
00:05:47
Это были HTML Шорты и Вадим Макеев. Присылайте ваши вопросы на наш адрес или задавайте в комментариях к видео.
00:05:54
На самые интересные мы ответим в следующих выпусках. Пока!

Описание:

— Methodology BEM — https://ru.bem.info/methodology/ — Architecture CSS — https://web-standards.ru/articles/css-architecture/ — CSS Modules — https://glenmaddern.com/articles/css-modules Ask your question — https://htmlacademy.ru/blog/video/shorts

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "Why do I need BEM — HTML Shorts"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "Why do I need BEM — HTML Shorts" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "Why do I need BEM — HTML Shorts"?mobile menu icon

  • Полностью зависать браузер/компьютер не должен! Если это произошло, просьба сообщить об этом, указав ссылку на видео. Иногда видео нельзя скачать напрямую в подходящем формате, поэтому мы добавили возможность конвертации файла в нужный формат. В отдельных случаях этот процесс может активно использовать ресурсы компьютера.

mobile menu iconКак скачать видео "Why do I need BEM — HTML Shorts" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "Why do I need BEM — HTML Shorts"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "Why do I need BEM — HTML Shorts"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.