Канал для подготовки к собеседованиям по фронтенду Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront Менеджер по рекламе: @Spiral_Yuri Купить рекламу: https://telega.in/c/frontendinterview Номер заявления в РКН № 4959045795
Ум программиста. Как понять и осмыслить любой код
Книга освещает практические основы когнитивистики для программистов. Основные темы: осмысление и развитие чужого и собственного кода, изучение новых языков программирования, мнемонические приемы для программистов, поддержка кода в читаемом состоянии. Объяснено, как снижать когнитивную нагрузку при работе программиста, как делать код логичным и понятным для себя и коллег.
👉 @frontendInterview
Дешёвую рабочую силу теряет
👉 @frontendInterview
Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля
Дизайнер карточек для маркетплейсов — востребованная и доходная профессия 💰
Научись ей бесплатно!
- Бесплатный доступ
- Разбор ДЗ от наставника
- Мощные кейсы в портфолио
Узнать больше
#реклама 16+
yudaevschool24.online
О рекламодателе
Офисы от 380 000 ₽/м² с НДС в БЦ TALLER. м.Павелецкая
TALLER - Новая высота вашего бизнеса! Офисы А класса.
Павелецкий деловой район. 1 км до Садового кольца. Высокая стадия готовности. Помещения под любой тип бизнеса площадью от 64 до 1840 м² в шаговой доступности от набережной.
Рассрочка 0% от застройщика. Продажа по ДДУ. От 380 000 ₽/м².
Выгода до 25% на офисы площадью от 300 м²!
Перейти на сайт
Проектная декларация на сайте https://наш.дом.рф/. Застройщик: ООО "Специализированный застройщик "ТАЛЛЕР"
#реклама
tr-8.ru
О рекламодателе
🌐 Единая точка входа в IT!
Хочешь освоить полный стек технологий, подготовиться к реальным собеседованиям и получить работу мечты? Мы собрали всё необходимое для твоего роста и развития в одном месте!
Выбирай направление и становись частью IT сообщества:
👩💻 React Frontend
👩💻 Ruby Backend
👩💻 iOS Mobile
👩💻 Android Mobile
🖥 PHP Backend
👩💻 Node.js Backend
👩💻 Rust Backend
👩💻 Java Backend
👣 Golang Backend
👩💻 Python Backend
👩💻 QA & Testing
🖥 Общее IT
👨💻 Вакансии IT
📅 Митапы IT
А также у нас есть собственная платформа для подготовки к собеседованиям!
🔹 1000+ вопросов по всем направлениям
🔹 Удобные тренажеры для отработки навыков
🔹 Система фильтров по технологиям и уровню сложности
🔹 Персональная статистика прогресса и история подготовки
YeaHub помогает расти и достигать целей. ⚡
Т-Банк открыл набор на новый поток стажировок 💻
Есть много направлений: разработка (на восьми языках программирования!), ML, SRE, QA, аналитика, менеджмент, редактура, маркетинг и юриспруденция. Ждут студентов и начинающих специалистов, готовых посвящать работе от 20 часов в неделю.
Стажировки оплачиваются, а по результатам нескольких месяцев вас могут пригласить на интервью в штат. Вы будете участвовать в реальных проектах и разрабатывать решения с нуля с полным погружением в бизнес-процессы. Стажеры отлично справляются с тем, чтобы совмещать работу и учебу: менторы и руководители относятся к этому с пониманием.
Выберите направление, отправьте заявку и решите экзамены до 30 января
Паттерны проектирования jаvascript
Автор дает исчерпывающее представление о паттернах проектирования в современном jаvascript (ES6+) и приводит практические примеры их применения. Сначала вы познакомитесь с порождающими, структурными и поведенческими паттернами проектирования в идиоматическом для jаvascript стиле, а затем переключитесь на архитектурные паттерны и паттерны пользовательского интерфейса. Вы узнаете, как применять паттерны, характерные для таких библиотек, как React, и распространять их на фронтенд и микрофронтенд.
В последней части книги представлены и проиллюстрированы паттерны улучшения производительности и безопасности, включая обмен сообщениями, события и стратегии загрузки ресурсов, а также паттерны высокопроизводительных асинхронных вычислений. В издании приводятся примеры использования React и Next.js, а также jаvascript и Web API. Они помогут выбрать и внедрить проверенные паттерны проектирования в различных веб-экосистемах и изменить ваш подход к разработке.
👉 @frontendInterview
Канал для начинающих системных аналитиков!
Здесь вы получите ответы на:
- Какое развитие у системного аналитика и сколько он может получать?
- Как подготовиться к собеседованию?
- Как преодолеть страхи при переходе в IT?
- Как правильно вести коммуникацию с заказчиком?
- Какие ошибки бывают при проектировании?
А так же много практической пользы, которая поможет новичкам начать путь в IT!
Подписаться
#реклама
О рекламодателе
Поднимаем мотивацию
👉 @frontendInterview
Интеграция CSS-фреймворков в Angular: советы, которые вы не знали
Вы создали новое Angular‑приложение, подключили популярный CSS‑фреймворк, но вместо ожидаемого вау‑эффекта столкнулись с проблемами: стили выглядят не так, как хотелось, валидация форм работает странно, а некоторые элементы вообще не реагируют на изменения состояния. Знакомо? Это типичная ситуация, когда CSS‑фреймворки интегрируются без учета особенностей Angular.
Эта статья поможет вам разобраться, почему возникают такие трудности, и покажет, как правильно интегрировать CSS‑фреймворки в Angular. Мы рассмотрим ключевые проблемы, разберем их решения и реализуем стильное, реактивное поле ввода с применением лучших практик Angular.
👉 @frontendInterview
Как добавить стили на каждый элемент страницы?
Чтобы добавить стили на каждый элемент страницы, можно использовать универсальный селектор *
. Этот селектор выбирает все элементы в документе.
Пример использования
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
margin
) и внутренние отступы (padding
) всех элементов на странице до нуля. Это часто делается для того, чтобы избежать неожиданных отступов, которые могут быть заданы по умолчанию браузером. Также устанавливается box-sizing: border-box
, что изменяет модель коробки элемента, позволяя лучше контролировать размеры элементов при добавлении отступов и границ.⚡️ В сети начали массово сливать курсы и книги известных онлайн школ
Вот отсортированная база с тонной материала(постепенно пополняется):
БАЗА (4687 видео/книг):
(363 видео, 87 книги) — Python
(415 видео, 68 книги) — Frontend
(143 видео, 33 книги) — ИБ/Хакинг
(352 видео, 89 книги) — С/С++
(343 видео, 87 книги) — Java
(176 видео, 32 книги) — Git
(293 видео, 63 книги) — C#
(174 видео, 91 книги) — DevOps
(167 видео, 53 книги) — PHP
(227 видео, 83 книги) — SQL/БД
(163 видео, 29 книги) — Linux
(107 видео, 43 книги) — СисАналз
(181 видео, 32 книги) — Go
(167 видео, 43 книги) — Kotlin/Swift
(112 видео, 24 книги) — Flutter
(137 видео, 93 книги) — DS/ML
(113 видео, 82 книги) — GameDev
(183 видео, 37 книги) — UI/UX
(129 видео, 73 книги) — QA
(213 видео, 63 книги) — Rust
(121 видео, 24 книги) — Ruby
Скачивать ничего не нужно — все выложили в Telegram
Sentence Smash
Напишите функцию, которая принимает массив слов, объединяет их в предложение и возвращает это предложение
Вы можете игнорировать необходимость очистки слов или добавления знаков препинания, но вам следует добавлять пробелы между каждым словом.
Будьте внимательны: ни в начале, ни в конце предложения не должно быть пробела!
Пример:
['hello', 'world', 'this', 'is', 'great'] => 'hello world this is great'
Как мерить скорость работы и отзывчивость сайта?
Web Vitals
Google разработал набор метрик, называемых Web Vitals, которые оценивают ключевые аспекты пользовательского опыта:
Largest Contentful Paint (LCP): Время загрузки основного контента страницы.
First Input Delay (FID): Время от первого взаимодействия пользователя с сайтом до момента, когда браузер начинает обработку этого взаимодействия.
Cumulative Layout Shift (CLS): Стабильность макета страницы (измеряет неожиданные сдвиги контента).
Инструменты для измерения производительности
Google Lighthouse: Инструмент, встроенный в Chrome DevTools, который анализирует страницу и предлагает улучшения.
PageSpeed Insights: Онлайн-сервис от Google, который предоставляет отчеты о производительности сайта на мобильных и десктопных устройствах.
WebPageTest: Позволяет проводить детализированные тесты производительности с разными настройками сети и устройства.
Встроенные инструменты браузера
Chrome DevTools: Включает вкладку "Performance" для записи и анализа производительности загрузки страницы и исполнения скриптов.
Network Panel: Показывает время загрузки различных ресурсов, что помогает найти "узкие места".
Мониторинг в реальном времени
Google Analytics: Предоставляет отчеты о скорости загрузки страниц.
New Relic, Datadog: Платформы для мониторинга производительности приложений и сайтов в реальном времени.
Оптимизация и анализ
Использование CDN (Content Delivery Network): Ускоряет доставку контента пользователям, снижая задержки.
Минимизация и сжатие ресурсов: Уменьшение размеров файлов CSS, JavaScript и изображений.
Кэширование: Хранение копий статических ресурсов для ускорения повторных посещений.
👉 @frontendInterview
Как мы мигрируем с JQuery на React
Вокруг все говорят о серверных компонентах реакта, о серверном рендеринге, и разных новшествах в мире фронтенде. Как будто JQuery в один миг взял и исчез. Несмотря ни на что он всё ещё остаётся самой популярной библиотекой .
Сегодня я вам расскажу, как мы постепенно мигрируем с JQuery на React.
👉 @frontendInterview
Зачем нужен Webpack?
Webpack — это мощный инструмент сборки модулей для современных JavaScript-приложений. Он используется для упаковки и оптимизации всех ресурсов вашего приложения, таких как JavaScript, CSS, изображения и другие файлы, в один или несколько файлов, которые можно эффективно загрузить в браузер.
Основные функции
1. Сборка модулей (Module Bundling)
Webpack анализирует ваше приложение, начиная с одного или нескольких входных файлов (entry points), и строит граф зависимостей всех модулей, используемых в вашем приложении.
Он объединяет эти модули в один или несколько выходных файлов (bundles), которые можно загрузить в браузер.
2. Обработка ресурсов (Asset Management)
Webpack может обрабатывать различные типы файлов, такие как JavaScript, CSS, изображения и шрифты, используя загрузчики (loaders) и плагины (plugins).
Загрузчики позволяют вам преобразовывать файлы перед включением их в сборку. Например, загрузка CSS, преобразование ES6+ кода в ES5 с использованием Babel, оптимизация изображений и т.д.
3. Оптимизация производительности (Performance Optimization)
Webpack предлагает множество встроенных функций для оптимизации выходных файлов, включая минификацию JavaScript и CSS, разделение кода (code splitting), удаление неиспользуемого кода (tree shaking) и др.
4. Горячая перезагрузка (Hot Module Replacement)
Эта функция позволяет обновлять модули приложения в реальном времени без перезагрузки всей страницы. Это значительно ускоряет процесс разработки и тестирования.
Основные компоненты
1. Входные точки (Entry Points)
Входные точки указывают Webpack, с какого файла или файлов начать построение графа зависимостей.
// webpack.config.js
module.exports = {
entry: './src/index.js',
};
// webpack.config.js
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js',
},
};
// webpack.config.js
module.exports = {
module: {
rules: [
{
test: /\.css$/,
use: ['style-loader', 'css-loader'],
},
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-env'],
},
},
},
],
},
};
Мебель Lioste – сочетание эргономики и эстетики
Мебель Lioste сохраняет традиции итальянских мастеров и дизайнеров.
Что это значит для нас:
- элегантный декор
- продуманность и удобство
- сочетание комфорта, функциональности
- филигранное сочетание рациональности и эмоций
Да, весь этот микс представлен в наших коллекциях в Три Кита и Гранд.
Есть шикарные столы и стулья, диваны, комоды и тумбы.
Будем рады поделиться с вами нотками солнечной Сицилии в зимней Москве!
Перейти на сайт
#реклама
lioste.ru
О рекламодателе
Почему джуны путаются в асинхронном коде (и как научиться с ним работать)
Асинхронная модель — одна из самых сложных и одновременно важных тем в современном программировании, особенно в веб‑разработке. Если посмотреть на боль новичков (да и не только новичков), то одна из самых частых жалоб — непонимание, что там происходит под капотом, почему код скачет и не дает предсказуемых результатов, или почему программа не ждет выполнения функции.
В этой статье разберем, в чем корень путаницы, какие есть ключевые концепции асинхронности, и как к ним прикипеть, чтобы перестать путаться и научиться эффективно писать, отлаживать и поддерживать асинхронный код.
👉 @frontendInterview
Как сделать градиентную границу у кнопки?
В этой статье рассматривается CSS свойство background-clip и его значение border-area, при помощи которого можно создавать уникальные границы блоков.
👉 @frontendInterview
Почему лучше не встраивать строки непосредственно в DOM?
Передача строки непосредственно в DOM (Document Object Model) может привести к различным проблемам, связанным с безопасностью и корректностью рендеринга. Рассмотрим более подробно, почему это не рекомендуется.
XSS-атаки (Cross-Site Scripting):
Если строка содержит пользовательский ввод или динамически полученные данные, она может включать вредоносный код. Например, злоумышленник может вставить <script>
тег, который будет выполнен браузером и может украсть данные пользователей или выполнить другие вредоносные действия.
const userInput = "<img src='x' onerror='alert(\"XSS Attack\")'>";
document.getElementById('output').innerHTML = userInput;
const invalidHTML = "<div>Unclosed tag";
document.getElementById('output').innerHTML = invalidHTML;
// Это может привести к неправильному отображению содержимого.
createElement
, appendChild
, textContent
и другие. Эти методы позволяют безопасно добавлять элементы и текст в DOM.const userInput = "Safe text";
const outputElement = document.getElementById('output');
const textNode = document.createTextNode(userInput);
outputElement.appendChild(textNode);
const userInput = "<div>Safe content</div>";
const outputElement = document.getElementById('output');
outputElement.textContent = userInput;
// Использование textContent гарантирует безопасное добавление текста.
const userInput = "Some user-provided text";
const outputElement = document.getElementById('output');
outputElement.textContent = userInput;
const userInput = "Some user-provided text";
const outputElement = document.getElementById('output');
const paragraph = document.createElement('p');
paragraph.textContent = userInput;
outputElement.appendChild(paragraph);
Find the capitals
Напишите функцию, которая принимает в качестве аргумента одну непустую строку, состоящую только из строчных и прописных букв ascii, и возвращает упорядоченный список, содержащий индексы всех заглавных (прописных) букв в этой строке.
Пример (вход --> выход):
"CodEWaRs" --> [0,3,4,6]
Что такое inline стили, и какой они имеют приоритет?
Инлайн-стили — это CSS-правила, прописанные непосредственно в HTML-элементе через атрибут style. Они имеют более высокий приоритет, чем стили из таблиц стилей или встроенные теги <style>, но уступают !important. Использование инлайн-стилей снижает переиспользуемость и усложняет поддержку.
👉 @frontendInterview
Крупнейший университет искусственного интеллекта
Учим использовать ChatGPT в профессиональных целях, создавать нейро-сотрудников и зарабатывать на искусственном интеллекте.
✨ 8 000+ студентов со всего мира
✨ 600+ AI-проектов, созданных студентами
✨ Сборная Университета — победители крупнейших AI-хакатонов России
✨ Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет и другие)
✨ Трудоустраиваем выпускников в крупнейшие компании (Яндекс, ВТБ, Сбербанк, Роскосмос и другие)
Будем рады видеть тебя в наших рядах!
Узнать больше
#реклама 16+
neural-university.ru
О рекламодателе
Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля
Дизайнер карточек для маркетплейсов — востребованная и доходная профессия 💰
Научись ей бесплатно!
- Бесплатный доступ к курсу
- Разбор ДЗ от наставника
- Мощные кейсы в портфолио
Узнать больше
#реклама 16+
yudaevschool24.online
О рекламодателе
Какое свойство позволяет вам спрятать элемент, но сохранить занимаемое им пространство на странице?
Это свойство называется visibility
. Это свойство может принимать несколько значений, но основными для скрытия элемента являются visible
и hidden
.
.hidden-element {
visibility: hidden;
}
visibility: visible;
, что означает, что они видимы на странице.visibility: hidden;
, он становится невидимым, но продолжает занимать то же пространство в макете страницы, что и когда он был видимым.<div>
с классом hidden-element
скрыт, но продолжает занимать место на странице. Третий <div>
расположен после него, как если бы скрытый элемент был видимым.<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
.hidden-element {
visibility: hidden;
}
.visible-element {
background-color: lightblue;
padding: 20px;
}
</style>
</head>
<body>
<div class="visible-element">Этот элемент видим.</div>
<div class="hidden-element">Этот элемент скрыт, но сохраняет место.</div>
<div class="visible-element">Этот элемент тоже видим и расположен после скрытого элемента.</div>
</body>
</html>
display: none;
opacity: 0;
Безопасность веб-приложений. Разведка, защита, нападение, 2 изд.
Три столпа безопасности приложений — разведка, нападение и защита. Во втором издании Эндрю Хоффман рассматривает десятки смежных тем, от новейших типов атак и средств защиты до моделирования угроз, жизненного цикла безопасной разработки ПО (SSDL/SDLC) и архитектуры нулевого доверия. Вы получите подробную информацию об эксплойтах и средствах защиты от атак с использованием GraphQL, облачных технологий и доставки контента (CDN). В главы, посвященные атакам и их предотвращению, добавлены сведения для более продвинутых читателей.
👉 @frontendInterview
Обычный рабочий день фронтендера
👉 @frontendInterview
Большая кладовая онлайн-курсов
Stepik – незаменимый спутник для тех, кто работает удаленно и любит путешествовать, так как помогает учиться в любой точке мира.
Это отличная альтернатива чтению книги и просмотру фильма: позволит вам скоротать время в дороге, осваивая полезный навык или подтягивая иностранный язык, особенно удобно это делать в мобильном приложении.
У Stepik есть свой телеграм-канал, в котором они рассказывают об авторских курсах (как платных, так и бесплатных), а также публикует полезные статьи и ссылки. У них есть такие подборки курсов:
- Разработка на Python
- Дизайн и графика
- Тестирование ПО
- Работа с данными
Подпишитесь на stepik_courses и найдите интересующий курс для себя!
Подписаться
#реклама 16+
О рекламодателе