Swagger는 RestAPI를 나타내기 위한 프레임워크이다.
Swagger (2.0버전) - 툴
OpenAPI (3.0버전, 리눅스팀이 새로 만듦) - 규격사항을 나타냄
Bottom Up
코드를 먼저 작성하여 API를 설계한다. 작업 속도가 빠르고 이미 만들어진 프로젝트에 적용하기 좋음. 단, 코드를 보고 문서를 작성하기 때문에 놓치는 부분이나 큰 관점에서 API 설계를 작성하기 힘들다. swagger-jsodc / swagger-ui-express을 활용하면 편리하다. (전 직장에서 도입하려고 했던 방식)
Top Down
API 설계를 먼저하고 문서를 작성한다. 전체적인 설계에 관점에서 좋으며 협업에 유리하다. 시간이 조금 더 오래 걸린다. codegen을 활용하거나 express-openapi-validator를 활용하는 방법이 있다.