
Мы вообще не знаем инструменты, которыми пользуемся
Показательный пример с zod. Чаще всего, его как используют: как typescript, только в рантайме.
Но дьявол кроется в деталях, как всегда. Они упускают множество мощных возможностей 👇🏼
✔️ В Zod можно определять глобальные сообщения об ошибках, и не писать одно и то же по 100 раз
✔️ Можно сделать трансформации после парсинга и декларативно превращать всякие ISO строки в Date, парсить в Bitint и так далее
✔️ В Zod есть оператор pipe, который позволяет произвести повторную валидацию поля после трансформации. И, оказывается, что zod оочень классно работает с вложенными JSON строками и подобными вложенными сериализаторами
✔️ В Zod есть discriminated union, благодаря которым ошибки в схемах становятся мега информативными. Ещё и работает это быстрее
✔️ Функцию в refine можно сделать тайп гвардом и уточнить типы в процессе валидации
✔️ И много-много всего ещё
И вот, кажется, простой инструмент. А на самом деле имеет мощное такое второе дно. Которое если открыть, можно стать более продуктивным. И код сделать более чистым и декларативным.
Это только один zod. А теперь посмотрите на ваш список зависимостей
И да, сейчас я сосредоточился на знании инструментов, чтобы вы обратили внимание на мой курс по zod на платформе.
Но есть же ещё:
- Концепции, которые реализуют инструменты
- Алгоритмы и структуры данных
- Принципы программирования
- Архитектура
- Абстрактное мышление
И много-много тем, которые супер важны, но игнорируются стандартной системой образования.
В общем, за вот этой странной картой скрывается очень глубокая и далеко идущая идея.
Если получится, будет охуенно. Если нет – как всегда повеселюсь на славу)
Показательный пример с zod. Чаще всего, его как используют: как typescript, только в рантайме.
Но дьявол кроется в деталях, как всегда. Они упускают множество мощных возможностей 👇🏼
✔️ В Zod можно определять глобальные сообщения об ошибках, и не писать одно и то же по 100 раз
✔️ Можно сделать трансформации после парсинга и декларативно превращать всякие ISO строки в Date, парсить в Bitint и так далее
✔️ В Zod есть оператор pipe, который позволяет произвести повторную валидацию поля после трансформации. И, оказывается, что zod оочень классно работает с вложенными JSON строками и подобными вложенными сериализаторами
✔️ В Zod есть discriminated union, благодаря которым ошибки в схемах становятся мега информативными. Ещё и работает это быстрее
✔️ Функцию в refine можно сделать тайп гвардом и уточнить типы в процессе валидации
✔️ И много-много всего ещё
И вот, кажется, простой инструмент. А на самом деле имеет мощное такое второе дно. Которое если открыть, можно стать более продуктивным. И код сделать более чистым и декларативным.
Это только один zod. А теперь посмотрите на ваш список зависимостей
И да, сейчас я сосредоточился на знании инструментов, чтобы вы обратили внимание на мой курс по zod на платформе.
Но есть же ещё:
- Концепции, которые реализуют инструменты
- Алгоритмы и структуры данных
- Принципы программирования
- Архитектура
- Абстрактное мышление
И много-много тем, которые супер важны, но игнорируются стандартной системой образования.
В общем, за вот этой странной картой скрывается очень глубокая и далеко идущая идея.
Если получится, будет охуенно. Если нет – как всегда повеселюсь на славу)