Как стать автором
Обновить
13
0
Андрей Маслов @amas1ov

Software Engineer

Отправить сообщение

TypeScript: infer и conditional types. Продвинутый TS на примерах

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров35K

Разбираемся, что же такое conditional types и как написать свои утилиты, такие как ReturnType, InstanceType, NonNullable и др., при помощи ключевых слов infer и extends.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии3

Оптимизация веб-приложений: на что стоит обратить внимание

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров8K

Привет, Хабр! Меня зовут Андрей, я веб-разработчик в МТС Digital. Сегодня поделюсь своим опытом, как и зачем оптимизировать веб-приложения.

В конкурентном мире онлайн-сервисов производительность стала ключевым фактором успеха — пользователи ожидают мгновенного доступа к информации и легкости взаимодействия. 

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

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

Читать далее
Всего голосов 18: ↑18 и ↓0+18
Комментарии4

Как правильно выбрать платформу мобильного центра принятия решений

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.1K

В современном мире бизнеса и технологий мобильные центры принятия решений (Mobile Decision Centers, МЦПР) стали ключевой составляющей успешной стратегии. Они предоставляют компаниям инструменты для быстрого и информированного принятия решений на основе данных. Однако выбор подходящей платформы МЦПР может быть непростой задачей. В этой статье мы рассмотрим шаги, которые помогут вам правильно выбрать платформу для вашего мобильного центра принятия решений.

Читать далее
Всего голосов 7: ↑2 и ↓5-1
Комментарии0

Как IT-специалисту начать выступать на конференциях

Время на прочтение10 мин
Количество просмотров3.9K
Личный бренд IT-специалиста — тема непростая. В момент, когда для роста в карьере сильных хард-скиллов становится недостаточно, приходится искать способы выразить свою экспертность. Кто-то публикуется на профплощадках, кто-то начинает преподавать, а кто-то учится выступать на конференциях. 

Мы в редакции Нетологии поговорили со специалистами, у которых большой опыт публичных выступлений. Артём Новичков — iOS-разработчик в Skyeng и Анастасия Шарикова — QA Lead в Bookmate рассказали, как начать выступать на профильных конференциях и что помогает чувствовать себя увереннее во время выступления.

Читать дальше →
Всего голосов 8: ↑4 и ↓4+4
Комментарии0

TypeScript и все что тебе нужно в разработке

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров33K

Все для работы с продвинутым TS внутри. Generic Types, Mapped Types, Types Guard, Utility Types и многое другое. Шпаргалка с навигацией и примерами.

К изучению
Всего голосов 18: ↑14 и ↓4+12
Комментарии12

Задачи на собеседованиях. Event loop. JS

Время на прочтение10 мин
Количество просмотров99K

Почти на каждом собеседовании бывает задачка на событийный цикл. И как я понял, не все до конца понимают как их решать. А решают их обычно в голове, а лучше используя бумажку и ручку. В статье я приведу способ решения через таблицу
Основной поток/Микрозадачи/Макрозадачи

Читать далее
Всего голосов 18: ↑17 и ↓1+18
Комментарии26

Структуры данных. Неформальный гайд

Время на прочтение6 мин
Количество просмотров168K


Конечно, можно быть успешным программистом и без сакрального знания структур данных, однако они совершенно незаменимы в некоторых приложениях. Например, когда нужно вычислить кратчайший путь между двумя точками на карте, или найти имя в телефонной книжке, содержащей, скажем, миллион записей. Не говоря уже о том, что структуры данных постоянно используются в спортивном программировании. Рассмотрим некоторые из них более подробно.
Читать дальше →
Всего голосов 91: ↑83 и ↓8+75
Комментарии31

Как работает JS: технология Shadow DOM и веб-компоненты

Время на прочтение14 мин
Количество просмотров43K
[Советуем почитать] Другие 19 частей цикла
Часть 1: Обзор движка, механизмов времени выполнения, стека вызовов
Часть 2: О внутреннем устройстве V8 и оптимизации кода
Часть 3: Управление памятью, четыре вида утечек памяти и борьба с ними
Часть 4: Цикл событий, асинхронность и пять способов улучшения кода с помощью async / await
Часть 5: WebSocket и HTTP/2+SSE. Что выбрать?
Часть 6: Особенности и сфера применения WebAssembly
Часть 7: Веб-воркеры и пять сценариев их использования
Часть 8: Сервис-воркеры
Часть 9: Веб push-уведомления
Часть 10: Отслеживание изменений в DOM с помощью MutationObserver
Часть 11: Движки рендеринга веб-страниц и советы по оптимизации их производительности
Часть 12: Сетевая подсистема браузеров, оптимизация её производительности и безопасности
Часть 12: Сетевая подсистема браузеров, оптимизация её производительности и безопасности
Часть 13: Анимация средствами CSS и JavaScript
Часть 14: Как работает JS: абстрактные синтаксические деревья, парсинг и его оптимизация
Часть 15: Как работает JS: классы и наследование, транспиляция в Babel и TypeScript
Часть 16: Как работает JS: системы хранения данных
Часть 17: Как работает JS: технология Shadow DOM и веб-компоненты
Часть 18: Как работает JS: WebRTC и механизмы P2P-коммуникаций
Часть 19: Как работает JS: пользовательские элементы

Сегодня, в переводе 17 части материалов, посвящённых особенностям всего, что так или иначе связано с JavaScript, речь пойдёт о веб-компонентах и о различных стандартах, которые направлены на работу с ними. Особое внимание здесь будет уделено технологии Shadow DOM.


Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии1

Effector — стейтменеджер js приложений (reflect, typescript, forms). Работа с основными инструментами. Часть 2

Время на прочтение6 мин
Количество просмотров5.4K

Effector - менеджер состояния web-приложений.

Новое и удобное решение. Продолжаем серию статей для новичков. Разбираемся, что может упростить работу, как работать с формами и многое другое...

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии15

Service Workers. Инструкция по применению

Время на прочтение9 мин
Количество просмотров141K


Количество выходов в интернет с мобильных устройств ежегодно растёт на 2-4% в год. Качество связи не успевает за такими темпами. Как итог, даже самое лучшее веб-приложение обеспечит ужасный опыт, если пользователь не сможет его загрузить.

Проблема в том, что до сих пор нет хорошего механизма управления кэшем ресурсов и результатов сетевых запросов. В своей статье я хочу рассказать как Service Worker (SW) может помочь в решении этой задачи. Объясню в формате рецептов — какие элементы и в какой пропорции смешать, чтобы получить нужный результат, исходя из задачи и требований.
Поехали!
Всего голосов 57: ↑57 и ↓0+57
Комментарии40

MobX с MVVM упрощает жизнь Frontend разработчика гораздо сильнее Redux'а

Время на прочтение16 мин
Количество просмотров18K

В этой статье я бы хотел подискутировать о том, насколько хорошо паттерн MVVM подходит для разработки Web приложений на React. Вместе этим, я собираюсь описать какие преимущества могут быть при разработке с использованием MobX с паттерном MVVM в сравнении с Redux. Запаситесь кофе, это будет долгое чтиво.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии52

Effector — убийца Redux? Туториал с нуля. Часть 1

Время на прочтение5 мин
Количество просмотров30K

Redux и MobX больше не нужны ?

Туториал для новичков по EffectorJS - современному и удобному стейт-менджеру. Рассмотрим основные возможности, работу ядра, и какие проблемы решает. На примерах.

Читать далее
Всего голосов 6: ↑5 и ↓1+6
Комментарии79

Регулярные выражения (regexp) — основы

Время на прочтение21 мин
Количество просмотров991K

Регулярные выражения (их еще называют regexp, или regex) — это механизм для поиска и замены текста. В строке, файле, нескольких файлах... Их используют разработчики в коде приложения, тестировщики в автотестах, да просто при работе в командной строке!

Чем это лучше простого поиска? Тем, что позволяет задать шаблон.

Например, на вход приходит дата рождения в формате ДД.ММ.ГГГГГ. Вам надо передать ее дальше, но уже в формате ГГГГ-ММ-ДД. Как это сделать с помощью простого поиска? Вы же не знаете заранее, какая именно дата будет.

Читать далее
Всего голосов 50: ↑42 и ↓8+43
Комментарии76

Информация

В рейтинге
Не участвует
Откуда
Томск, Томская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Frontend Developer
Lead
TypeScript
React