Артём Арутюнян — Контрактное программирование как средство, а не цель

preview_player
Показать описание
Ближайшая конференция — HolyJS 2024 Autumn, 7 ноября (online), 14–15 ноября (Санкт-Петербург + трансляция).
— —
. . Отличное подспорье для надежного исполнения программы — контрактное программирование, т.к. этот подход гарантирует корректность входящих и исходящих данных. Артем расскажет что это, какие проблемы решает, а какие создает, и как с помощью контрактного программирования сильно упростить разработку. В частности статическую типизацию, тесты, документацию. Мы разберем существующие библиотеки, реализованные в JS, и немного погрузимся в собственную разработку Артема — rtcad.
Рекомендации по теме
Комментарии
Автор

Отличный доклад! Пошел от простого к сложному. Все ясно и интересно, автору спасибо

TraderOleg
Автор

Отличный доклад, многим его рекомендую

aazolotyh
Автор

На 21:43, если кому интересно как это пофиксить то - as const, превращает string type в literal value.

sleepstream
Автор

Интересно узнать, есть ли у автора какие-то результаты через год использования этих идей? Поверхностно кажется, что здесь не столько контракты, сколько попытка добавить более строгую типизацию. Контракты это скорее когда придумали некий api, и фронтедеры с бекендерами работают по этому описанию api независимо друг от друга, а потом отключаются моки и в продакшене все работает.

epoxyworld
Автор

По моему, это не TS не врубается в проверки, а автор доклада в то что TS должен делать.
Когда слушаешь англоязычных докладчиков, там все по полочкам, есть структура доклада. Как минимум есть обзор проблематики, есть объяснение основных идей (часто с историей возникновения), есть подтемы, есть погружение в каждую из них, есть примеры заранее подготовленные.
А когда слушаешь наших, там трешак. Я пришел послушать про контрактное программирование, мне смотреть на то как афтор сначала пишет чушь, а потом с этой чушью разбирается. Еще постоянные прыжки с темы на тему, сложно уследить за мыслью.
Почему у наших докладчиков всё так плохо?

EshkinKot