@ivodopyanov
NLP, python, numpy, tensorflow

В чем разница в подходах к проектированию страниц между БЭМ и GWT?

Я плохо знаком с БЭМ и хорошо - с GWT, поэтому каждый раз, когда я встречаю первый набор букв, у меня возникает вопрос:

А в чем же разница?

В GWT страницы составляются из наборов независимых друг от друга виджетов, каждый из которых инкапсулирует в себе свой собственный небольшой html + небольшой каскад css, который накладывается на html и не зависит от css других виджетов + свой js. Этим достигается повторное использование кода, возможность быстро изменять страницу и т.д. Есть возможность декларативного описания структуры страницы с помощью XML в терминах виджетов. В CSS под GWT есть всякие плюшки типа условных операторов и возможности вызова статических методов классов.
GWT 1.0 вышел в 2006 году.
  • Вопрос задан
  • 3507 просмотров
Пригласить эксперта
Ответы на вопрос 4
qfox
@qfox
Ответы есть у меня
Наверное тем, что в 2006 году никто не думал, как далеко зайдет веб.
html vs bemhtml+bemjson, т.е. декларативная шаблонизация. Если чтото похожее есть в GWT (типа не html, а xslt, и на входе xml с данными), то в этом плане практически тоже не отличаются, просто осевременно и работает быстрее (xjst+json).
В БЭМ-блоке вы можете складывать какой-то серверный функционал, документацию, и много чего еще — как с этим у GWT?
Примешивания блоков — как с этим?
Нативная поддержка js (как серверного так и браузерного) ?
i-bem.js ?

Думаю, половины из этого точно нет в GWT, но корни явно схожие, спасибо за освежение в памяти этого троебучия.

Ну и самое главное, что это обсуждение разницы в инструментах, где у GWT застолблена поляна очень давно. А BEM себя позиционирует в первую очередь как методология, а не фреймворк.
Ответ написан
Комментировать
Quber
@Quber
PHP Team lead
Знаю только БЭМ. Но имхо не то не другое не стал бы использовать. Сегодня, кстати была статья на хабре, почитайте: Хорошие верстальщики отправляются на небеса, а плохие — куда захотят, или «Почему БЭМ не приносит счастья?»
Ответ написан
KEKSOV
@KEKSOV
В понимании БЭМ мне помогла вот эта страница http://ru.bem.info/method/history/, читая её, хорошо становится понятен круг задач, для которых внедрение БЭМ может иметь смысл.
Ответ написан
@ivodopyanov Автор вопроса
NLP, python, numpy, tensorflow
Что значит "складывать серверный функционал и документацию в БЭМ-блок"?

GWT - это client-side. На сервере может быть Java, может быть PHP. Поэтому есть поддержка клиентского нативного js, но нет привязки к серверному.

Также GWT - это Java, в которой примеси появились только в последней, 8-й версии. Так что тут их пока нет.

i-bem.js - это для реализации классического ООП в js (судя по презентации tech.yandex.ru/events/yasubbotnik/kiev-may-2012/ta... )? Тогда в GWT это есть по умолчанию.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы