Taiga UI — это огромная библиотека компонентов на Angular. Мы в Тинькофф разрабатывали ее внутри пару лет, прежде чем выпустили вторую, мажорную версию на публику. С тех пор прошел год, и я хочу подвести итоги и обозначить планы на 2022 год.
Рубрика «TypeScript» - 4
Taiga UI: год в Open Source
2022-02-04 в 8:58, admin, рубрики: angular, Cypress, firebase, github, library, open source, opensourse, taiga, taiga ui, TypeScript, Блог компании Tinkoff, Разработка веб-сайтовРазбираем задачу T9 (predictive text)
2022-01-01 в 10:11, admin, рубрики: cartesian, heap, javascript, T9, TypeScript, АлгоритмыПривет! На днях ко мне обратился ученик на одном из ресурсов, где я выступаю в качестве frontend-ментора, с просьбой разобрать одну задачу. Суть задачи состояла в следующем:
Найти все доступные комбинаций предложений, полученных методом T9 (predictive text)
Вводные данные:
Процедурная генерация бумажных снежинок
2021-12-01 в 7:30, admin, рубрики: canvas, javascript, TypeScript, Алгоритмы, Новый Год, Программирование, процедурная генерацияПривет! Скоро начинаются предпраздничные дни, а вместе с ними и украшение наших домов. По этому поводу я решил заняться процедурной генерацией лекала для вырезания из бумаги снежинок, и вот что у меня получилось.
Идея
Изначально мысль о подобном алгоритме пришла ко мне после объявления конкурсаЧитать полностью »
Стилизация однофайловых Vue компонентов
2021-11-06 в 14:09, admin, рубрики: css, javascript, TypeScript, vue, vue.js, vuejsЭта статья — перевод оригинальной статьи Lindsay Wardell "Styling Vue Single-File Components"
Также я веду телеграм канал “Frontend по-флотски”, где рассказываю про интересные вещи из мира разработки интерфейсов.
Вступление
OnPush — ваш новый Default
2021-10-04 в 9:55, admin, рубрики: angular, change detection, default, di, onpush, TypeScript, Блог компании Tinkoff, Разработка веб-сайтовВ Angular есть два режима change detection: Default и OnPush. В этой статье мы разберем, как можно спокойно использовать OnPush всегда без лишнего труда и почему стоит начать это делать.
Вспомним
Angular использует Zone.js для отслеживания изменений. Эта библиотека патчит множество нативных сущностей вроде addEventListener
, MutationObserver
, setTimeout
и других.
Когда такое событие происходит, выстреливает некий tickЧитать полностью »
Концепция контроллеров компонента в Angular: часть вторая
2021-09-20 в 9:24, admin, рубрики: angular, dependency injection, javascript, ng, TypeScript, ангуляр, Блог компании Tinkoff, компоненты, Разработка веб-сайтовНесколько месяцев назад я написал статью «Как мы делаем базовые компоненты в Taiga UI более гибкими: концепция контроллеров компонента в Angular». Я рассказал о том, как мы добавляем гибкости и избавляемся от дублирования кода с помощью DI. Пришло время продолжить статью.
Сегодня посмотрим на более хитрые трюки с такими директивами-контроллерами и попробуем сделать метаконтроллер, который, в свою очередь, состоит из других контроллеров. Все это будет происходить в рамках безграничных возможностей Dependency Injection в Angular.
Обзор фреймворка cdk8s для «программирования» Kubernetes-манифестов
2021-09-15 в 9:09, admin, рубрики: cdk8s, devops, kubernetes, TypeScript, yaml, Блог компании Флант, системное администрированиеKubernetes стал стандартом для запуска микросервисных (и не только) приложений. Компании разных размеров — от стартапов до enterprise — стараются проектировать свои приложения готовыми для запуска в Kubernetes-кластере.
Это — новый Хабр
2021-08-29 в 17:43, admin, рубрики: habra, ReactJS, TypeScript, клиент хабра, уже торт, я пиарюсьИ снова привет — год назад я написал на Хабр о своём клиенте для этой площадки, который я разрабатывал в качестве проекта для оттачивания навыков программирования. Теперь мой Хабр посетило больше 30 тысяч человек, а я за прошедший год полностью обновил дизайн, прикрутил авторизацию, увеличил скорость приложения и оптимизировал клиент для разных viewport'ов.
Попробовать новый клиент можно по этой ссылке — habra.vercel.app, а если интересно, как я такую вещь сделал и что планируется сделать в будущем, то прошу под кат.
Карманная книга по TypeScript. Часть 2. Типы на каждый день
2021-05-30 в 7:00, admin, рубрики: TypeScript, vds, vps, Блог компании Маклауд, книга по typescript, Лайфхаки для гиков, основы, Разработка веб-сайтов
Мы продолжаем серию публикаций адаптированного и дополненного перевода "Карманной книги по TypeScript
".
Другие части:
Примитивы: string
, number
и boolean
В JS
часто используется 3 примитива: string
, number
и boolean
. Каждый из них имеет соответствующий тип в TS
:
string
представляет строковые значения, например,'Hello World'
number
предназначен для чисел, например,42
.JS
не различает целые числа и числа с плавающей точкой (или запятой), поэтому не существует таких типов, какint
илиfloat
— толькоnumber
boolean
— предназначен для двух значений:true
иfalse
Обратите внимание: типы String
, Number
и Boolean
(начинающиеся с большой буквы) являются легальными и ссылаются на специальные встроенные типы, которые, однако, редко используются в коде. Для типов всегда следует использовать string
, number
или boolean
.
Массивы
Для определения типа массива [1, 2, 3]
можно использовать синтаксис number[]
; такой синтаксис подходит для любого типа (например, string[]
— это массив строк и т.д.). Также можно встретить Array<number>
, что означает тоже самое. Такой синтаксис, обычно, используется для определения общих типов или дженериков (generics).
Обратите внимание: [number]
— это другой тип, кортеж (tuple).
any
TS
предоставляет специальный тип any
, который может использоваться для отключения проверки типов:
let obj: any = { x: 0 }
// Ни одна из строк ниже не приведет к возникновению ошибки на этапе компиляции
// Использование `any` отключает проверку типов
// Использование `any` означает, что вы знакомы со средой выполнения кода лучше, чем `TS`
obj.foo()
obj()
obj.bar = 100
obj = 'hello'
const n: number = obj