home.social

#типизация_данных — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #типизация_данных, aggregated by home.social.

fetched live
  1. Часть I. Знакомство с UNO. Как синтаксическая типизация стала основой нового языка разметки

    Вспомните себя в те времена, когда вы только знакомились с информационными технологиями. Что вы чувствовали, начиная работать с XML, JSON, TOML, YAML и другими языками разметки? Лично мне поначалу было крайне сложно работать с HTML, особенно без подсветки. Позже пришлось разбираться с кавычками и скобками JSON, которые виделись мне сущим кошмаром. Впоследствии я осознал гениальность этих языков, но осадочек остался. Поэтому время от времени я возвращался к мысли о создании понятной для человека языка Универсальной Нотации Объектов. И получилось. Познакомьтесь, пожалуйста, это UNO — и ваше участие в его развитии будет весьма полезно. Как появился UNO Однажды мне потребовалось завести небольшие структурированные описания некоторых сущностей в обычных текстовых файликах. Предполагалось, что их будут заполнять и обычные люди, не знакомые с IT. Что ставило под сомнение выполнимость задачи. Сдаваться? Да ни в коем случае, вызов принят. Тем более, задача воспринималась как тренировка мышления. Что же это за UNO такой?

    habr.com/ru/articles/1075348/

    #uno #языки_разметки #форматы_данных #сериализация #json #xml #синтаксис #типизация_данных #разработка_парсера #опенсорс

  2. JSON_TABLE в PostgreSQL: превращаем JSON в реляционные данные одним запросом

    JSON в PostgreSQL давно перестал быть экзотикой, но работать с ним по-реляционному до сих пор приходилось не самым изящным способом: jsonb_array_elements , LATERAL , ручные касты, обработка ошибок на честном слове. В PostgreSQL 17 появился JSON_TABLE — стандартный SQL/JSON-механизм, который превращает JSON-документ в табличное представление одним выражением. В статье разберём, как он работает, чем отличается от привычного подхода, где действительно упрощает запросы и какие ограничения по производительности и применению у него остаются.

    habr.com/ru/companies/otus/art

    #postqresql #JSON_TABLE #jsonb #jsonpath #реляционные_данные #обработка_JSON #запросы_PostgreSQL #типизация_данных

  3. Zod: строгая валидация и удобная типизация. Опыт перехода

    Привет, Хабр! Меня зовут Сергей, я фронтенд-инженер в Банки.ру. В этой статье расскажу, как Zod помог нам перестать писать валидацию на уровне полей, подружился с React Hook Form и стал единым источником правды о структуре данных. К Zod мы пришли не сразу. Долгое время типы и валидация у нас жили в разных слоях приложения: TypeScript определял структуру данных во время разработки, а отдельные функции или библиотеки (вроде Yup) проверяли входящие значения в рантайме. Это классическая проблема: дублирование логики и рассинхрон. Типы в interface поменялись, а валидация осталась прежней (или наоборот). Мы пробовали Yup, но он казался громоздким в связке с TS: типы приходилось выводить вручную или мириться с тем, что схемы выглядят непрозрачно. В какой-то момент стало непонятно: зачем тащить отдельную библиотеку, если проще написать if (typeof x === 'string') ? С переходом на Zod всё стало значительно проще: одна схема одновременно является и валидатором, и источником типа данных.

    habr.com/ru/companies/banki/ar

    #zod #typescript #валидация_данных #runtime_валидация #react_hook_form #типизация_данных #frontend_разработка #валидация_форм #developer_experience #валидация

Share on Mastodon

Enter the server where you have an account.