БЛОГ
Статьи, которые я написал
  • БЭМ для начинающих

    В чем проблема CSS, почему нужны какие-то методы именования?

    1. Отсутствие пространства имен дает возможность совпадения селекторов и их неожиданных влияний (наложение правил, зависимость одних частей страницы от других).
    2. Отсутствие изоляции: часть CSS-свойств наследуется, а ни один из нативных механизмов изоляции частей страницы сейчас не имеет приемлемой кроссбраузерности.
    3. CSS сложно понять без разметки, к которой он применен.
    4. В CSS поощряется каскад, использование которого связывает стилизацию и разметку, что усложняет модификацию и того, и другого.

    Основы методологии БЭМ

    • Блок - абсолютно независимая, самодостаточная часть страницы.
    • Элемент - часть блока, немыслимая отдельно от своего блока.
    • Модификатор - дополнительный класс, добавление которого как-то меняет внешний вид или поведение блока или элемента.

    Достоинства БЭМ

    1. Полная предсказуемость модификации: меняем что-то в одном блоке, другие блоки не ломаются.
    2. Гарантия непересечения имен классов (пространство имен): нет наложений стилей.
    3. Нет привязки к разметке: легко менять теги, вложенность элементов.
    4. CSS понятен без HTML: быстрее понимание - быстрее работа.

    Недостатки БЭМ

    1. Наличие символов __ и -- в классах вызывают у некоторых эстетов отвращение. (Не такая уж большая плата за получаемые преимущества).
    2. Длинные имена классов увеличивают размер разметки. (Но прекрасно сжимаются gzip-ом).
    3. У тега может быть 2 и более класса: Блок, Модификатор-1, Модификатор-2. (Ситуация редкая, лучше объединять модификаторы, когда возможно).

    Основные правила обеспечения модульности

    • Верстка должна быть модульной (любой блок можно вырвать из одного места страницы и вставить в другое, так что бы он не "развалился" и не поломал ничего вокруг)
    • На странице нет "голых" тегов. Все теги имеют свой класс, и стилизируются конкретно по нему.
    • Нет селекторов по тегам.
    • Не использовать относительных селекторов (*, >, +, ~)
    • Зависимость селекторов допускается только от модификаторов блока.
    • Именование классов формируется по правилам синтаксиса БЭМ.
    • Правила позиционирования не применяются к блокам
  • Что такое Full-Stack разработка?

    По результатам опроса Stack Overflow в 2016 году, Full-Stack разработка — это самое популярное занятие разработчиков. Поэтому неудивительно, что сейчас на западном рынке появляется все больше и больше обучающих программ, которые помогают людям стать Full-Stack разработчиками.

    Чтобы ответить на вопрос, что такое Full-Stack разработка, и кто такой Full-Stack разработчик, давайте рассмотрим, из чего вообще состоит современная веб-разработка.

    Современную веб-разработку можно разделить на две большие составляющие: Front-end и Back-end разработка.

    Front-end разработка (от слова front — «впереди») — то, что вы видите на сайте, его визуальная составляющая. Сюда входят HTML, CSS и по большей части JavaScript. В современной Front-end разработке сейчас актуальны и активно применяются несколько JavaScript фреймворков, из которых, в основном, выбирают Angular, Vue, React. У каждого есть свои плюсы и минусы, и выбирать нужно в зависимости от их области применения. Но здесь есть ключевой момент — вы, по сути, выбираете из JavaScript технологий, так как на данный момент JavaScript является монополистом в этой области.

    Back-end разработка — это серверная разработка (от слова back — «позади»), и она подразумевает под собой разработку логики вашего сайта, взаимодействие с базой данных и все то, что должно быть на сервере. В Back-end разработке вы можете выбирать из большего количества языков, которые подходят под разные задачи. Back-end вы можете писать, к примеру, на PHP, Java, Node.JS, Python, Ruby и так далее.

  • Самый необходимый набор Gulp плагинов

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aliquid debitis, et ex modi nostrum quibusdam ratione repellat. Aspernatur consequuntur ducimus eum ex explicabo illum in laudantium nisi perferendis voluptas? Ipsum.

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad cum, delectus eveniet neque nisi placeat saepe unde voluptatum. Commodi consectetur, consequatur dolorum iste possimus praesentium repellendus repudiandae soluta! Ad, temporibus?

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aliquam, corporis, distinctio fugiat harum illo itaque nam natus numquam quae quibusdam quisquam quod rerum. Aperiam aspernatur consequatur hic, itaque minus odit?

  • Почему я выбрал Jade

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum odio officiis repellat. Aliquid atque aut beatae commodi ipsam maiores maxime modi molestias, mollitia, natus nostrum officia perferendis quae quam voluptatibus!

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Alias delectus, dolorem doloribus ducimus enim ex fuga minima nemo nobis praesentium quae quaerat quibusdam, quidem quisquam quod reprehenderit sint tenetur unde.

  • 5 страхов веб-дизайнеров, связанных с CSS Grid

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Architecto asperiores, aspernatur deleniti laborum minus ratione rerum sequi voluptate voluptatum! Consectetur consequuntur, cum doloremque doloribus inventore nihil ratione sed velit voluptas!Aliquid architecto commodi consectetur deleniti doloremque ea et illo in ipsum, iure magnam molestiae molestias nemo nobis obcaecati, odio placeat recusandae repudiandae vel voluptas? Amet fugiat illo in sapiente sint!