Как стать автором
Обновить
45.57

TypeScript *

Cтрого типизированная надстройка для JavaScript

Сначала показывать
Порог рейтинга
Уровень сложности

On-Demand ISR в Next.js или как эффективно обновлять статический контент на сайте, поступающий из CMS или админки

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

В этой статье я расскажу, как и для чего, на одном из своих проектов, мы прикрутили новую возможность Next.js – On-Demand ISR (инкрементная статическая регенерация по запросу).

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

Перегрузка функций в TypeScript

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

Перегрузка функций — это та область TS, которая находится в невидимой зоне для разработчиков, которые изучали JS, а потом на работе «на ходу» начали осваивать TS. Особенно, если изучение JS не было связано с университетом или любым другим фундаментальным образованием. Если вы изучали JS на курсах, то вы никогда не услышите там про перегрузку функций, просто потому что в JS этого функционала нет. А когда вы сами начнете изучать TS, то вы не наткнетесь на перегрузку функций, просто потому что даже не подозреваете о ней. Если, прочитав вступление, вы задались вопросом «Что за перегрузка такая?», то эта статья для вас.

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

Обновления VS Code: Python, Markdown, настраиваемое свёртывание кода и многое другое

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


Работа с Python в VS Code 1.70 стала проще, точность определения конфликтов слияния Git — выше, а ещё появились доработки интеграции с интерактивными блокнотами Jupyter. К старту нашего флагманского курса по Data Science делимся подробностями.

Посмотреть
Всего голосов 19: ↑16 и ↓3+13
Комментарии11

Пишем продвинутый планировщик с использованием React, Nest и NX. Часть 2: аутентификация

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

Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. В прошлой части мы разобрались, как настроить и запустить проект, а сегодня продолжим создавать наш планировщик и поэтапно разберём создание аутентификации с помощью библиотеки Passport.

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

TypeScript в деталях. Часть 2

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


Привет, друзья!


Представляю вашему вниманию перевод еще нескольких статей из серии Mastering TypeScript, посвященных углубленному изучению TypeScript.


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

TypeScript: разбираем исходный код Radash

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


Привет, друзья!


Radash — это современная альтернатива Lodash, библиотека, предоставляющая набор часто используемых утилит (вспомогательных функций), реализованных на TypeScript. В данной статье мы вместе с вами разберем исходный код нескольких наиболее интересных утилит.


Репозиторий с кодом библиотеки находится здесь.


Обратите внимание: я позволил себе немного модифицировать отдельные утилиты для повышения читаемости и сокращения шаблонного кода. Также в нескольких местах пришлось поправить типы.


Для тех, кому интересно, вот большая коллекция сниппетов JavaScript.


Начнем с чего-нибудь попроще.

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

Как не проиграть с производительностью в длительном скроллинге

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

Меня зовут Михаил Кириченко. Я разрабатываю клиентскую часть в компании Bimeister.

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

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

TypeScript в деталях. Часть 1

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


Привет, друзья!


Представляю вашему вниманию перевод нескольких статей из серии Mastering TypeScript, посвященных углубленному изучению TypeScript.


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

Велосипедим Promise на TypeScript

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

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

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

Использование директивы NgOptimizedImage для реализации загрузки изображений в Angular

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

Директива NgOptimizedImage в Angular отвечает за реализацию загрузки изображений, сохраняя высокую производительность. Она доступна в Angular v14.2.0. Директива помечена как standalone и может быть импортирована в standalone компоненты и модули.

Чтобы ее использовать, мы должны...

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

Я у мамы криптотрейдер

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

Или как за один вечер написать бота для автопокупки NFT.

P.S. Картинку для поста мне купил бот.

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

Заметка о Mapped Types и других полезных возможностях современного TypeScript

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


Привет, друзья!


Представляю вашему вниманию перевод 2 статей:


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

Как сократить код Canvas API в Svelte

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

Разработчик из консалтинговой компании в области разработки This Dot Labs рассказывает, как использовать canvas в Svelte и как превратить многословный API Canvas в краткий, более декларативный. Подробности — к старту нашего курса по фронтенду.

Узнать больше
Всего голосов 15: ↑13 и ↓2+11
Комментарии0

Ближайшие события

Humane API REST Protocol

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

Здравствуйте, меня зовут Дмитрий Карловский и я… как скульптор, отрезаю всё лишнее, чтобы оставить лишь самую мякотку, которая в наиболее лаконичной и практичной форме решает широкий круг задач. Вот лишь несколько спроектированных мною вещей:


  • MarkedText — стройный легковесный язык разметки текста (убийца MarkDown).
  • Tree — структурированный формат представления данных (убийца JSON и XML).

На этот же раз мы спроектируем удобный клиент-серверный API, призванный убрать кровавую пелену с глаз фронтендеров и стальные мозоли с пальцев бэкендеров..


HARP OData GraphQL
Architecture ✅REST ✅REST ❌RPC
Common uri query string compatible ⭕Back ✅Full
Single line query
Pseudo-static compatible ⭕Back ⭕Partial
Same model of request and response
File name compatible
Web Tools Friendly
Data filtering ⭕Unspec
Data sorting ⭕Unspec
Data slicing ⭕Unspec
Data aggregation ⭕Unspec
Deep fetch
Limited logic
Metadata query
Idempotent requests ✅Full ⭕Partial ❌Undef
Normalized response
Читать дальше →
Всего голосов 21: ↑10 и ↓11-1
Комментарии25

Team Lead Simulator — маленькая игра про большую ответственность

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

 TL;DR: игра по ссылке.

Наверняка многие из вас в детстве баловались игрушками вроде «ПРОГРАММИСТ 1.3» — эдакими текстовыми квестами, в которых игрок должен был прокачаться из начинающего программиста хакером (термина «сеньор» тогда, наверное, еще не было), собрать самый крутой комп, заработать больше всех денег. При этом весь геймплей заключался в нажатии нужных кнопок действий и менеджменте немногочисленных ресурсов. Я, с теплом вспоминая такие игры, а также текстовые квесты в Космических Рейнджерах 2, решил создать игру Teamlead Simulator, в которой...

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

Frontend архитектура MVP (Model-View-Presenter)

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

Frontend сейчас сильно разрастается, всё больше компаний переписывают свои старые решения на SPA. В компании которой я работаю это не обошло стороной.

По умолчанию был выбран фреймворк Nuxt.js, т.к Vue лучше React :))
В общем суть не в фреймворке, а с чего начинаем.

что там?
Всего голосов 8: ↑6 и ↓2+4
Комментарии14

Почему я люблю и ненавижу NestJS?

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

NestJS прекрасный фреймворк под Node.js, вдохновлённый серьёзными фреймворками Spring, ASP.NET Core, Simfony.

Так что же там внутри прекрасного и ужасного?

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

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

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

Вы уже все знаете, какая выразительная система типов в нашем синем друге, ведь об этом было написано немало статей. Думаю, втирать рассказывать об этом уже нет смысла, поэтому сразу перейдём к делу. Напишем-ка парсер JSON на типах в Typescript и инкремент числа.

Особо впечатлительным просьба смотреть через розовые очки.

Заглянуть внутрь
Всего голосов 15: ↑13 и ↓2+11
Комментарии22

Писать плохой код и гордиться. Зачем?

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

Чаще всего, когда возникает вопрос о том как улучшить навыки разработки, стандартный ответ: почитать про чистый код, выучить новые языки программирования, посмотреть проекты где реализованы лучшие практики и т.д. Но есть другой способ - пойти от обратного, и попробовать написать код максимально ужасно. Написав по-настоящему плохой код можно в конце концов понять, как писать хороший. Можно небрежно и на скорую руку сделать работу кое-как, но этого будет недостаточно. При условии, что уже есть представление о том, как писать хорошо, очень сложно сознательно писать плохо.

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

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

Создаём кастомный маркер в react-yandex-maps через iconLayout: template

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

Всем привет, не так давно ко мне в команду в ПРОФИ пришла задача реализации довольно комплексной в плане верстки и интерактивности карты, на которой бы отображались заказы, оставленные нашими клиентами. Мы решили использовать фреймворк, адаптирующий яндексовый SDK под реакт.

react-yandex-maps + доки к нему

UI маркеров почти полностью приходится настраивать по докам уже Яндекса, тк react-yandex-maps предоставляет нам только внешний интерфейс, позволяющий довольно удобно прокинуть параметры в объект маркера как пропсы.

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

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