Этот пример показывает реализацию патеррна DDD в node.js. DDD (Documentation-Driven Development) - это разработка API через документацию. Смысл этого подхода заключается в следующем:
- Пишем документацию
- На основе документации пишем тесты
- Пишем код который выполняет тесты
Существуют основные правила DDD подхода:
- Если необходимо внести изменния в код, то сначала обновляем документацию, потом тесты и последним код
- Если функция не была документирована, то её не существует для пользователя
- Если функция документирована не правильно - она сломана для пользователя
- Версия документации и кода должна совпадать, т.к если кто-то использует старую версию ПО, он должен быть в состоянии найти правильную документацию.
Рассмотрим этот подход на примере создания API сервера на Node.js :
Пишем документацию. Для документирования, описания, создания, использования и визуализации сервисов API популярна OpenAPI спецификация. Быстро написать документацию можно с помощью swagger editor
127.0.0.1:8000/docs/ - swagger UI docs
Swagger api location