-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Комментарии #1
Comments
Не заметил особенной зависимости от каскада в Bootstrap. Вообще, можно сказать что Bootstrap в какой-то степени использует БЭМ, вернее только Б - "блок". Каждый компонент бутстрапа, по-сути, является блоком из БЭМ. |
sherkhan, хороший пример, спасибо. Будем надеятся, что в версии 4 от этого избавятся |
Характерно неверное суждение, будто новички должны использовать ванильный JS. Новички используют и будут использовать наиболее простые инструменты для решения своих задач. И таковые есть JQuery и Bootstrap. Другое дело, что каждому инструменту своё место. Далеко не всегда нужно подключать даже LESS/SASS. |
Tertiumnon, согласен. Более того, замечу, что, в моей практике, западные заказчики с Upwork, на простых проектах (например лендингах) очень часто просят НЕ использовать LESS/SASS и Browserify/RequireJS, стремясь к простоте кодобазы. |
Обращаюсь к автору, а что мешает вам даже в Enterprise проекте переконфигурировать Bootstrap, ведь вы выше говорили что мы работем с предпроцессорами. Bootstrap можно сконфигурировать под свои нужды и цели. Хотите только сетку и только инпут группы, пожалуйста, достаточно лишь закоментировать пару строк в _bootstrap.sass конфиге. И модуль не будет компилироватся в ваш .css. Далее лишние килобайты .gzip x20, CDN ? |
И это не полный список того какие чудеса можно сделать, к примеру можно сделать Dynamic CSS и динамический подгружать CSS в каждый компонент и дело не в Bootstrap (Ярким примером тому есть @angular(Angular2)). |
@stas-webdev не использовать препроцессоры сродни не использовать бензопилы при валке леса |
@sherkhan, используя вашу аналогию - не обязательно заводить бензопилу если тебе нужны только жерди для забора, а не бревна на сруб. Можно и ручной обойтись :) |
@Tertiumnon пишет: Ложь. Я как новичок пользуюсь чистым яваскриптом, каскадными стилями и хтмл. |
Что-то вы не смахиваете на новичка... Или у нас разные представления о новичках. Для меня новичок - тот, кто только что пришёл в веб и видит, что jquery выглядит зачастую лаконичнее и понятнее, чем тот же код в чистом js. К тому же, готовых, работающих плагинов к jquery не сосчитать. Согласитесь, проще подключить плагин, чем писать что-то самому - по тому же принципу работают коробочные CMS. Новичок не будет заботиться об оптимизации и считать милисекунды загрузки страницы, потому что это не его уровень. Его уровень - это скачать и прикрутить. В защиту препроцессоров скажу следующее, что нужно уметь их готовить. Уже давно выдумали nodejs-минификаторы, которые превратят less/sass в минифицированный и правильный css. В большинстве случаев, этого хватает для комфортной и быстрой работы. |
Стоит заметить, что если проект заканчивается на стадии сдал - получил лаве и ушел - тогда да, возможно Вам никогда не понадобится jQuery, Bootstrap компоненты. Ведь тогда Вы можете просто написать необходимое на стадии разработке сами, получить готовый функционал ванильным средствами и больше не заморачиваться. Но если проект живой, меняющийся и преображающийся день ото дня, задавать клиенту сроки от недели на написание того или иного - ну просто нельзя. Тогда на стадии еще разработки - лучше перестраховаться и подключить две этих библиотеки и в случае необходимости, быстро делать то - что нужно. Меня самого коребит тот факт, что они отжирают скорость загрузки сайта, но решений лучше пока не найти. |
В сем вся и суть, что ради скорости разработки и комфорта весь этот фреймворк. Ну, ладно, что уж теперь. Еще одна практика в веб-разработке это стили в один файл пихать. Нужно отказываться от такой практики. Стили попроще и к месту нужно применять. А не так, что один стиль на все уголки сайта. Одним файлом. |
т.е. если использовать только сетку Bootstrap, то БЭМ нормально вписывается в это? |
Мне ничего не мешает переконфигурировать его. Просто у меня нет в этом нужды :) Есть много способов избавиться от неиспользуемого в проекте кода, но новички обычно о них не знают (или препочитают не заморачиваться). |
Всё зависит от проекта и заказчика. На моей практике как раз всё было наоборот. Вообще, если проект не требует поддержки — то использовать можно что угодно, и чаще всего люди как раз предпочитают обойтись готовыми решениями. Если же проект долгосрочный и сложный, использовать какие-то готовые решения зачастую просто нельзя из-за их ограничений или из-за специфических требований к функционалу. К тому же готовые сторонние решения — это всегда чужой код, в котором будет сложнее разбираться, если что-то сломается. Если говорить о джейквери-плагинах, то там не то что о тестах речи не идёт, там вообще лапшекод сплошь и рядом. В общем, прежде чем тащить в проект стороннее решение, нужно как минимум проанализировать его возможности, качество и аналоги. |
Не согласен. Такая практика имеет смысл лишь в том случае, когда у вас сайт разбит на большие разделы с разным дизайном. Тогда, возможно, лучше для каждого раздела подключать отдельный файл стилей. Если вы разрабатываете что-то поменьше Фейсбука, вполне нормально класть все стили в один файл и подключать только его. |
Сам Бутстрап не следует соглашению по именованию классов из БЭМа, но ничего не мешает использовать его сетку. Проблема лишь в том, что тогда разметка будет несколько неконсистентно выглядеть — классы бутстрапа вперемешку с БЭМ-классами могут ввести в заблуждение. |
Автор статьи объективно прав, это так и никак иначе. Если кто-то не согласен с этой статьей, то он не прав. Про жиКвери не буду писать, уже несколько лет не использую за ненадобностью. А вот с Бутстрапом столкнулся на текущем проекте и вижу, какой это вселенский ужас. Понимаете, Бутстрап это удел быдло-программистов — обычно это пехапешники, которые начали заниматься фронтендом. Вот смотрите, какой менталитет у пехапешников, которые пишут бэкенд-код — «так, есть задача → надо её решить → а есть ли уже готовый модульчик или плагинчик или компонентик? → опа! есть! → композер инсталл → нормально, работает!». И вот с таким менталитетом и логикой они приходят во фронтенд-мир и тоже начинают искать что-то готовое, готовые плагинчики и модульчики, на любой пук они ищут готовые плагинчики, плагинчики, плагинчики. «Посмотри, есть ли уже готовый плагинчик для этого», «Заюзай плагинчик, вот ссылка» — вот типичный ход мыслей пехапешника-фронтендера. Они совершенно не соображают, что нельзя во фронтенде подключать кучу килобайтов плагинчиков на каждый пук. Они не соображают, что любые плагинчики не дают тебе свободы сделать шаг влево шаг вправо. Главное, что работает же! Вот так же и с Бутстрапом — он для быдлокодеров как святой грааль, в котором уже всё готово и всёжиработает!!1 Они не понимают, что эта махина была создана для прототипирования страничек, а не для реальной верстки рабочих проектов. Они не понимают, что верстка флоатами left это плохо. Они вообще не понимают вёрстку, стили, CSS-методологии, каскад и прочее. Для них просто есть плагинчик, который сделает их сайт :) В общем, из-за дилетантства горе-фуллстекеров мы имеем кучу говносайтов — смотришь в код... тадааам, всё ясно, написано на Бутстрапе. Бутстрап это индикатор быдлокодного сайта. |
Согласен с @artuska |
А теперь давайте подумаем, на основании вашего коментария про Front-End разработчик... Вы что то сказали про композер? Ну окей, если Вы уважающий себя разработчик то как же npm. Допустим ваш Enterprise-Галера проект юзает Gulp/Grunt. Окей давайте по минимуму его сконфигурируем npm i gulp gulp-sass(gulp-less) gulp-jade(может вы пользуетесь) и многие другие нужные модули для вашего проекта ( не в этом суть) --save-dev ( конечно мы крутые перцы npm init все дела что бы засейвить дев депенденси :) ) , а теперь к чему я это все веду. Вы взяли качнули модуля которые сделали какие то разработчик, более того я даже процентов на 75+ уверен что вы даже не смотрели а что они делают, а билдят ли бинарники и делают ли какие то shell операции, Вы просто запускаете все это чудо и будь что будет. Соответственно мой конклюжен ведется к тому что это не корректно по отношению к другим разработчикам, которих Вы так ярко описали в вашем комментарии..
Тут я с вами не согласен, есть множество примеров в которых правильное использование бустрапа показывает ошеломительные результаты для быстрой верстки интересных Web App's. По поводу CSS методологии, Вы о чем говорите? Методологию можно посмотреть лишь в исходниках .less/.sass кому что по душе. И там исользуется методология "Коктейль Хьюго", более того посмотрите на исходники к примеру font-awesome ( любителям тролить это пример, не надо рассуждать что пример настолько плох ) он использует ту же методологи. Приведите Ваши аргументы подкрепленный фактами почему эта методология плоха или может у вас есть резуьтаты "Квадранта Гартнера" по этой методологии что бы все посмотрели.
Это лишь ваше личное мнение и не более... В котором нету ниодного аргумента и факта. |
Ну а как же. Часто приходится иной раз под капот какого-нибудь npm модуля лезть. Благо новичок в этом деле - временем располагаю. Посмотреть, а че это под виндоуз аддон никак не собирается? Аааа, так и есть. Линукс прежде всего. Ищешь другой модуль. Не находишь, кодишь сам, глядя на образец и допиливая под свои нужды. |
@vyakymenko, вы абсолютно всеобъемлюще путаете composer-плагинчики и Grunt/Gulp-таск раннеры с npm-пакетами для этих тасков — это две разные вещи. Я же говорил про плагинчики а-ля «джиквери-виджет-а-ля-кнопка-отправить-с-css-эффектом-бабочки.js», как уже красноречиво выразился юзернейм выше. Вы путаете мегабайты плагинчиков для бэкенда и мегабайты скриптов для фронтенда — в первом случае это не плохо, ибо на бэкенде пофигу на вес библиотек, во втором же случае вес критичен, но это не понятно менталитету пехапешника. «использование бустрапа показывает ошеломительные результаты для быстрой верстки интересных Web App's» — серьезно? Использование бутстрапа показывает лишь некомпетентность во вронтенде того пехапешника, которому сказали делать фронтенд. Вы не в курсе ошеломительных результатов, после которых 100% проектов, написанных на Бутстрапе, начинают потихоньку от него отходить и выпиливают его нафиг в конце концов? А занете почему? Они поняли, что Бутстрап это говно и бутстрап головного мозга это тоже плохо. |
Господа, по-моему дело скатывается в холивар а ля "похапе г*но, асемблир рулезз", который, в сущности, не отличается от совсем уж детского "рэп кал, мятал форева" :) |
@artuska Я здесть больше соглашусь с @stas-webdev который подчеркнул:
@artuska И опять таки, Вы сказали бутсрат это говно и это плохо но вы не привели ни единого аргумента. @artuska По поводу плагинчиков, теперь я понял о чём Вы говорите вначале не вьехал. |
@vyakymenko у меня по реальному опыту работы с Бутстрапом, да даже до реального опыта, были такие же мысли, что и в статье, толкьо не так красиво и последовательно оформлены. Вам аргументов из статьи не достаточно? Вам одного взгляда на код Бутстрапа не достаточно? Вы точно фронтендом занимаетесь? Или вы пехапешник? Любой нормальный фронтендер видит на месте Бутстрапа говно. Пехапешникам же простительно, они так устроены, их заставили влиться в мир фронтенда, поэтому Бутстрап для них это панацея для верстки под браузеры, которые они люто ненавидят. |
Вот еще ссылочку подкинули в |
@artuska ну и вот вам пример, работал с похожего вида проектом из статьи которую Вы порекомендовали https://gist.github.com/iAdramelk/d328b73c72cab92ef95f:
|
@artuska соотвественно мы вернулись к исходной точке, где все опять таки зависит от задачи/требований и от разработчка(ов) которые над этим работают, а так же их умение этим пользоватся. |
Перефразируя знаменитую фразу скажу: "Вам не нравится Bootsrap? может Вы не умеете его готовить?" |
@Hooter ну как нету-то? Есть. Все атрибуты бутстрапа. И джиквери, и бутстрап.js и дивки не семантические и многокилометровые классы. Это что? Что за параша: div class="col-md-12 text-center" Гы, и ведь не поленился с андроид браузера версии 4.3 зайти. Косяк всего один, но реально бесит. Когда в режиме портрет пальчиком скролишь страницу либо вверх, либо вниз, вся это братия с надписями поверх кругляшек-диаграмм начинают дергаться туды-сюды и на изображение наезжать. Типичный косяк бутстрапа вообще и яваскриптовых "решений" в частности. Когда скрипт пытается в процессе скролла "динамически" нормализовать положения надписей и прочего контента. Е**ал я в рот такую динамику. Чо, мля, глаза тоже в такт дрыганьям страницы должны плясать? |
Статья понравилась. За свой многолетний опыт работы в вебе мне довелось работать во многих компаниях и иметь возможность познакомиться с разработчиками разного уровня. На основании этого могу с уверенностью заявить, что самыми желанными, перспективными и высокооплачиваемыми сотрудниками оказывались именно те разработчики, которые хорошо знали базу — основы программирования. |
Спасибо за статью. От себя хочу добавить, что рациональное использование популярных библиотек, фреймворков о которых пишут в статье это всё сугубо индивидуально, и если ты не умеешь их готовить - это твоя проблема, обычно у таких инклюдится туева хуча плагинов(некоторые из которых весят по 40кб), нужно этого избегать, но я не призываю писать всё на чистом js. |
Чего вы, профи, дое*бались-то до JQ и BS? Оба эти инструменты использует просто туева хуча разработчиков во всем мире. Или вы будете травить байку про миллионы лемингов? |
@keslo уверен, что очень мало разработчиков тянут jquery в новые проекты |
@keslo ну и пусть дальше используют, если им нравится. Лично мне не нравится с планшета делать заходы на сайты, состряпанные на бутстрапе. Мордокнига и то быстрее грузится, чем бс сайт. |
Я хрен знает, как в бутстраповские div'ки schema.org встраивать. А многосоставные и многокилометровые названия классов эт вообще феерический звездец. |
Кстати, что пхпшники, что фронтендчики на яваскрипте - как муж и жена одна сатана. Кучу плагинов и инклюдов - всё в одно лыко. И на все случаи жизни. А как, собственно, код самих плагинов работает, покую. Тормозит ли, не тормозит ли процесс... |
@Globik как по мне, то посыл автора в том, что библиотеки/фреймворка и т.п. приходят и уходят, поэтому необходимо осваивать основы. А JQ и BS взяты как наиболее популярные библиотеки в сети. |
Я правильно понял - если уже года 2-3 писал на чистом htlm, css, sass, если учил что такое резиновая верстка и медиазапросы и даже вручную заадаптивил пару сайтов, то в том, чтобы использовать ТОЛЬКО ЛИШЬ бутстраповскую стеку нет ничего страшного? (О том, чтобы брать весь бутстпрап не может быть и речи, всякие аккордеоны и табы лучше самому сделать) |
Все правильно, автор молодцом! |
Гы, а без джиквери новичку, значит, не судьба первого результата добиться? Лан раньше ие мутное было, а счас-то чего? Кодь и радуйся в любимом браузере. |
Не согласен в выводами. Bootstrap совершенно не мешает делать сложный дизайн. Его стили легко переопределяются. Всё, что делает bootstrap, можно (а хорошему фронтендеру и нужно уметь) делать самому, но опять же, в массовой разработке это только дополнительный риск исполнителя и лишнее время, затраченное на правильное соблюдение всяких media-queries. В целом, считаю, оба инструмента нужно знать и уметь использовать при необходимости. |
Что это за бред. Такое ощущение, что ТС сам вчера улышал про js |
Бред впихивать бутстрап на любой сайт. С мобилы зайди на такой сайт и вкуришь о чем речь. То контент дрыгается, то страница тормозит. Хуль далеко ходить, зайди на mybeeline.ru и прочувствуй, какого это. |
Globik, не позорься. Если ты нагуглил frontender и смог зарегистрироваться на гитхабе, это не значит что ты стал хотя бы верстальщиком. А про то, что ты написал про mybeeline.ru - просто под столом. лол |
А причем тут позорься? |
@harmerok ты сам не позорься и сходи с мобилы сюда http://m.20min.ch и убедись какую хуету представляет из себя бутстрап и ко и спа. |
Отличная статья! Все правда! Попалась бы она мне лет так 8 назад ))) А то у меня сейчас реальная проблема - мне как попался jQuery на глаза в далеком 2008-м - так я на него подсел и слезть не могу ((( еще и проекты с которыми работает команда по умолчанию юзают jquery (( Теперь вот мучаюсь, так как еще года 3 назад без знания vanila js тебя еще считали фронтендером, то сегодня уже все - назад в верстальщики (хотя на западе такого разделения нет - там по умолчанию все - front-end developers). |
На самом деле бутстрап можно использовать и с БЭМ-ом, посредством использования @extend, вес итогового файла при этом будет определятся тем, сколько компонентов bootstrap мы импортировали в наш .scss/.sass/.less. Сами классы бутстрапа можно при этом вообще не использовать. |
No description provided.
The text was updated successfully, but these errors were encountered: