Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ make

 

###Весёлые учебники
### Весёлые учебники

> #####«Про сложные темы невозможно говорить серьёзно.»
_Андрей Кармацкий_
Expand Down
6 changes: 3 additions & 3 deletions faq/bem-vs-bevis.md
Original file line number Diff line number Diff line change
Expand Up @@ -754,7 +754,7 @@ header.styl

Что мы предлагаем делать в каждой из ситуаций?

####1. Дизайнер нарисовал кнопку, похожую на библиотечную, но "чуть-чуть другую"
#### 1. Дизайнер нарисовал кнопку, похожую на библиотечную, но "чуть-чуть другую"

_Что значит "библиотечную"? Мы говорим о ситуации, когда есть
стандартная для проекта кнопка (например, серая и выпуклая), она используется на всех страницах сервиса и сверстана она в базовом
Expand All @@ -777,7 +777,7 @@ _Что значит "библиотечную"? Мы говорим о ситу

Этот случай — не причина что-то делать в проектных блоках. Посмотрим на другую ситуацию.

####2. Дизайнер нарисовал кнопку, вообще не похожую на библиотечную
#### 2. Дизайнер нарисовал кнопку, вообще не похожую на библиотечную

Наверное, в твоём проекте должна появиться очень специальная кнопка, например, гигантская зеленая с текстом "Купи рекламное место!".

Expand Down Expand Up @@ -869,7 +869,7 @@ _Что значит "библиотечную"? Мы говорим о ситу
происходит по воле разработчика проекта, а не по прихоти разработчика "библиотеки общих блоков". Никаких червей.


####3. Менеджер проекта решил, что кнопка, которая выглядит, как библиотечная, должна себя вести не так, как библиотечная
#### 3. Менеджер проекта решил, что кнопка, которая выглядит, как библиотечная, должна себя вести не так, как библиотечная

Ох, уж эти менеджеры. Вот, зачем он так решил? У него точно есть веская причина?

Expand Down
20 changes: 10 additions & 10 deletions manual-for-beginner.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
####Предисловие
#### Предисловие

Если вы хотя бы немного в курсе, что такое `HTML`, `CSS`, `Javascript`, суть нашей придумки вы ухватите
так же легко, как ребёнок запоминает лицо матери, то есть без каких бы то ни было особенных умственных усилий.
Потому что `BEViS` - это очень просто.

В добрый путь?

##Блок
## Блок
Начнём со странного :)

Представьте себе взвод солдат. Взвод - это сила, особенно, если это взвод специально обученных солдат:). Точно так
Expand Down Expand Up @@ -95,7 +95,7 @@ btjson = [B]EViS [T]emplater [JSON]

Нет же, не чушь. Вам всё это знакомо. Смотрите.

###Какие мы знаем способы верстать сайты?
### Какие мы знаем способы верстать сайты?

1. Можно сверстать статическую страницу, например `page.html` и положить её на сервер. Когда пользователь вашего сайта запросит её в браузере, сервер отдаст её такой, какой вы её сверстали — статическую страницу из сплошных `HTML`-тегов. Это может быть страница с контактными телефонами. Или с адресом.

Expand Down Expand Up @@ -306,7 +306,7 @@ _внешнего вида_ блока. У блока есть ещё и "фам

Теперь об именах блока подробнее.

###Имя блока
### Имя блока
Итак, у нас есть блок. Пусть это будет форма авторизации. Или нет, лучше пусть это будет шапка. А вообще-то, не важно. Какой блок ни возьми,
сколько у него может быть имён? Странный вопрос мы задали, правда? Одно, конечно. Несколько имён у блока - это
абсурд. Что это за супер-блок, который словно из той глупой присказки про "я и лошадь, я и бык,
Expand Down Expand Up @@ -346,7 +346,7 @@ _В других мирах это пытаются решать зависим
Итого, в `BEViS` всё однозначно. Блок может иметь только одно имя. Внешний вид блока определяется представлением блока,
которое тоже является частью имени блока. Что-то ещё нужно добавлять? Кажется, нет.

###Файловое устройство блока
### Файловое устройство блока
Каждый блок хранится в своей директории. Это мы уже знаем.
Так как блок состоит из трёх сущностей (напомню - структура, представление и поведение), то и на файловой системе мы эти
сущности выделяем в отдельные файлы.
Expand Down Expand Up @@ -378,7 +378,7 @@ js-функции, "оживляющие" блок в браузере поль
"Хорошо", — скажете вы.— "Теперь я знаю, как устроены блоки на файловой системе, как они декларируются на странице и примерно представляю, что существуют
некие шаблоны, которые из btjson-декларации блока создают `HTML`-теги. Как это помогает мне создавать `HTML`-страницы?"

###Как это всё работает?
### Как это всё работает?
Давайте на примере. Пусть наша страница `main.btjson.js` состоит из двух btjson-блоков:
```
[
Expand Down Expand Up @@ -451,7 +451,7 @@ js-функции, "оживляющие" блок в браузере поль

Теперь вы представляете, как работает Бивис-приложение. Поэтому можно углубляться.

##Элемент
## Элемент
Элемент - это приватная часть блока. Под приватной мы понимаем ровно то, что никто, кроме блока-родителя, не должен знать,
как именно устроен и как работает элемент.

Expand Down Expand Up @@ -740,7 +740,7 @@ bt.match('header__image', function (ctx) {
ли, в первом классе тоже никому всей правды не говорили, а оказалось, числа бывают отрицательными, дробными и вообще...


###Использование имени блока в служебных целях
### Использование имени блока в служебных целях
Отделить внешность от внутреннего строения невозможно. Это неприродно. Внешность человека
зачастую зависит от анатомического строения. К примеру, человек высокого роста такой высокий не от того что носит длинные брюки,
а потому что в его организме больше гормона роста, чем у других людей. Природа щедро наделила его этим прекрасным гормоном.
Expand Down Expand Up @@ -783,7 +783,7 @@ JS-компонент блока

А сейчас нам нужно вернуться к стилевому оформлению блока.

##Состояния блока
## Состояния блока
У любого вещества (и существа) на планете бывают состояния. Или правильнее сказать иначе — вещество (или существо)
может находиться в разных состояниях. Вода бывает твёрдая, жидкая и газообразная, а человек трезвый и красивый, или
пьяный и безобразный. Человек остаётся человеком, а вещество остаётся веществом, но выглядят они в разных состояниях
Expand Down Expand Up @@ -865,7 +865,7 @@ Block disabled
Больше тут добавить нечего. Да и вообще, пора заканчивать с общую часть и переходить к практической.
Давайте уже сделаем что-нибудь стоящее, что-нибудь ценное. Сверстаем сайт?

##Заключение
## Заключение

* Мы осознали, что разработка страницы неудобна, если мыслить тегами и классами.

Expand Down
6 changes: 3 additions & 3 deletions manual-for-master.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
####Предисловие
#### Предисловие

Методология ли это? Я имею в виду `BEViS`. Методология? Ну, можно и так, если очень хочется. Но мы так не считаем.
«Методология» — затёртое до дыр понятие с десятком различных определений. Попробуй пойми, что имеет в виду автор WEB-фреймворка,
Expand Down Expand Up @@ -170,7 +170,7 @@ module.exports = function (pages) {

Как мы этого добиваемся? Главное, что мы сделали — приняли закон, главенствующий приницип Бивиса.

####Чтобы пользоваться блоком, достаточно одного имени
#### Чтобы пользоваться блоком, достаточно одного имени

Чтобы на странице оказался блок, о нём нужно знать только его имя и больше ничего. Вот… вообще ничего.

Expand Down Expand Up @@ -229,7 +229,7 @@ module.exports = function (pages) {

И за это я люблю Бивис. Создавать страницы из готовых блоков никогда ещё не было так просто.

####Блок — структура-представление-поведение
#### Блок — структура-представление-поведение

Да и сами блоки создавать тоже просто, потому что это очень жизненная абстракция.

Expand Down
2 changes: 1 addition & 1 deletion practice/mvc-app.md
Original file line number Diff line number Diff line change
Expand Up @@ -2297,7 +2297,7 @@ auth-model form
лежит в основе нескольких продакшн-продуктов, созданных в отделе Яндекс.Карт. То есть, её можно безбоязненно
клонировать и создавать свои собственные шедевры.

##Что дальше, друзья?
## Что дальше, друзья?

Дальше нам предстоит самое интересное и, пожалуй, самое трудное, насыщенное, почти гиковское, практическое занятие.
Мы будем говорить о том, как _по-настоящему_ общаться с бекендом. В роли бекенда выступит база данных
Expand Down