28
МЕТОДОЛОГІЇ front-end BEM, SMACSS, OOCSS, MCSS, ATOMIC CSS websystems 21.01.2016 - Віталька

Методології Front end

Embed Size (px)

Citation preview

Page 1: Методології Front end

МЕТОДОЛОГІЇfront-end

BEM, SMACSS, OOCSS, MCSS, ATOMIC CSS

websystems

21.01.2016 - Віталька

Page 2: Методології Front end

ПЕРЕДІСТОРІЯ

Коли ще світ тримався на трох слонах,які стояли на велекій черепасі...

Page 3: Методології Front end

І навіть коли Віталька був ще маленьким

І плакав не від агропошуку і гульпу, а від того що пропустив мультики=(

Page 4: Методології Front end

fron-end розробники мирно собі верстали кожен як міг і навіть не підозрювали що колись їм доведеться думати про якусь там “МЕТОДОЛОГІЮ” і “АРХІТЕКТУРУ CSS”

Page 5: Методології Front end

Методологія

- це підхід у розробці, що дозволяє швидко створювати сайти з гнучкою та маштабованою архітектурою.

Page 6: Методології Front end

Навіщо?

“Писати css код легко. Маштабувати та підтримувати його- ні!”

Бен Фрейн

Page 7: Методології Front end

● Розробляти типові сайти швидко;

● Проект повинен жити довго та легко маштабуватись;

● Потрібно вміти легко маштабувати команду(на проекті може

працювати як 1 людина так і 10);

● Всередині команди повинні бути чіткі зони відповідальності;

● Код повинен використовуватись повторно.

Page 8: Методології Front end

Методології

● BEM● MCSS● SMACSS● Atomic CSS● AMCSS● ...● ...●

Page 9: Методології Front end

BEM

БЛОК МОДИФІКАТОРЕЛЕМЕНТ

може використовуватись у декількох місцях на сторінці

є частиною блоку і не може існувати, поза контекстом блоку

являє собою властивість блоку або елементу, що змінює його поведінку

Page 10: Методології Front end

Основні поняття

● БЕМ сутність● Мікс● БЕМ дерево● Реалізація блоку● Технологія реалізації блоку● Перевизначення блоку● Рівень перевизначення блоку

Page 11: Методології Front end

Угода по іменуванню CSS селекторів

Page 12: Методології Front end

Блок

назва блока задається по схемі block-name і створює простір імен для створення елментів

{блок}

елемент

елемент

елемент елемент

елемент

Page 13: Методології Front end

Елемент

- це частина блоку яка самостійно існувати не може, проте може вміщати в собі інші блоки

- задається по схемі block-name__element-name

Page 14: Методології Front end

Модифікатор

- простір імен заданий блоком визначає відповідність модифікатора до певного блоку, або елементу

- модифікатор не може існувати самостійно- задається по схемі

block-name_modific-nameblock-name_modific-key_modific-valueblock-name__elem-name_modific-nameblock-name__elem-name_modific-key_modific-value

Page 15: Методології Front end

Приклад

Page 16: Методології Front end

SMACSS

Page 17: Методології Front end

Base- базові стилі що застосовуються на сторінці, переважно стосується HTML

тегів, базовими стилями являються стилі які не змінюються в залежності від розташування елемента на сторінці на від їхнього стану, до базових стилів можна віднести вендорні стилі.

Page 18: Методології Front end

Layout

- стилі які описують структуру HTML сторінки та розміщення блоків на сторінці, автор рекомендує для Layout стилів використовувати префікс l-, layout- для кращого орієнтування в коді

Page 19: Методології Front end

Module

- блоки що можуть багаторазово використовуватись на сторінці, можуть містити елементи та підкласи(модифікатори) для задання особливих стилів в залежності від розташування модуля.

- для назви підкласу та елементу модуля прийнято використовувати в якості префікса клас модуля.

Page 20: Методології Front end

State

- стилі стану, в цьому розділі описуються стилі стану окремих модулів та скилету сайту(layout)

- для створення класу стану прийнято використовувати префікс is- для виділення його серед інших стилів

- для стану який може бути задіяний лише до окремого модуля клас із цим станом прийнято починати з префіксом moduleName-, та поміщати його у файл модуля а не файл із загальними станами.

Page 21: Методології Front end

Приклад

Page 22: Методології Front end

OOCSS

методологія для простого написання швидкого, маштабованого та структурованого коду по стандартам ООП

Page 23: Методології Front end

Ідея

розподіл структури та оформлення

Page 24: Методології Front end

ОбєктОбєкт - повторюваний візуальний паттерн, який абстрагується у якості незалажнего HTML, CSS і по можливості JS коду .

Page 25: Методології Front end

OOCSS обєкти

Page 27: Методології Front end

“Не важливо яку методологію Ви використовуєте, головне щоб вона у вас була”

Юрій Артюх

Page 28: Методології Front end

Дякую за увагу

skype: vitalka181094email: [email protected]