bem-site / bem-forum-content-ru

Content BEM forum for Russian speak users
MIT License
56 stars 6 forks source link

А вы не могли бы отревьюить проект с bem-именованием? #388

Open SilentImp opened 9 years ago

SilentImp commented 9 years ago

Приятного дня. Решил использовать в проектах bem. Но думаю мне предстоит пройти ещё долгий путь прежде, чем я начну это делать правильно. Я был бы очень благодаре за ревью и комментарии что сделано плохо, почему и как можно улучшить. А что — хорошо и вообще, руки прочь, не трогать.

https://github.com/SilentImp/VacayKit — репозиторий. http://silentimp.github.io/VacayKit/ — проект собран в gh-pages

Интересуют комментарии по поводу всего. И bem. И сборщика. И скриптов. И бананчика.

С уважением. Антон.

iamstarkov commented 9 years ago

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

Кажется. Феликс в этушке говорил, что всё борщик заглох + последний коммит два года назад, очень хорошо дают понять, что проект умер.

Некорректно сравнивать борщик и grep, они из разных экосистем, В юникс мире нормально, когда инструменту много лет, и он особо не меняется, в npm-экосистеме, если инстумент не обновлялся больше года, то скорее всего уже есть более качественные альтернативы.

150 тысяч нпм-пакетов, научиться пользоваться поиском несложно

Спасибо, т.е. альтернативы нет?

я не понял этого. Мне поиск на npm помог найти как минимум вот эти четыре решения (их на самом больше): вебпаковкий лоадер image-webpack-loader, галповский урл-рибейзер cssretarget и его родителя css-rebase-urls и наконец на postcss-плагин postcss-url

tadatuta commented 9 years ago

@iamstarkov

Феликс в этушке говорил, что всё борщик заглох

С тех пор его активно мейнтейнит @doochik ;(

последний коммит два года назад

Commits on Feb 17, 2015

Мне поиск на npm помог найти как минимум вот эти четыре решения

Какой-либо из них умеет фриз и инлайн в разных форматах и для разных технологий?

iamstarkov commented 9 years ago

С тех пор его активно мейнтейнит @doochik ;( Commits on Feb 17, 2015

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

Какой-либо из них умеет фриз и инлайн в разных форматах и для разных технологий?

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

умеет фриз

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

qfox commented 9 years ago

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

Володя!!!!

iamstarkov commented 9 years ago

Володя!!!!

ну что? у меня правда плохая память(

qfox commented 9 years ago

ну что? у меня правда плохая память(

Но про Феликса помнишь ;-) Я бы сказал — мозаичная.

iamstarkov commented 9 years ago

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

qfox commented 9 years ago

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

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

@iamstarkov https://ru.bem.info/tools/optimizers/borschik/freeze/ — если коротко, при сборке считаем md5 ресурсов, складываем в результат и используем исключительно их. Это решает проблему инвалдиации кешей. Или даже обходит её.

qfox commented 9 years ago

@iamstarkov Ну и при новой сборке браузер будет загружать только те ресурсы, которые поменялись, потому что md5 поменяется только там, где поменялся контент. Это если коротко.

tadatuta commented 9 years ago

Я бы предложил вот эту ссылку, там еще разобрана история про фриз динамических путей.

iamstarkov commented 9 years ago

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

voischev commented 9 years ago

и у мануфактуры

У Альфа Банк еще взлетело :)

Вы что тут треп развели)

Сколько люди ждали вебпак? :) А мы в Мануфактуре все все все это уже делали больше 2х лет назад) Ребята в Яндексе еще раньше... Неужели они на этом остановились? И по какой то причине опережая весь мир они не углядели и упустили момент когда другие инструменты стали луше? ) Такое может и случается часто, но кажется по моим ощущениям — это не тот случай :)

qfox commented 9 years ago

@voischev Почему ты пользуешься borschik, а не вебпак? Сейчас то мы дождались его и можно не пользоваться отечественными разработками ;-)

qfox commented 9 years ago

@iamstarkov Кстати, я до сих пор не понимаю, какие конкретно NPM-модули и каким образом могут заменить borschik. ;-( Все, что я вижу, нужно еще руками допинывать. «Обычная связка» там реализована на примитивном уровне и не учитывает динамики, либо не умеет в html. Не туда смотрю?

voischev commented 9 years ago

@zxqfox да да +1. Мне часто говорят что мы не в том мире живем)) Но когда слушаю про "их другой мир" почему что слышу про одну боль) лично я не хочу жить в мире где одна боль :)

iamstarkov commented 9 years ago

реализована на примитивном уровне и не учитывает динамики, либо не умеет в html. Не туда смотрю?

простите, но проблема динамических путей, это проблема bemjson’а; по другую сторону этой проблемы нет. Про html я не понял. что нужно?

@zxqfox да да +1. Мне часто говорят что мы не в том мире живем)) Но когда слушаю про "их другой мир" почему что слышу про одну боль) лично я не хочу жить в мире где одна боль :)

лично у меня болело расширять сборку под бэм-стек, это дико неудобно

tadatuta commented 9 years ago

@iamstarkov

проблема динамических путей, это проблема bemjson’а; по другую сторону этой проблемы нет

var html = [];
for (var i = 0; i < 10; i++) {
    html.push('<img src="' + i + '.svg">'); // как принято фризить такие пути по другую сторону?
}
<img src="my-image.svg"> <!-- а в HTML как? -->
tadatuta commented 9 years ago

у меня болело расширять сборку под бэм-стек, это дико неудобно

можешь рассказать про конкретные задачи, которые вызвали сложности?

qfox commented 9 years ago

лично у меня болело расширять сборку под бэм-стек, это дико неудобно

+1 про задачи. И давайте не путать тулзы с форматом bemjson и остальным.

iamstarkov commented 9 years ago

html.push(''); // как принято фризить такие пути по другую сторону?

не знаю, я ещё не встречал кого-то с похожей болью вне яндекса.

можешь рассказать про конкретные задачи, которые вызвали сложности?

не могу, так как дело в другом: сколько яндексоидов написали какие-нибудь галп- и грант-плагины и сколько яндексоидов написали что-угодно под енб?

+1 про задачи. И давайте не путать тулзы с форматом bemjson и остальным.

я не путаю, но кто-то использует одно без другого?

tadatuta commented 9 years ago

не могу, так как дело в другом: сколько яндексоидов написали какие-нибудь галп- и грант-плагины и сколько яндексоидов написали что-угодно под енб?

Я так и не понял в чем дело. есть ENB — тул про сборку блоков по депсам, есть универсальный gulp, который может позвать ENB, а после (или до) сделать что-то еще полезное. В чем здесь принципиальное отличие ENB от babel, browserify, clean-css, svgo и прочих тулов, каждый из которых решает свою задачу и объединяется в цепочку с помощью gulp (или любых других таск-раннеров, хоть GNU Make)?