💻 Контрактное программирование с примерами на JavaScript и Node.js

preview_player
Показать описание
Рекомендации по теме
Комментарии
Автор

Чемпионат по бесконтрактному программированию объявляется открытым!

LovCatch
Автор

Спасибо. Жду когда будете production-ready, хотелось бы попробовать пописать на вашем стеке. Еще в мире TS есть генерации openapi клиентов с проверкой в compile time. Еще можно строить монорепозиторий и использовать в нескольких проектах одни и те же контракты TS. Еще можно выносить тайпинги в отдельный npm пакет.

СергейПограничный-тэ
Автор

Всё таки не до конца понял разницу между протоколом, контрактом и интерфейсом

В словаре HowProgrammingWorks нашел только определение интерфейса, но и в нем также упоминается контракт

Есть какой-то дополнительный материал на эту тему?

hazelvk
Автор

Почему контракт compare описан так что method вернёт Promise<boolean>, а вот returns просто boolean?

kirillskomarovskiy
Автор

дякую . проте набаго краще було б показати якись простий код який цей контракт вичитує і зним працює. ато виглядає як працювати з віндовс реестром щоб іконку поміняти і типу програмування під віндовс :)

MrSjcris
Автор

В npm полно либ для валидации любых полей, объектов и тд. Не совсем понял какое именно преимущество есть у метахрии в этом плане?

hotpottato
Автор

Спасибо за лекцию и ваш труд в целом!
Похоже на spec из языка программирования clojure, там тоже можно гинерить тесты на основе spec. Кстати, что думаете о языке clojure и о лиспах в частности?

Ignaciox
Автор

а как называется этот файловый менеджер ?

tvoyamuha
Автор

Я может что-то не понимаю, но декларативная валидация - это какая-то полумера. Вот я, например, хочу в определенном поле получить не просто строку, а строку в заданном формате, пусть это будет один из формат для дат, а сама дата при этом должна быть не меньше заданной даты - без императивщины тут не обойтись, если только не придумать свой dsl(и это не выглядит чем-то лучшим, чем процедурно пройтись по строке)

KopoLPedov
Автор

Конечно же в JS есть контрактное программирование! Просто напиши его сам!

АнатолийПетрович-ви
Автор

Показали как описывать контракты... спасибо) А как это все валидировать? Хотелось бы увидеть код валидирущий все выше написанное + последовательность как это все работает в связке. Или хотябы название либы, которая делает подобную валидацию.

DimitarRad
Автор

чего только не придумают, лишь бы не использовать тс, декораторы, и нормальный фреймворк с либами из коробки (я про nest). И как с этим фреймворком дружит ide? Или надо каждый раз помнить/подсматривать, что там за поля, у аргументов.

Георгий-бол
join shbcf.ru