Date | Title | Description |
16.11.2024 | Лучшие практики TypeScript: Строгая типизация, гибкость и производительность | Я часто слышу от своих коллег, что TypeScript для них — как заноза в заднице. В каждом проекте они вынуждены писать полотна типов, TypeScript постоянно бьёт по рукам и не компилирует сборку, пока очередной метод не будет типизирован с голов... |
15.11.2024 | The Rise of AI Programmers: A Double-Edged Sword for Developers | The tech world is buzzing. AI is stepping into the coding arena. But is it a friend or foe? Recent tests by a prominent tech blogger, Dmitry Rozhkov, shed light on this complex relationship. He explored the capabilities of various AI progra... |
15.11.2024 | Релиз системы мониторинга с открытым исходным кодом Prometheus 3.0 | 14 ноября 2024 года состоялся релиз системы мониторинга серверов и приложений с открытым исходным кодом Prometheus 3.0. Исходный код решения написан на Go и TypeScript и опубликован на GitHub под лицензией Apache License 2.0. Предыдущая маж... |
14.11.2024 | Популярный техноблогер протестировал AI-программистов и пришел к неожиданным выводам | Заменят ли нейросети разработчиков? Дмитрий Рожков, менеджер команды Kubernetes-сервисов и создатель популярного YouTube-канала Senior Software Vlogger, провел масштабное тестирование ведущих AI-ассистентов для программирования. О своих нео... |
13.11.2024 | Почему мы выбрали gRPC вместо tRPC? | Исходный код, разобранный в этой статье, опубликован в этом репозитории Микросервисная архитектура, понятная ООП-разработчикам
Крупные приложения пишутся в Domain Driven Design. Частный случай этой архитектуры — Model View Controller в моно... |
13.11.2024 | TIOBE Programming Index News November 2024: Go Reaches Its Highest-Ever Ranking | Last month, Rust appeared to be the programming language on the rise in the TIOBE Programming Community Index. However, in November, Go has taken the spotlight. Meanwhile, the top three languages maintained their positions.
According to the... |
09.11.2024 | The Bookmark Manager Revolution: A Personal Journey into Tabme | In the digital age, information is both a treasure and a burden. We are bombarded with links, documents, and projects. For a manager overseeing multiple teams, this chaos can feel like a storm. Each project is a whirlwind of Google Docs, Co... |
09.11.2024 | Python Takes the Crown: A Shift in Programming Language Popularity | In the ever-evolving landscape of programming languages, a seismic shift has occurred. Python has dethroned JavaScript as the most popular programming language, according to GitHub's annual Octoverse report for 2024. This change is not just... |
09.11.2024 | Integrating External Authorization with NestJS and Angular: A Seamless Approach | In the world of web development, security is paramount. As applications grow, so does the need for robust authentication systems. This article explores the integration of an external authorization server, Authorizer.dev, into a full-stack a... |
08.11.2024 | Feature-Sliced Design (FSD): Основы и практические примеры архитектуры | Когда я только начинал свою карьеру фронтенд-разработчика, часто сталкивался с проблемами поддержки кода в проектах. Со временем я понял, что структура кода имеет решающее значение. Так я узнал о Feature-Sliced Design. Этот подход помогает ... |
08.11.2024 | Flutter Web. Часть 2 | Привет, меня зовут Максим, я Flutter-разработчик в компании Surf.
Мы продолжаем рассказывать про Flutter Web. И это вторая статья.Разработка собственных библиотек
Межъязыковое взаимодействие JS-Dart устроено достаточно просто. Но вписать бо... |
08.11.2024 | Как я психанул и написал свой менеджер закладок | Рождение проблемы:
...какое-то время назад. Я менеджер менеджеров, отвечаю за разные команды с разными фокусами. У каждой команды свои проекты. В каждом проекте есть несколько миро-досок, гугл-доков, доков в конфлюенсе, эпик в джире и еще г... |
06.11.2024 | Python сместил JavaScript с первого места популярных языков программирования по версии GitHub | GitHub опубликовал ежегодный отчёт Octoverse, в котором публикует данные использования платформы. Аналитики выяснили, что в 2024 году Python сместил JavaScript с первого места популярных языков программирования.
Результаты GitHub Octoverse ... |
03.11.2024 | Zod. Основные преимущества и неочевидные кейсы использования | Zod — это TypeScript библиотека для валидации и создания схем данных, позволяющая определять строгие типы на этапе разработки. Она значительно упрощает управление типами и обеспечивает безопасность данных в приложениях. В отличие от других ... |
22.10.2024 | 14 лучших практик автоматизации тестирования | Автоматизированное тестирование стало неотъемлемой частью разработки современного программного обеспечения, позволяя командам оптимизировать свои усилия по тестированию и быстрее поставлять высококачественное программное обеспечение.
В этой... |
17.10.2024 | The Rise of GoSSR: A New Era in Web Development | In the ever-evolving landscape of web development, a new player has emerged: GoSSR. This tool promises to bridge the gap between server-side rendering (SSR) and the Go programming language, offering developers a streamlined approach to buil... |
16.10.2024 | rustsn — Open Source проект генерации кода и взаимодействия с уже существующем через LLM | Я работал над созданием инструмента под названием rustsn, который позволяет генерировать, компилировать и тестировать код с использованием LLM (Large Language Models). Изначально идея заключалась в том, чтобы автоматизировать процесс написа... |
12.10.2024 | Server Side Rendering на Go | Жизнь – это вечная спираль, где всё идёт по кругу, но с каждым витком становится лучше. Ещё 20 лет назад я писал веб-приложения на Perl + Template Toolkit 2, генерируя HTML на стороне сервера. Время шло, и веб-разработка разделилась на две ... |
11.10.2024 | Когда нужен TypeScript: введение в мир надежного программирования | Поговорим про введение в TypeScript и то, как с помощью него мы можем сделать наше программирование и наш код на JavaScript более надежными и прогнозируемыми.
Меня зовут Александр Чернов, я фронтенд-разработчик в Альфе, веду подкаст «ТИНОИД... |
09.10.2024 | Посмотрим на never с разных сторон? | Введение
Данную заметку можно рассматривать как приложение к официальной документации. С одной стороны я решил, что стоит развернуть примеры из документации, а с другой показать роль never в выражениях типов. Последнее в документации отраже... |
30.09.2024 | Система типов и настройки | Предисловие
Написать заметку меня побудила статья Как устроена система типов typescript и собственный опыт.
Я обратил внимание, что не всегда понимал семантику "extends" в разных контекстах и влияние настроек языка.
В результате, ... |
25.09.2024 | Navigating the Complexities of Go: From 4-Chan Programming to gRPC Test Coverage | In the world of programming, simplicity often hides complexity. This is especially true in Go, a language that embraces concurrency and efficiency. Two recent articles delve into the intricacies of Go programming, exploring both the whimsic... |
23.09.2024 | Визуализация покрытия автотестами для gRPC сервисов | Вступление
В данной статье хочу рассказать про инструмент измерения покрытия gRPC сервисов tests-coverage-tool, написанный на языке Golang. Основная задача инструмента — автоматическое измерение покрытия требований на основе proto контракто... |
21.09.2024 | Типы или интерфейсы в TypeScript: что и когда использовать? | Меня зовут Дима. Я Frontend разработчик в компании fuse8. Работая с TypeScript, рано или поздно сталкиваешься с вопросом: что выбрать — типы или интерфейсы? В нашей команде мы активно используем TypeScript, уделяя особое внимание типам. В с... |
20.09.2024 | Vue 3 в деле: Как мы обновили большой внутренний сервис и что из этого вышло | Привет, Хабр!
Меня зовут Егор Прокопьев, и я фронтенд-разработчик в Ozon.
Третья версия полюбившегося многими фреймворка Vue вышла уже давно, и большинство использующих его произвели обновление до новой версии. Но всегда будут такие, как на... |
18.09.2024 | The Frontend Frontier: Navigating the Web's Visual Landscape | In the vast digital universe, the frontend is the face of the web. It’s what users see and interact with. But how does it all come together? Understanding the mechanics behind frontend development is like peeling an onion—layer by layer, it... |
18.09.2024 | Navigating the Transition: From Flow to TypeScript in Modern Development | In the fast-paced world of software development, change is the only constant. For many teams, the transition from Flow to TypeScript has become a pivotal journey. This shift is not just a technical upgrade; it’s a leap towards better type s... |
18.09.2024 | Как перевести приложение с Flow на TypeScript | Привет! Меня зовут Олег, я работаю в роли фронтенд-тимлида в команде разработки приложения — розничного кредитного конвейера Газпромбанка. Я подготовил гайд о том, как перейти с FlowJS на TypeScript. Какие проблемы были с Flow?
Сразу отмечу... |
15.09.2024 | Использование стандарта ES5 в Интернете | Стандарт Ecmascrpit
В 2017 году я написал статью, в которой показал веб-разработчикам, как они могут деплоить код ES6+ (он же ES2015) в продакшен, без необходимости транспилировать его в ES5. Этот метод был выходом для разработчиков веб-сай... |
14.09.2024 | Как работает фронтенд: от загрузки сайта до современных инструментов | Всем привет!
Я – Дарья Касьяненко, эксперт и преподаватель курсов по Python в Центре непрерывного образования факультета компьютерных наук НИУ ВШЭ.
Фронтенд — это то, что видит и с чем взаимодействует каждый пользователь интернета, но как о... |
13.09.2024 | Снова any. Заметка для новичка | Поводом для данной заметки стали несколько обстоятельств. Негативный опыт на одном проекте, и следующий спич в одном из докладов по ТС 2023 года:
"Так когда же использовать any? Никогда. Шучу, конечно. Если идет портирование или при ра... |
10.09.2024 | TypeScript 5.6: A Leap Forward in Type Safety and Iteration | On September 9, 2024, Microsoft unveiled TypeScript 5.6, a significant update to its popular programming language that builds on JavaScript. This release introduces new syntactic checks, iterator helper methods, and stricter type checks, en... |
10.09.2024 | «Нерешаемых задач не бывает»: история о том, как я пришла в разработку в 27 | Привет, Хабр! Меня зовут Татьяна и уже почти два года я занимаюсь разработкой фронтенда в МКБ. Это история о том, как я сменила профессию, какую роль сыграли дисциплина, четкое видение конечного результата и пара мотивирующих цитат.
Будучи ... |
10.09.2024 | Вышел TypeScript 5.6 | Эта статья — перевод оригинальной статьи «Announcing TypeScript 5.6».
Также я веду телеграм канал «Frontend по‑флотски», где рассказываю про интересные вещи из мира разработки интерфейсов.Вступление
Сегодня мы рады объявить о выходе TypeScr... |
08.09.2024 | Практика: фронтенд для начинающих | Это простое руководство для тех кто хочет развернуть локально проект и начать уже писать код.
Начнем с того, что у вас уже есть на чем разрабатывать, в кратце описал здесь рекомендации по выбору ПК. Скачать исходники описанные в статье.Сред... |
02.09.2024 | Как я сделал Notion 'у себя дома', есть фулл | Привет, хабровчане!
UPD: ссылка не прикрепилась, и я благополучно ушел на созвон. Вот она, со всем уважением, короткий видос в ютубе и в ВК (там еще обрабатывается)
Давно не писал, потому что для меня Хабр изначально был DIY-тусовкой, в хор... |
02.09.2024 | Настройка алиасов путей с помощью Node.js Subpath Imports в TypeScript проекте | Битва с алиасами!
TL;DR — используйте custom conditions.Введение
Subpath imports — это нативная опция в Node.js для задания внутренних алиасов путей в коде.
Например, длинный относительный путь:
import { foo } from '../../../utils.js';
можн... |
01.09.2024 | The Language Server Protocol: A Game Changer for Developers | In the vast ocean of programming languages and development environments, the Language Server Protocol (LSP) emerges as a lighthouse. It simplifies the chaotic landscape of coding tools, offering a standardized way for editors and language s... |
01.09.2024 | Bridging the Gap: Automating Testing with Playwright and Cucumber | In the fast-paced world of software development, the need for reliable testing frameworks is paramount. Enter Playwright and Cucumber, two powerful tools that, when combined, create a robust environment for automated testing. This article e... |
01.09.2024 | The Rise of New Programming Languages: A Shift from C++ | In the vast landscape of programming languages, C++ has long been a titan. Born in 1985, it has powered countless applications and systems. Yet, as the digital world evolves, whispers of change grow louder. New contenders are emerging, vyin... |
29.08.2024 | React и жизнь после сборки | Бывает что на руках есть лишь «бинарная» сборка сайта на модном фреймворке вроде Angular или React, в которой «срочно надо что‑то поправить». А исходного кода нет. Есть лишь вы, «бандл» с обфрусцированным JavaScript‑кодом внутри и горящие с... |
28.08.2024 | Playwright + Cucumber необычная связка. Практические примеры написания авто тестов | 1. Введение
Cucumber уже не молодой и вероятно не самый популярный инструмент для разработки, ориентированной на BDD, но он все еще используется некоторой популярностью так как фокусируется на определении и тестировании ожидаемого поведения... |
27.08.2024 | Обзор LSP: что это такое, зачем нужно, как работает | Представьте: у вас есть N редакторов или IDE и M языков программирования. Получается, что для их корректной работы вам необходимо поддерживать N*M плагинов. Но что, если таких редакторов и языков много?.. Решением может стать LSP — единый и... |
27.08.2024 | Аналитики IEEE Spectrum опубликовали рейтинг языков программирования за 2024 год | Аналитики Института инженеров электротехники и электроники (IEEE) опубликовали рейтинг популярности языков программирования за 2024 год. В пятёрке лидеров оказались Python, Java, JavaScript, C++ и TypeScript.
Самый активный рост показал Typ... |
23.08.2024 | Новый фронтенд-фреймворк? | Или чистый JavaScript с двумя вспомогательными функциями?
В этой статье я расскажу о том, как разрабатывать веб-компоненты с использованием библиотеки Fusor и преимуществах данного подхода.
Такие компоненты можно будет затем собирать в полн... |
22.08.2024 | Unleashing the Power of TypeScript Decorators and Angular's Isolated Modules | In the world of software development, efficiency is king. Developers are always on the lookout for tools and techniques that can streamline their workflow. Two recent advancements in the TypeScript ecosystem stand out: the use of decorators... |
21.08.2024 | Использование isolatedModules в Angular 18.2 | Angular теперь поддерживает TypeScript isolatedModules начиная с версии Angular 18.2. Благодаря этой поддержке мы сможем заметить увеличение производительности до 10% во времени сборки для production на своих проектах.
Разработчики всегда з... |
17.08.2024 | Сериализация сущностей с помощью декораторов на TypeScript | В процессе написания приложения с более-менее сложной бизнес-логикой на фронтенде возникает необходимость держать всю эту логику на слое предметной области в "толстых" моделях. Например, для работы с формой, которая отображает на ... |
13.08.2024 | Правильный инструмент для аналитики нагрузочного тестирования | Вступление
В данной статье хочу рассказать про сервис load-testing-hub, главная задача которого это сбор, агрегация, анализ и визуализация данных о нагрузочном тестировании
Расскажу о том, какие проблемы решает сервис, как он помогает оцени... |
10.08.2024 | Создание пустого Angular проекта и связь его с существующим сервером на NestJS | Предыдущая статья: Создание пустого проекта с помощью NestJS-mod
Создание приложения происходит через nx схематик для Angular.
Адрес сервера задается жестко в коде, в следующих постах адрес будет перенесен в переменные окружения.
Для запуск... |
10.08.2024 | Nestjs, Firebase, GCloud. Как быстро поднять API backend на TypeScript | Очень здорово, что вы решили открыть эту статью. Меня зовут Федор, я фуллстечу с конца 2021 года на постоянной основе. На всякий случай, прикреплю свой профиль на Github.
Этой небольшой статьей я хочу:
Дать старт серии туториалов на тему за... |
04.08.2024 | Navigating the Waters of Modern Web Development: A Dive into Feature-Sliced Design and FastAPI | In the ever-evolving landscape of web development, methodologies and frameworks emerge like waves, each promising to streamline processes and enhance productivity. Two such innovations are Feature-Sliced Design (FSD) and FastAPI. Each serve... |
02.08.2024 | Как мы приготовили Feature-Sliced Design в VK | Всем привет! Меня зовут Дмитрий, я Frontend-разработчик в VK. В этой статье расскажу немного о том, как мы знакомились с архитектурой FSD (Feature-Sliced Design), как мы рефакторили свой проект под неё. И, самое главное, что из этого вышло.... |
31.07.2024 | Navigating the Waters of TypeScript and React: A Guide to Props Typing | In the world of web development, React and TypeScript are like two sides of a coin. They complement each other, enhancing the development experience. But understanding how to type props in React can feel like navigating a maze. Let’s simpli... |
30.07.2024 | StackOverflow 2024: AI, зарплаты и любимые технологии. Что изменилось за год? | Stack Overflow опубликовали ежегодное исследование, в котором опросили 65,437 разработчиков. В исследование этого года вошли следующие темы: работа, технологии и инструменты, AI и комьюнити. В статье мы разберем получившиеся результаты и ср... |
30.07.2024 | TypeScript что нового 5.5. Перевод. Часть 1 | Предисловие
Всем привет, меня зовут Сергей, в этой статье я опубликую свой перевод официального анонса релиза TypeScript 5.5 версии, спасибо Dan Vanderkam за оригинал. Опыта в написании статей ранее не имел, переводы тоже не делал, решился ... |
30.07.2024 | Основы типизации props в React | Данная статья рассчитана на тех, кто только начинает писать свои React приложения на TypeScript, а также является памяткой для меня, ведь совсем недавно я путался в типизации children props.
Начну с того, что есть задачи и проекты, для реал... |
29.07.2024 | Оракул времени для блокчейна Hyperledger Fabric | В прошлой статье я рассказал, как использование серверов времени (NTP и NTS) решает проблему манипуляцией временем транзакции в блокчейне Hyperledger Fabric. Концепт-код был написан на Go. Поэтому он не применим для смарт-контрактов Hyperle... |
27.07.2024 | The Rise and Fall of Copilot: A Programmer's Journey | In the world of programming, tools come and go. Some shine brightly, promising to revolutionize the way we code. Others fade into obscurity, leaving behind a trail of frustration. One such tool is Copilot, an AI-powered code generator that ... |
24.07.2024 | Самопаркующийся авто за 500 строк кода | TLDR
В этой статье мы научим авто самостоятельно парковаться с помощью генетического алгоритма.
Мы создадим первое поколение авто с произвольными геномами, которое будет вести себя примерно так:
Примерно на сороковом поколении авто начнут п... |
24.07.2024 | Я перестал использовать Copilot после 2 месяцев. И вот почему | Copilot инструмент автогенерации кода, который наделал много шуму и которым пользуются программисты по всему миру. Я тоже включился в этот хайп, поигрался, попробовал переключить свой флоу работы на него и обломался. Минусы в итоге перевеси... |
19.07.2024 | Архитектура боевого корпоративного frontend-приложения | О неприступные стены удобной архитектуры растущего приложения сломано много копий. Это, в принципе, довольно предсказуемо. У всех нас свой бэкграунд, опыт разработки и способ работы с абстракциями. Что для одного чисто и понятно, для другог... |
10.07.2024 | Как мы OpenAPI в приложениях используем (Spring Boot, Typescript) | Хочу рассказать, как мы реализуем на практике контакты по спецификации OpenAPI, стараемся следовать подходу Contract First и в целом разрабатывать так, чтобы удобно было как разработчикам в команде, так и всем, кто использует наши сервисы. ... |
01.07.2024 | Как сделать приложение на NestJS, которое можно будет поддерживать спустя годы | Введение
Повидав десятки разных приложений на NestJS, да и на других фреймворках, я выяснил, что одна из главных сильных и слабых сторон JavaScript - свобода выбора путей решения задач.
Именно свобода и максимальная гибкость, которые данный... |
12.06.2024 | Избавьтесь от хаоса модальных окон с useModalControl (React) | Модальные окна - важная часть UI современных веб-приложений. Управление ими в React может вызвать трудности, в частности, когда нужно избежать одновременного появления нескольких окон. Для этого и существует хук useModalControl, который обл... |
11.06.2024 | Особый фронтенд на заводе: desktop first, тёмные помещения, промышленные интерфейсы и специфика производственных систем... | Привет, Хабр! Меня зовут Олег Рогов, я руковожу фронтенд-разработкой НЛМК. У нас команда на 70+ человек, в основном мы делаем интерфейсы для промышленных систем. Например, дизайнеры рисуют схему цеха или огромную таблицу сравнения для коксо... |
10.06.2024 | Java и C#. История одного вдохновения | Спиши, но не точь в точь
Disclamer: Автор не претендует на глубокие познания в Java или C#. Но очень хотелось разобраться в истории происхождения данного мема. Если заметите неточности, то пишите в комментариях, буду рад исправить.Небольшая... |
06.06.2024 | Основы TypeScript | Привет, Хаброжители!
TypeScript — популярная надстройка над JavaScript с поддержкой статической типизации, которая наверняка покажется знакомой программистам на C# или Java. TypeScript поможет вам сократить количество ошибок и повысить обще... |
04.06.2024 | Мой опыт создания frontend и backend приложений для моего стартапа | В прошлой части я рассказывал как появилась идея стартапа, как найти потребности пользователей, как спроектировать продуктовые требования. Также я рассказал как сделал проектирование и разработку дизайна. Напомню что я разрабатываю приложен... |
04.06.2024 | Устранение уязвимостей в системе безопасности с помощью искусственного интеллекта | Заглянули под капот Security Code Scanning Autofix от GitHub Advanced
В ноябре 2023 года GitHub объявил о запуске Code Scanning Autofix, который с помощью искусственного интеллекта предлагает исправления уязвимостей безопасности в кодовых б... |
03.06.2024 | await vs yield на примере Effection 3.0 и React | Интро
Одним из недостатков промисов является отмена, точнее ее отсутствие. Соответственно цепочка промисов или асинхронных функций будет выполняться до самого конца
async function getData() { const response = await fetch('/url'); const json... |
25.05.2024 | Как работать с багами для новичков | Все мы сталкиваемся с багами, фиксим их, и по новой тестируем наш код. Давайте попробуем сделать работу с багами чуть проще и прозрачнее. Начнем с самого очевидного, а именно IDE
Ищите ошибки с помощью вашей IDE – это не просто продвинутый ... |
22.05.2024 | HoundDog.ai Closes Seed Round, Launches AI-Powered Code Scanner to Identify Sensitive Data Exposures During Development While Slashing Compliance Costs | Implementing Data Security and Privacy Controls at the Code Level
HoundDog.ai protects code against common weakness enumeration categories linked to major data breaches and not addressed by other code scanners.
SAN FRANCISCO, May 22, 2024 /... |
22.05.2024 | @ts-expect-error иногда не лучше @ts-ignore | Всем уже давно понятно, что вместо директивы @ts-ignore следует использовать директиву @ts-expect-error. Пригождается она даже самым квалифицированным и педантичным разработчикам, например, чтобы временно заглушить ложную ошибку типов из кр... |
18.05.2024 | Supercat Store — новый менеджер состояний на JavaScript | Всем привет! На связи Supercat и я хочу рассказать о менеджере состояний Supercat Store.
Supercat Store - это JavaScript-библиотека, которая позволяет легко отслеживать и реагировать на изменения стейта приложения или его части.
Коротко о S... |
15.05.2024 | Демо: Поиск на GitHub с помощью Manticore Search | Вместо интро
Сегодня мы расскажем о нашем опыте создания своего поиска для репозиториев в GitHub, почти похожее на то, которое там и используется, но немного другое.
Для затравки — посмотрите, что у нас получилось на нашем репозитории → Дем... |
15.05.2024 | Платформа А/В-экспериментов: история про то, как делать сервисы лучше | Успешность любого продукта во многом зависит от того, насколько точно он отвечает запросам конечных пользователей. Но даже если продакт-менеджер обладает гигантским опытом и великолепным чувством вкуса, есть вероятность принять неверное реш... |
03.05.2024 | Руководство по Next.js. 3/3
Оптимизации
Настройка
Аутентификация
Производственный чеклист | Hello world!
Представляю вашему вниманию третью и заключительную часть обновленного руководства по Next.js.
Первая часть
Вторая часть
Руководство целиком
На мой взгляд, Next.js — это лучший на сегодняшний день инструмент для разработки веб-... |
26.04.2024 | TarantoolScript: статическая типизация в Lua-скриптах Tarantool | Введение
Если вам когда-нибудь доводилось писать скрипты для Тарантула, то вы наверняка сможете понять мою боль. Тарантул - удивительный инструмент, который позволяет не только хранить относительно большие объёмы данных и обеспечивать пораз... |
25.04.2024 | Как не утонуть в море событий аналитики | Крупный продукт со множеством сервисов и большим количеством задействованных команд — это всегда сложно. Причем, чем больше продукт, тем больше специалистов над ним работают. Следовательно, тем меньше зона ответственности каждого конкретног... |
18.04.2024 | Обобщенные фабрики тайпгардов в TypeScript | Привет, Хабр! Меня зовут Сергей Соловьев, я разрабатываю интерфейсы международных платежей в Тинькофф Бизнесе. Уверен, многие хотят писать надежный, поддерживаемый, но при этом лаконичный код. Как найти баланс?
TypeScript упрощает разработк... |
18.04.2024 | Как стать Frontend-разработчиком бесплатно? Программа обучения с нуля | Если вбить слово «фронтенд» в поисковую строку, можно найти огромное количество курсов по данному направлению. Проблема в том, что все курсы являются платными и, как правило, имеют ценник в несколько десятков тысяч рублей.
Чтобы разбавить з... |
16.04.2024 | А что, если бы функция get в Lodash выводила типы за вас в TypeScript | Всем привет! 👋
⚠️ Возрождаю статью, мною написанную в 2021 на Хабре. Из нового - подкорректировал определения на русском, добавил куски кода, чтобы было удобно копировать. Английский оригинал тут - https://blog.beraliv.dev/2021-03-26-typed-... |
16.04.2024 | Руководство по Next.js. 1/3
Введение
Роутинг | Hello world!
Представляю вашему вниманию первую часть обновленного руководства по Next.js.
На мой взгляд, Next.js — это лучший на сегодняшний день инструмент для разработки веб-приложений.
Предполагается, что вы хорошо знаете JavaScript и R... |
09.04.2024 | Разработчики выпустили Cally — библиотеку UI-компонентов календаря | Разработчики опубликовали на GitHub компактную библиотеку многофункциональных компонентов календаря. Пакет весит всего 9 КБ при сжатии в Gzip.
Плюсы Cally:
Полная функциональность. В календаре можно выбирать отдельные даты, недели и отображ... |
04.04.2024 | Автоматизируем сеть Яндекса с Милошем: сервис конфигураций оборудования | Задумывались ли вы о том, как изменить конфигурацию сразу на нескольких сетевых устройствах? Что, если нужно сделать это на всей сети с сотнями и тысячами единиц оборудования? А что, если приходится делать это каждый месяц на железе от пяти... |
03.04.2024 | Typescript Generics | Javascript - крутой язык со своими преимуществами и недостатками. И одно из его свойств - это динамическая типизация, которая одновременно может быть как преимуществом, так и недостатком. Очень много холиварных тредов на этот счет, но по мн... |
03.04.2024 | Топ-3 причины, почему вы должны использовать Copilot | В отличие от традиционных инструментов завершения кода, которые полагаются на предопределённые шаблоны и ключевые слова, GitHub Copilot идёт на шаг дальше, понимая цель кода и генерируя контекстуально подходящие предложения. Он основан на о... |
29.03.2024 | Использование возможностей Angular. Часть 2 | Utility Types или почему я не люблю enum
Добрый день всем читателям и писателям. Меня опять зовут Юрик и я опять сочиняю про Angular. В этой части разговора будет больше про TS, но расскажу зачем вообще использовать utility types.
Итак, на ... |
24.03.2024 | Кастомные декораторы в Angular приложениях | Предисловие
Я занимаюсь разработкой web-приложений на Angular уже более 6-ти лет и в силу своего не малого опыта я постепенно отошел от кодинга типичных фичей, таких как сверстать формочку и отправить данные на бэк, к более глобальным и важ... |
22.03.2024 | Воплощённые типы | Всем привет!
Хочу представить вам подход к определению типов, позволяющий сделать ваш код чище и понятнее. Я называю это «Воплощённые типы» («Embodied types»).
Воплощённый тип - тип, для которого определена переменная с одинаковым именем и ... |
27.02.2024 | Сравнение utility types библиотек или тайпскрипт на стероидах | Краткое введение о typescript
За несколько лет typesctipt стал мастхэв в современной веб-разработке (по меньшей мере во фронтэнд). Язык типов, работающих поверх javascript, являющегося языком со слабой динамической типизацией со всеми вытек... |
11.01.2024 | Вопросы и ответы для собеседования на позицию frontend-разработчик. Часть 2 | Всем привет! В этой статье (части) рассмотрим вопросы, связанные с великим и могучим TypeScript'ом, которые задают на собеседованиях. Если вы не читали прошлую статью, где описаны вопросы по JS, вот ссылочка. Пожалуйста, не заучивайте вопро... |
10.01.2024 | Типизация: Как TypeScript помог мне найти Тайного Санту | Декабрь в офисе не проходит без традиции тайного Санты. Мой вишлист остался пустым, но подарок, который я получила, удивил своей точностью. А вместе с ним пришло загадочное послание. Как новичку в компании, мне было трудно с первого взгляда... |
09.01.2024 | Как я решал Advent of Typescript, и что я понял | Возможно вы слышали про Advent of Code — ежегодное соревнование по решению задач на рождественскую тему. Начиная с 1 декабря, вплоть до католического рождества, каждый день выкладывается новая задача. С каждым днем сложность задач возрастае... |
26.12.2023 | Когда не нужны библиотеки для работы с часовыми поясами | Итак, настал тот moment, когда вам нужно работать с датами в разных часовых поясах, а ваш архитектор/начальник не разрешает использовать Moment Timezone или Luxon, потому что они увеличат размер вашей сборки, а для вашего проекта важно, что... |
14.12.2023 | Роадмэп по современному фронтенду от KTS | Привет! Меня зовут Фёдор, я фронтенд-тимлид в KTS и преподаватель школы Metaclass.
Перед одним из потоков курса «Начинающий React-разработчик» мы провели вебинар, на котором рассказали, что из себя представляет современный фронтенд и какие ... |
10.12.2023 | Typescript: принцип подстановки функций | По аналогии с принципом Liskov Substitution Principle, Принцип Подстановки Лисков" data-abbr="LSP">LSP из ООП, в Typescript, при передаче функций как объектов стоит придерживаться следующего принципа:
Принимая колб ...... |
04.12.2023 | О JavaScript и WebAssembly | Hello world!
На днях я баловался с WebAssembly и получил довольно неожиданные результаты, которыми и хочу с вами поделиться в этой небольшой заметке.
Хорошо, если вы знаете JS/Node.js и хотя бы слышали о WASM и Rust.
Я использовал следующие... |
03.12.2023 | TypeScript: infer и conditional types. Продвинутый TS на примерах | Привет, Хабр! Меня зовут Андрей, я Frontend разработчик. О статье
Продолжаем погружаться в продвинутый TypeScript. В этой статье рассмотрим conditional types, посмотрим на реализацию с примерами, узнаем какую роль играют ключевые слова exte... |