Заметка о развитии проекта. Структура значительно переработана, добавлен новый функционал. Demo новой сборки:
Вопросы и ответы для собеседования на позицию frontend-разработчик. Часть 2
Всем привет! В этой статье (части) рассмотрим вопросы, связанные с великим и могучим TypeScript'ом, которые задают на собеседованиях. Если вы не читали прошлую статью, где описаны вопросы по JS, вот ссылочка. Пожалуйста, не заучивайте вопросы, это вредно для вашего здоровья!)
Фреймворк-независимое браузерное SPA
Учитывая насколько hype-driven является разработка софта в наше время, можно быть уверенным в том что через несколько лет будут существовать новые модные фреймворки для фронтенд разработки. В момент когда фреймворк на базе которого построено приложение выходит из моды — вы вынуждены либо поддерживать устаревшую (legacy) кодовую базу либо стартовать процесс перевода приложения на новый фреймворк.
Оба варианта сопряжены с ущербом для бизнеса. Поддержка устаревшей кодовой базы означает проблемы с наймом новых и мотивацией текущих разработчиков. Перевод приложения на новый фреймворк стоит времени (следственно — денег) но не несет никакой пользы для бизнеса.
Данная статья является примером построения SPA с использованием высокоуровневых принципов дизайна архитектуры. При этом конкретные библиотеки и фреймворки выбираются для удовлетворения ответственностей, определённых желаемой архитектурой.
Маппинг в C# на примере сериализатора для AMF
В процессе изучения статьи, Вы узнаете как реализовать собственные атрибуты и как их применять, познакомитесь с методами расширений типов и применением рефлексии на практике, узнаете об основах MSIL в целом и OpCodes в частности, а так же о том, как можно сериализовать объекты в AMF с помощью потоков.
Материалы продвинутого уровня по Питону
После прочтения Dive into Python или подобной ей и ознакомления с документацией возникает вопрос, а что читать дальше? Можно обратиться к списку книг на python.org. Там есть раздел Advanced Books, но в нем всего лишь 6 книг (седьмая не выходила), и только одну я бы назвал по-настоящему стоящей.
К счастью, у Питона есть очень подробная и качественная документация. Но даже в ней многие темы либо только поверхностно затронуты, либо их очень сложно найти (потому что документация большая, и если не знаешь, куда смотреть, не найдешь).
Ниже собраны сложные материлы про Питон, его устройство и возможности. Все на английском (грех, не знать технический английский). Про Dive into Python я слукавил. Большинство приведенных материалов требуют хорошее знание Питона и наличие опыта программирования на нем.
Типичный Swagger без гмо
Кто из нас не был одурманен сказками про свагер? Мол, добавь эту волшебную штуку — да заживешь! Но плата за магию — зеленое болото нотаций. А нельзя ли обойтись только типизацией самого php? (Спойлер: онжом)
Применение машинного обучения для определения содержимого колонки в таблице
Представим, что у нас есть таблица с неизвестными данными причем у которых почему-то пропали названия колонок. Наша задача — восстановить эти названия и в общих чертах понять, что находится в каждой колонке.
Существуют специализированные системы подготовки и анализа данных. Большинство из них отлично справляются с определением атомарного типа колонки, такого как string, integer, boolean. Однако, с задачей определения семантического типа — собственно, того, что лежит в колонке (имя человека, название организации, город и пр.), не всё так хорошо. При этом, успешное определение семантического типа может дать гораздо больше, чем простое знание атомарного типа. Имея на руках семантические типы колонок можно скорее разобраться в незнакомой базе данных, и, например, быстро выделить все колонки, относящиеся к одной сущности реального мира.
TypeScript в деталях. Часть 1
Привет, друзья!
Представляю вашему вниманию перевод нескольких статей из серии Mastering TypeScript, посвященных углубленному изучению TypeScript.
TypeScript в деталях. Часть 2
Привет, друзья!
Представляю вашему вниманию перевод еще нескольких статей из серии Mastering TypeScript, посвященных углубленному изучению TypeScript.
TypeScript в деталях. Часть 3
Привет, друзья!
Представляю вашему вниманию перевод еще нескольких статей из серии Mastering TypeScript, посвященных углубленному изучению TypeScript.
User Defined Type. Что это и как его использовать, часть 1
Картинка: Designed by vectorjuice / Freepik
Большинство пользователей VBA прекрасно знают такую штуку как Type
, он же User Defined Type (UDT). Кто-то, как я, использует его на повседневной основе. Кто-то, возможно, о нем слышал, но не мог понять как его применить.
Лично я помню, как не так давно смотрел на этот Type
и пытался понять зачем он мне нужен, ведь он просто хранит в себе переменные, которые можно с тем же успехом объявить в функции/процедуре или на уровне модуля?
В этой статье я хотел бы показать на примере как можно использовать Type
. Мы разберем некоторые его особенности, и возможно кто-нибудь из читателей найдет для себя один из примеров крайне интересным (а может быть даже будет использовать в своих проектах). Поехали!
Как сделать свой собственный менеджер состояния в React всего с одним хуком
Представьте задачу, что вам нужно изменять состояние однотипных компонентов, затрагивающих только один из них. Нечто очень похожее можно реализовать с использованием контекста React. Но в этом случае мы рискуем получить повторный рендер на всех потребителях контекста, что не очень хорошо, если таких потребителей на странице одновременно довольно много.
В этой заметке я постараюсь разобрать решение, которое позволяет изменять состояние только тех потребителей, которые необходимо изменить. Причем такое поведение будет обеспечено всего одним хуком.
Что такое ngrx/createFeature и как это может облегчить жизнь frontend-разработчику
Всем привет, в этой статье будет описана одна очень полезная вещь, способная упростить жизнь разработчику, которому приходилось, или приходится работать с библиотекой NgRx. В данное время очень популярная и востребованная вещь. В частности, я покажу как избавится от привычного описания селекторов, сокращения кода по части reducers и, уверен, результат удивит.
Пишем продвинутый планировщик с использованием React, Nest и NX. Часть 3: работа с задачами
Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. В прошлой части мы разобрали, как создать аутентификацию с помощью библиотеки Passport, а сегодня мы рассмотрим такие манипуляции, как добавление, редактирование, удаление и получение задач. Для начала давайте разберём HTTP и некоторые типы запросов.
User Defined Type. Что это и как его использовать, часть 2
Итак, в первой части мы затронули применение UDT в обычном модуле, и в комментариях справедливо заметили, что UDT сильно проигрывает классам. И да, действительно, если использовать класс как DTO (Data Transfer Object), он более функционален, чем UDT.
В этой заключительной части, я хотел бы рассказать о применении UDT в классах, кто такой Mathieu Guindon и причем тут резиновая уточка.
10 советов по TypeScript для продвинутых пользователей в манере русских мифов
«10 советов для продвинутого использования TypeScript: Путешествие по миру русской мифологии» — уникальное руководство, которое сливает воедино мир программирования и наследие русской культуры. В этой статье мы изучим TypeScript через призму десяти важных советов, каждый из которых связан с элементами русской мифологии – от волшебных зеркал до богатырских доспехов. Научитесь управлять асинхронностью, как птица в полете, или используйте интерфейсы для защиты вашего кода, как богатырский доспех защищает героя. Путешествие по миру TypeScript еще никогда не было таким захватывающим!