Канал для подготовки к собеседованиям по фронтенду Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront Менеджер по рекламе: @Spiral_Yuri Купить рекламу: https://telega.in/c/frontendinterview Номер заявления в РКН № 4959045795
Справочник JavaScript. Кратко, быстро, под рукой
Данный справочник содержит всю ключевую информацию о Javascript в удобной и наглядной форме. Структура справочника позволяет быстро и удобно находить нужную информацию, получать примеры использования тех или иных элементов и конструкций JavaScript.
👉 @frontendInterview
prefers-contrast
Это одно из значений директивы @media
для проверки пользовательских настроек. Отслеживает выбор настроек контрастности в системе.
Пример
Давайте зададим модальному окну белую рамку, когда контрастность в системе понижена.
@media (prefers-contrast: more) {
.dialog {
border: 2px solid #FFFFFF;
}
}
В новом выпуске подкаста «Времена НаСтали» руководитель отдела frontend-разработки Олег Рогов и руководитель команды дизайна Анна Труфанова рассказали о low-code решениях в веб-дизайне.
Технология использования платформ позволяет создавать приложения без глубоких знаний в области программирования. Такой подход полезен, если к разработке веб-интерфейсов нужно привлечь бизнес-аналитиков или экспертов из другой нетехнической области.
В подкасте ответили на следующие вопросы.
— Как low-code влияет на процесс дизайна?
— В чем главные преимущества использования этих инструментов по сравнению с традиционными методами разработки?
— Нужно ли иметь базовые знания программирования?
— Каковы текущие тенденции и будущее развитие low-code инструментов в контексте дизайна?
Слушать подкаст на Яндекс.Музыке!
Выразительный React: простые компоненты на сервере
В статье вы познакомитесь с React и создадите первый простой компонент — прямоугольник с собачкой. В этом примере мы не будем запускать код в браузере. Вместо этого напишем простой скрипт, который запустит сервер и отдаст HTML-страницу с компонентом. Эта техника называется рендеринг на стороне сервера (Server-Side Rendering, SSR).
👉 @frontendInterview
Большая кладовая онлайн-курсов
Stepik – незаменимый спутник для тех, кто работает удаленно и любит путешествовать, так как помогает учиться в любой точке мира.
Это отличная альтернатива чтению книги и просмотру фильма: позволит вам скоротать время в дороге, осваивая полезный навык или подтягивая иностранный язык, особенно удобно это делать в мобильном приложении.
У Stepik есть свой телеграм-канал, в котором они рассказывают об авторских курсах (как платных, так и бесплатных), а также публикует полезные статьи и ссылки. У них есть такие подборки курсов:
- Разработка на Python
- Дизайн и графика
- Тестирование ПО
- Работа с данными
Подпишитесь на stepik_courses и найдите интересующий курс для себя!
Подписаться
#реклама 16+
О рекламодателе
Событие change
Событие change срабатывает, когда пользователь изменяет значение в <input>, <select> или <textarea> и фиксирует свои изменения.
Это событие лучше всего использовать при создании форм, когда не требуется постоянно взаимодействовать с каждым изменённым символом в поле ввода. Так же данное событие пригодится и при создании чекбоксов, полей выбора и т. п.
Когда использовать
В текстовых полях (<input>, <textarea>), когда нужно получить окончательное значение после завершения ввода.
В выпадающих списках (<select>), если пользователь выбрал новое значение из дропдауна с доступными опциями.
Чекбоксы и радиокнопки (<input type="checkbox">, <input type="radio">), когда состояние переключается между «выбрано» и «не выбрано». Например, при отправке формы или при взаимодействии с выбором нескольких значений (чекбоксы или выпадающие списки).
Пример:
const input = document.querySelector('.input')
input.addEventListener('change', function (event) {
console.log(event.target.value)
})
Trash Party
Вы получите trash1 и trash2, которые могут иметь следующие значения:
[], false, '', new Array(), null, NaN, undefined, 0, -0, 0n, -0n, '0'.
compareTrash(0, false) => false
compareTrash('', '') => true
compareTrash([], 0) => false
Помощь в трудоустройстве в IT-сфере!
В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно!
Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита.
Для этого нужно:
- Перейти по ссылке
- Заполнить анкету и ответить на вопросы (занимает менее 3 минут)
- На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать
Перейти на сайт
#реклама 16+
urban-university.ru
О рекламодателе
UX designer - нарисовал
Devs - сделали
QA - протестировали
Пользователь:
👉 @frontendInterview
Дизайн в FIGMA с нуля. Бесплатный курс + портфолио
Онлайн-программа с наставником и чатом. Дизайн от профессионалов. Доступ 0 руб.
Узнать больше
#реклама 16+
yudaevschool24.online
О рекламодателе
Бесплатное IT-образование в 2024
Отобрали для вас полезные телеграм-каналы, которые помогут освоить IT-направления
Выбирайте нужное и подписывайтесь:
— Frontend:
t.me/+qWPopdiaxVMzZDgy
— Backend:
t.me/+X-zQb-NgzGNhMzRi
— GitHub:
t.me/+3BVAmDixuO9lYTFi
— Книги айти:
t.me/+IG2NAVECUXs4MGYy
— Python:
t.me/+vBSA5zgB_gA0OWRi
— Java:
t.me/+3BRKfZ09ewg0NDJi
— C#:
t.me/+O3pnFY4bpF5hNTEy
— С/С++:
t.me/+PGxPXpZZczQxODcy
— Базы Данных & SQL:
t.me/+530qWWydM8ExZjk6
— Golang:
t.me/+FvTd7F-O-NNmNGMy
— PHP:
t.me/+jBvbaet0vpplNDQy
— Моб. разработка:
t.me/+Ikx5H4MrPihlOWZi
— Разработка игр:
t.me/+Z34knEvL8P9lZTAy
— DevOps:
t.me/+3wSgqmP5NOBhZGUy
— Data Science:
t.me/+-CuoNNa6P7VjOTRi
— ИБ:
t.me/+4jo8N5jtGDs1NTli
— Тестирование:
t.me/+MvFXlXbmmPFkM2Ey
— Маркетинг:
t.me/+lgiFPJTYp8M0ZjRi
— Дизайн:
t.me/+gmflvDFPc_c1YmIy
Подписаться
#реклама 16+
О рекламодателе
Как можно оптимизировать перерисовки ?
Оптимизация перерисовок (или "repaints" и "reflows") в веб-приложениях является важной задачей для обеспечения высокой производительности и плавности интерфейса. Вот несколько методов и стратегий, которые можно использовать для оптимизации перерисовок:
Используйте Document Fragments:
Вместо многократного добавления элементов в DOM, добавляйте их в DocumentFragment
, а затем добавьте фрагмент в DOM одним действием.
const fragment = document.createDocumentFragment();
for (let i = 0; i < 100; i++) {
const div = document.createElement('div');
div.textContent = `Item ${i}`;
fragment.appendChild(div);
}
document.body.appendChild(fragment);
element.style.width = '100px';
element.style.height = '100px';
element.style.backgroundColor = 'red';
.new-style {
width: 100px;
height: 100px;
background-color: red;
}
offsetHeight
или offsetWidth
, после изменения стилей, заставляет браузер выполнять немедленную перерисовку. Избегайте таких действий..animated {
transition: transform 0.3s;
transform: translateX(100px);
}
resize
или scroll
), чтобы уменьшить количество вызовов обработчиков событий.function debounce(func, wait) {
let timeout;
return function(...args) {
clearTimeout(timeout);
timeout = setTimeout(() => func.apply(this, args), wait);
};
}
window.addEventListener('resize', debounce(() => {
console.log('Resized!');
}, 200));
const height = element.offsetHeight;
element.style.height = out;
const height = element.offsetHeight;
element.style.height = ${height + 10}px;
.will-change-transform {
will-change: transform;
}
Фронтенд в картинках — просто, наглядно и понятно. Новые знания в компактном формате каждый день.
Присоединяйтесь: @FrontendPortal
Курс графического дизайна с нуля. Бесплатное обучение!
Выбери свое направление в дизайне: графический дизайн, веб-дизайн, UX/UI-дизайн.
И изучи бесплатно основы дизайна с личным наставником! 3 работы в портфолио.
Узнать больше
#реклама 16+
yudaevschool24.online
О рекламодателе
pov: ты решил залететь в айти в 2024-м
👉 @frontendInterview
Помощь в трудоустройстве в IT-сфере!
По всей России объявили бесплатную программу на шестимесячное обучение по IT-cпециальностям.
Запись на участие в программе продлится до конца июля, но чтобы туда попасть, нужно пройти специальный профтест.
По результату тестирования сразу узнаете, какая профессия вам подойдет, и проходите ли вы на бесплатное обучение.
Перейти на сайт
#реклама 16+
urban-university.ru
О рекламодателе
Как быстро мечты удаленщиков разбиваются об реальность
👉 @frontendInterview
Feature-Sliced Design (FSD): Основы и практические примеры архитектуры
Когда я только начинал свою карьеру фронтенд-разработчика, часто сталкивался с проблемами поддержки кода в проектах. Со временем я понял, что структура кода имеет решающее значение. Так я узнал о Feature-Sliced Design. Этот подход помогает разбивать проект на функциональные части, что упрощает работу с кодом и его сопровождение. Давайте разберемся как это работает.
👉 @frontendInterview
⚡ Открытый урок «Эффективная работа с Next.js и TypeScript»
🗓 25 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Практический курс по TypeScript» от Otus.
На вебинаре:
✔разберем, как создавать масштабируемые и производительные приложения с помощью Next.js и TypeScript;
✔ поговорим об использовании статической и серверной генерации, работе с маршрутизацией и оптимизации производительности;
✔обсудим типизацию компонентов и интеграцию с внешними API для создания надежных приложений.
🔗 Ссылка на регистрацию: https://vk.cc/cEXrnX
🎁 Только в "Черную пятницу", скидки на курс до 15%! Подробности у менеджеров.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 erid 2SDnjeC
Приглашаем на вебинар курса Fullstack Developer!
📅 Дата: 20 ноября 2024 года
🕗 Время: 20:00 (мск)
📍 Тема: Базовое использование системы контроля версий Git
## Что будет на вебинаре?
- Введение в систему контроля версий, основные команды и концепции (репозитории, коммиты, ветки).
- Как клонировать репозиторий, выполнять слияния и разрешать конфликты при работе в команде.
- Рекомендации по эффективному использованию Git и обзор популярных инструментов для удобства работы (например, GitHub, GitLab).
## Что узнают участники?
- Основные команды и концепции Git: как использовать команды git init, git add, git commit, git branch и другие. Эти знания помогут создать и управлять своими проектами, отслеживая изменения в коде и организуя свою работу более эффективно.
- Работа с удалёнными репозиториями: научатся клонировать репозитории, отправлять свои изменения и синхронизировать локальные изменения с удалёнными. Эти навыки будут полезны для совместной работы над проектами в командах и использования платформ, таких как GitHub или GitLab.
- Разрешение конфликтов и управление ветками: как управлять различными ветками в проекте и разрешать конфликты, которые могут возникнуть при слиянии изменений. Эти навыки помогут более уверенно работать в команде, минимизируя риски потери данных и улучшая процесс разработки.
Не упустите возможность улучшить свои навыки и стать более уверенным разработчиком! Присоединяйтесь к нашему вебинару и узнайте все секреты работы с Git.
🔗 Зарегистрироваться на вебинар: https://vk.cc/cEUXOc
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru erid 2SDnjeBbtfm
Как мы делаем СУБД Pangolin?
Привет! На связи команда разработки СУБД Platform V Pangolin.
Мы делаем полезное сообщество для всех профессионалов из мира СУБД и всех, кому интересен наш продукт.
Пишем о том, как делаем Pangolin, разбираем ваши кейсы в чате, помогаем решать рабочие задачки, зовем на бесплатные вебинары и митапы, проводим квизы про базы данных, разбираем английский сленг, а еще у нас есть вакансии и идеи для хобби айтишников...
Подпишитесь, у нас как раз много нового!
Подписаться
#реклама 16+
О рекламодателе
Agile для всех
AGILE дает реальные и действенные ответы на вопрос, который не дает спокойно спать руководителям: «Как оставаться успешным в быстро меняющемся и непредсказуемом мире?» Эта методология уже завоевала рынок, доказав что является одним из лучших подходов для создания и доставки программного обеспечения. «Agile для всех» адресован практикам, из этой книги вы узнаете как целые организации — от менеджеров по продукту и разработчиков до маркетологов и руководителей — могут использовать «гибкий» подход.
Мэтт Лемей просто и без сленга объясняет, что такое Agile, и предлагает конкретные и действенные шаги, позволяющие любой команде реализовать свои задачи максимально эффективно. Вы найдете множество примеров, которые подойдут для любого типа и размера организации — от стартапов до крупных предприятий, — позволяющих реализовать Agile-подход в разных сферах деятельности.
👉 @frontendInterview
Что такое falsy значения?
"falsy" (ложные) значения — это значения, которые при приведении к логическому типу (Boolean) дают false
. Эти значения часто используются в условиях (например, в if
выражениях) для проверки истинности или ложности.
Основные значения:
false:
Само значение false
является ложным.
if (false) {
console.log('Это не выполнится');
}
if (0) {
console.log('Это не выполнится');
}
if (-0) {
console.log('Это тоже не выполнится');
}
if ("") {
console.log('Это не выполнится');
}
if (null) {
console.log('Это не выполнится');
}
if (undefined) {
console.log('Это не выполнится');
}
if (NaN) {Читать полностью…
console.log('Это не выполнится');
}
Войти в IT – в 37 и с дипломом филфака
Я нашла свою первую работу тестировщика в 37 лет, с гуманитарным образованием, без коммерческого опыта и без курсов. В этой статье хочу показать все максимально объективно – и успехи, и разочарования на этом пути.
👉 @frontendInterview
Как опубликовать сайт прямо на GitHub?
Задача
Как опубликовать сайт в виде набора HTML-страниц для тестирования или постоянного размещения прямо на GitHub. Например, такой сайт может стать отличным портфолио. Для него будут бесплатными хостинг и доменное имя третьего уровня.
На GitHub для этого есть специальный инструмент — GitHub Pages. С помощью него публикуют сайты, используя в качестве хостинга сам сервис. Есть два способа использования этого инструмента:
1. Собранный сайт помещается в отдельную папку в выбранной ветке репозитория, GitHub просто отображает эту папку как корневую для сайта. Такой подход используют для показа уже собранного статического сайта в виде набора файлов в форматах, которые отображаются в браузере напрямую.
2. Статический сайт сначала собирается с помощью средств автоматизации GitHub Actions и публикуется также как в первом случае.
Второй способ не будем рассматривать, так как он находится на этапе бета-тестирования. В этом режиме можно выбрать уже готовые решения, например, GitHub Pages Jekyll и Static HTML, а можно настроить свой воркфлоу.
Рассмотрим в статье подробно первый способ.
👉 @frontendInterview
Всем привет!
Хотите узнавать небанальное об интервью на английском? Получить оффер в валюте на удаленке или даже переехать?
Тогда приглашаем вас, дорогие и уважаемые, в наш маленький канал! Мы очень стараемся постить всякие интересности регулярно, и, если поскроллить, то уже можно почитать бомбические советы по составлению резюме, байки про работу в айти и даже попрактиковаться в ответах на типичные вопросы собеседования.
Будем очень рады вашей подписке, но еще больше - вашим вопросам и мнениям.
Ваши Аня и Любовь
из @acceleracio
Find the unique string
Есть массив строк. Все строки содержат одинаковые буквы, кроме одной. Попробуйте найти его!
Пример:
findUniq([ 'Aa', 'aaa', 'aaaaa', 'BbBb', 'Aaaa', 'AaAaAa', 'a' ]) // => 'BbBb'
findUniq([ 'abc', 'acb', 'bac', 'foo', 'bca', 'cab', 'cba' ]) // => 'foo'
Шпаргалки для начинающего верстальщика HTML/CSS
Книга отлично подходит тем, кто только начинает учить верстку. Здесь вы найдете универсальный код и полезные советы, крутые эффективные ресурсы, применяя которые можно быстро и легко научиться верстать реальные проекты. Вы откроете новые фишки, лайфхаки для своей верстки...
👉 @frontendInterview
Расскажите про приоритет селекторов
Приоритет селекторов (также известный как специфичность селекторов) определяет, какие стили будут применяться к элементу, если на него действуют несколько правил с различными селекторами. Специфичность основана на типах селекторов и их количественном присутствии в одном CSS-правиле.
Как она вычисляется?
Специфичность выражается четырьмя уровнями: A, B, C, D. Чем выше значения, тем более специфичный селектор.
A: Инлайновые стили (например, style="color: red;"
) имеют самую высокую специфичность.
B: Количество ID-селекторов в селекторе (например, #header
).
C: Количество классов, атрибутов и псевдоклассов (например, .class
, [type="text"]
, :hover
).
D: Количество тегов и псевдоэлементов (например, div
, h1
, ::before
).
Рассмотрим несколько примеров и определим их специфичность:
1. #main-content
— (0, 1, 0, 0)
2. .article p
— (0, 0, 1, 1)
3. header h1 span
— (0, 0, 0, 3)
4. div#main .content .text
— (0, 1, 2, 1)
Чем выше значения специфичности, тем выше приоритет стиля. Если два селектора имеют одинаковую специфичность, то стиль, который объявлен позже, будет применён.
Пример
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Пример специфичности</title>
<style>
p {
color: black; /* (0, 0, 0, 1) */
}
.text {
color: blue; /* (0, 0, 1, 0) */
}
#highlight {
color: red; /* (0, 1, 0, 0) */
}
p#highlight {
color: green; /* (0, 1, 0, 1) */
}
</style>
</head>
<body>
<p class="text" id="highlight">Этот текст будет зелёным.</p>
</body>
</html>
<p>
элемент действует несколько селекторов с разной специфичностью:p
имеет специфичность (0, 0, 0, 1).text
имеет специфичность (0, 0, 1, 0)#highlight
имеет специфичность (0, 1, 0, 0)p#highlight
имеет специфичность (0, 1, 0, 1)p#highlight
имеет наивысшую специфичность (0, 1, 0, 1), он применяет стиль цвета зелёный.Закрытый клуб для айтишников
FAANG School, чьи выпускники работают в Яндексе, СБЕРЕ и других гигантах, запустили бесплатное сообщество для всех, кто изучает Java.
Общайся в ламповом чате с такими же людьми «в теме», получай фидбек у опытных разрабов и черпай практические рекомендации от экспертов школы.
В чате уже больше 10 000 человек, а новенькие, которые подключатся сейчас, получат доступ к большой библиотеке Java Junior с полезными материалами:
– Пошаговая RoadMap по Java
– Мануал по Docker. Основные команды и концепции
– Микросервисы. Вопросы с собеседований
– Шпаргалка по Kafka
– Инструкция по работе с Git
– Подробный гайд, как найти работу в IT без опыта
– Подборка платформ с вакансиями для java-разработчиков
Вступай сейчас. Открыли доступ всего на 24 часа!