Upgrade to Pro — share decks privately, control downloads, hide ads and more …

오늘도 여러분의 API 는 안녕하신가요? - 김정규(인프콘2023)

Len Kim
August 17, 2023

오늘도 여러분의 API 는 안녕하신가요? - 김정규(인프콘2023)

Len Kim

August 17, 2023
Tweet

More Decks by Len Kim

Other Decks in Programming

Transcript

  1. API First Design 정의 API First Design로 문제 해결하기 API

    First Design 더욱 잘 활용하기 아하! 이런 오해가 있었구나 결론 오늘 이야기 할 내용은? 1 2 Part 1 : API 에 대한 과거 개발 경험과 문제점 API로부터 고통받는 순간들 실제 경험했던 API 문제점 Part 2 : API FIRST DESIGN 이야기하기 1 2 3 4 5
  2. API로부터 고통받는 순간들 1 😳 API 문서 와 실제 동작

    의 불일치로 당황스러웠던 경험 있으신가요?
  3. API로부터 고통받는 순간들 1 💦 Backend 개발자에게 전달받은 API 명세

    가 적혀 있는 대로 동작하지 않아 당황스러웠던 적
  4. API로부터 고통받는 순간들 1 🙄 또는, 개발 일정에 쫓겨 API

    문서 를 언제쯤 받을 수 있는지 물어본 적 있지 않으셨나요?
  5. API로부터 고통받는 순간들 1 어떻게 API 설계를 해야 할까? 어떤

    형식으로 만들어야 하지? 참고할 만한 템플릿 어디 없나? 😵
  6. API 코드 수정 이후에 매번 변경된 API 명세를 API 문서에

    정확히 반영하고 계신가요? API로부터 고통받는 순간들 1
  7. 2 API 설계 문서 작성 API 문서에 따라 코드 구현

    문서화 도구 이용 API 문서 전달 실제 경험했던 API 문제점 서비스 개발의 첫 단계에서..
  8. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 API 설계 문서 작성 서비스 개발의 첫 단계에서..
  9. 2 API 설계 문서 작성 문서화 도구 이용 API 문서

    전달 실제 경험했던 API 문제점 API 문서에 따라 코드 구현 서비스 개발의 첫 단계에서..
  10. 2 API 설계 문서 작성 API 문서에 따라 코드 구현

    문서화 도구 이용 API 문서 전달 실제 경험했던 API 문제점 서비스 개발의 첫 단계에서.. 코드 기반의 API 문서화
  11. 2 API 설계 문서 작성 API 문서에 따라 코드 구현

    문서화 도구 이용 API 문서 전달 실제 경험했던 API 문제점 서비스 개발의 첫 단계에서..
  12. 2 실제 경험했던 API 문제점 API 설계 문서 작성 문서화

    도구 이용 API 문서 전달 API 문서에 따라 코드 구현 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때..
  13. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 문서화 도구 이용 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때..
  14. 2 API 설계 문서 작성 API 문서에 따라 코드 구현

    문서화 도구 이용 API 문서 전달 실제 경험했던 API 문제점 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때..
  15. 2 실제 경험했던 API 문제점 1 일관성 없는 API 설계

    문서로 일관성 있게 관리하기 위한 관리 비용 증가
  16. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 API 설계 문서 작성 서비스 개발의 첫 단계에서..
  17. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 API 설계 문서 작성 서비스 개발의 첫 단계에서.. 일관성 없는 API 설계 문서
  18. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 API 설계 문서 작성 서비스 개발의 첫 단계에서.. 만드는 사람에 따라 API 설계 문서를 작성하는 기준이 다르다.
  19. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 API 설계 문서 작성 서비스 개발의 첫 단계에서.. 만드는 사람에 따라 API 설계 문서를 작성하는 기준이 다르다. 일관성이 없는 API 설계 문서
  20. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 API 설계 문서 작성 서비스 개발의 첫 단계에서.. 만드는 사람에 따라 API 설계 문서를 작성하는 기준이 다르다. 일관성이 없는 API 설계 문서 하나의 API 설계 문서를 일관성 있게 관리하기 위한 관리 비용 증가
  21. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 서비스 개발의 첫 단계에서.. 총 2번에 걸쳐 작성되는 API 문서 API 설계 문서 작성
  22. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 서비스 개발의 첫 단계에서.. 총 2번에 걸쳐 작성되는 API 문서 API 설계 문서 작성 밑그림을 그리는 API 설계 문서 Frontend 에 전달되는 최종 API 문서
  23. 2 API 문서에 따라 코드 구현 문서화 도구 이용 API

    문서 전달 실제 경험했던 API 문제점 서비스 개발의 첫 단계에서.. 총 2번에 걸쳐 작성되는 API 문서 API 설계 문서 작성 밑그림을 그리는 API 설계 문서 Frontend 에 전달되는 최종 API 문서 무엇이 정확한 API 문서인가?
  24. 2 실제 경험했던 API 문제점 API 설계 문서 작성 문서화

    도구 이용 API 문서 전달 API 문서에 따라 코드 구현 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때..
  25. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. 문서화 도구 이용
  26. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. 그러나, 이 단계를 SKIP 한 뒤, Frontend 에게 구두나 텍스트를 통해 직접 전달 문서화 도구 이용
  27. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. 최종 변경사항이 API 문서에 반영되지 않음 그러나, 이 단계를 SKIP 한 뒤, Frontend 에게 구두나 텍스트를 통해 직접 전달 문서화 도구 이용
  28. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. 그러나, 이 단계를 SKIP 한 뒤, Frontend 에게 구두나 텍스트를 통해 직접 전달 최종 변경사항이 API 문서에 반영되지 않음 시간이 지나 Frontend 개발자와 불필요한 의사소통을 하는 경우 발생 문서화 도구 이용
  29. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. API 변경사항을 API 명세보다 코드 구현 작업에 중점 문서화 도구 이용
  30. 2 실제 경험했던 API 문제점 API 설계 문서 작성 API

    문서에 따라 코드 구현 API 문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. 시간이 지나 Frontend 개발자와 불필요한 의사소통을 하는 경우 발생 문서화 도구 이용 API 변경사항을 API 명세보다 코드 구현 작업에 중점
  31. 이외, 추후 발견되는 문제 2 실제 경험했던 API 문제점 API

    변경사항을 API 명세보다 코드 구현 작업에 중점
  32. 이외, 추후 발견되는 문제 v1/users/register api/users/create api/users/user 2 실제 경험했던

    API 문제점 API 변경사항을 API 명세보다 코드 구현 작업에 중점
  33. API 변경사항을 API 명세보다 코드 구현 작업에 중점 이외, 추후

    발견되는 문제 v1/users/register api/users/create api/users/user 서로 다른 형태의 API path지만 모두 같은 기능 2 실제 경험했던 API 문제점
  34. API 변경사항을 API 명세보다 코드 구현 작업에 중점 이외, 추후

    발견되는 문제 v1/users/register api/users/create api/users/user 서로 다른 형태의 API path지만 모두 같은 기능 이해관계자들 간 불필요한 의사소통 증가 2 실제 경험했던 API 문제점
  35. API 변경사항을 API 명세보다 코드 구현 작업에 중점 이외, 추후

    발견되는 문제 2 실제 경험했던 API 문제점
  36. 용어 Backend 사용된 단어 Frontend 사용된 단어 유저정보 UserDetail UserInfo

    콘텐츠 증진 ContentBoosting ContentPromotion 이벤트 / 혜택 콘텐츠 AffiliateContent EventContent 이외, 추후 발견되는 문제 API 변경사항을 API 명세보다 코드 구현 작업에 중점 2 실제 경험했던 API 문제점
  37. 용어 Backend 사용된 단어 Frontend 사용된 단어 유저정보 UserDetail UserInfo

    콘텐츠 증진 ContentBoosting ContentPromotion 이벤트 / 혜택 콘텐츠 AffiliateContent EventContent 이외, 추후 발견되는 문제 의미하는 바는 같지만, 코드에 사용되는 용어가 다른 문제점 발생 2 실제 경험했던 API 문제점 API 변경사항을 API 명세보다 코드 구현 작업에 중점
  38. 용어 Backend 사용된 단어 Frontend 사용된 단어 유저정보 UserDetail UserInfo

    콘텐츠 증진 ContentBoosting ContentPromotion 이벤트 / 혜택 콘텐츠 AffiliateContent EventContent 이외, 추후 발견되는 문제 의미하는 바는 같지만, 코드에 사용되는 용어가 다른 문제점 발생 이해관계자들 간 용어에 대한 문맥을 맞추기 위한 불필요한 의사소통이 발생 2 실제 경험했던 API 문제점 API 변경사항을 API 명세보다 코드 구현 작업에 중점
  39. API 을 대하는 자세 API 는 부수적인 것, 덜 중요한

    것 으로 생각 2 실제 경험했던 API 문제점
  40. API 을 대하는 자세 API 는 부수적인 것, 덜 중요한

    것 으로 생각 단순히 데이터를 전달하기 위한 수단 2 실제 경험했던 API 문제점
  41. GET /apis/orders id : 1L, amount : 10000 API 기계들의

    대화방법 API FIRST DESIGN 정의하기 1
  42. GET /apis/orders id : 1L, amount : 10000 계약서 Contract

    API 기계들의 대화방법 API FIRST DESIGN 정의하기 1
  43. GET /apis/orders id : 1L, amount : 10000 paths: /apis/order:

    get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 계약서 Contract API FIRST DESIGN 정의하기 1 api order contract.yaml
  44. GET /apis/orders id : 1L, amount : 10000 paths: /apis/order:

    get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 계약서 Contract API FIRST DESIGN 정의하기 1 OPEN API Specification OAS
  45. The OpenAPI Specification OAS defines a standard, language agnostic interface

    to HTTP APIs which allows both humans and computers to discover and understand the capabilities of the service without access to source code, documentation, or through network traffic inspection. When properly defined, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. : 사람과 컴퓨터가 소스 코드, 문서에 액세스하거나 네트워크 트래픽 검사를 통하지 않고도 서비스의 기능을 발견하고 이해할 수 있도록 하는 언어에 구애 받지 않는 HTTP API 표준 인터페이스 OPEN API Specification 이란? API FIRST DESIGN 정의하기 1
  46. Info servers paths tags components security externalDocs 메타 데이터 제목,

    버전, 라이센스 URL 경로, 메서드, 요청, 응답 API 서버 접근 정보 등 재사용 가능한 객체 스키마, 요청, 응답, 파라미터 등 API 그룹화 태깅 API FIRST DESIGN 정의하기 1 OPEN API Specification 생김새 api order contract.yaml
  47. Open API 명세 기반의 API 계약서를 우선순위 1순위 로 고려하여

    협업하여 설계하는 것 API FIRST DESIGN 정의하기 1
  48. GET /apis/orders id : 1L, amount : 10000 paths: /apis/order:

    get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 계약서 Contract API 명세가 작성된 계약서를 통해 문제점 해결 가능 API FIRST DESIGN 로 문제 해결하기 2 api order contract.yaml
  49. Open API 명세서 설계 반복적 설계 토론 공유 Open API

    도구 활용 구현 API 문서 전달 API FIRST DESIGN 로 문제 해결하기 2 API FIRST DESIGN 개발 프로세스
  50. Open API 명세서 설계 반복적 설계 토론 공유 Open API

    도구 활용 구현 API 문서 전달 API FIRST DESIGN 로 문제 해결하기 2 Backend 개발자 Frontend 개발자 paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L API FIRST DESIGN 개발 프로세스 api order contract.yaml
  51. Open API 명세서 설계 반복적 설계 토론 공유 Open API

    도구 활용 구현 API 문서 전달 API FIRST DESIGN 로 문제 해결하기 2 Backend 개발자 Frontend 개발자 이해관계자 토론 및 공유 paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L API FIRST DESIGN 개발 프로세스 api order contract.yaml
  52. Open API 명세서 설계 반복적 설계 토론 공유 Open API

    도구 활용 구현 API 문서 전달 API FIRST DESIGN 로 문제 해결하기 2 🚜 Code Generators 📄 API 문서 💻 Mock Server Server implementations Client implementations 🏠 API Gateway API FIRST DESIGN 개발 프로세스
  53. API 설계 문서 작성 API 문서에 따라 코드 구현 문서화

    도구 이용 API 문서 전달 기존의 API 개발 프로세스 API FIRST DESIGN 로 문제 해결하기 2
  54. Open API 명세서 설계 반복적 설계 토론 공유 Open API

    도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / 이해 관계자에게 전달 API FIRST DESIGN 로 문제 해결하기 2 CODE FIRST 에서 API FIRST 로 변경 계약서 Contract 계약서 Contract API FIRST DESIGN 개발 프로세스
  55. 1 일관성 없는 API 설계 문서로 일관성 있게 관리하기 위한

    관리 비용 증가 API FIRST DESIGN 로 문제 해결하기 2
  56. API 문서에 따라 코드 구현 문서화 도구 이용 API 문서

    전달 API 설계 문서 작성 서비스 개발의 첫 단계에서.. 일관성 없는 API 설계 문서 API FIRST DESIGN 로 문제 해결하기 2
  57. 이해 관계자에게 전달 계약서 Contract Open API 명세서 설계 반복적

    설계 토론 공유 Open API 도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / API / Microservice API FIRST DESIGN 로 문제 해결하기 2 코드 FIRST 에서 API FIRST 로 변경 계약서 Contract API 계약서 Path Method RequestBody ResponseSchema paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 서비스 개발의 첫 단계에서..
  58. 이해 관계자에게 전달 계약서 Contract Open API 명세서 설계 반복적

    설계 토론 공유 Open API 도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / API / Microservice 배포 API FIRST DESIGN 로 문제 해결하기 2 코드 FIRST 에서 API FIRST 로 변경 계약서 Contract API 계약서 Path Method RequestBody ResponseSchema paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 서비스 개발의 첫 단계에서.. 일관된 품질의 API 문서 유지
  59. API 문서에 따라 코드 구현 문서화 도구 이용 API 문서

    전달 서비스 개발의 첫 단계에서.. 총 2번에 걸쳐 작성되는 API 문서 API 설계 문서 작성 API FIRST DESIGN 로 문제 해결하기 2 밑그림을 그리는 API 설계 문서 Frontend 에 전달되는 최종 API 문서 무엇이 정확한 API 문서인가?
  60. 이해 관계자에게 전달 계약서 Contract Open API 명세서 설계 반복적

    설계 토론 공유 Open API 도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / API FIRST DESIGN 로 문제 해결하기 2 코드 FIRST 에서 API FIRST 로 변경 계약서 Contract paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 서비스 개발의 첫 단계에서..
  61. Open API 명세서 설계 반복적 설계 토론 공유 Open API

    도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / API FIRST DESIGN 로 문제 해결하기 2 코드 FIRST 에서 API FIRST 로 변경 paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 서비스 개발의 첫 단계에서.. 하나의 API 문서 유지 이해 관계자에게 전달 계약서 Contract 계약서 Contract
  62. API 설계 문서 작성 API 문서에 따라 코드 구현 API

    문서 전달 비즈니스 요구사항 변경으로, 기존 API 를 변경해야 할 때.. 그러나, 이 단계를 SKIP 한 뒤, Frontend 에게 구두나 텍스트를 통해 직접 전달 문서화 도구 이용 API FIRST DESIGN 로 문제 해결하기 2
  63. 이해 관계자에게 전달 계약서 Contract Open API 명세서 설계 반복적

    설계 토론 공유 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / API FIRST DESIGN 로 문제 해결하기 2 코드 FIRST 에서 API FIRST 로 변경 계약서 Contract paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 서비스 개발의 첫 단계에서.. 변경사항 발생 OPEN API 명세서 변경 Open API 도구 활용 구현
  64. 이해 관계자에게 전달 계약서 Contract Open API 명세서 설계 반복적

    설계 토론 공유 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / API FIRST DESIGN 로 문제 해결하기 2 코드 FIRST 에서 API FIRST 로 변경 계약서 Contract paths: /apis/order: get: … responses: 200 : description: 데이터 전송 성공 content: application/json: example: id: 1L amount: 1000L 서비스 개발의 첫 단계에서.. 변경사항 발생 OPEN API 명세서 변경 API 명세서 자체 변경으로 문서 업데이트 불필요 Open API 도구 활용 구현
  65. API 변경사항을 API 명세보다 코드 구현 작업에 중점 이외, 추후

    발견되는 문제 API FIRST DESIGN 로 문제 해결하기 2
  66. 이외, 추후 발견되는 문제 API 명세서 설계에 중점 메세지 타입,

    문서 형식, 용어 등 일원화 API FIRST DESIGN 로 문제 해결하기 2 API 변경사항을 API 명세보다 코드 구현 작업에 중점
  67. 이외, 추후 발견되는 문제 API 명세서 설계에 중점 이해관계자들 간에

    원활한 의사소통 가능 메세지 타입, 문서 형식, 용어 등 일원화 API FIRST DESIGN 로 문제 해결하기 2 API 변경사항을 API 명세보다 코드 구현 작업에 중점
  68. 대표적인 활용 사례 3 API FIRST DESIGN 더욱 잘 활용하기

    API 변경에 대한 버전 히스토리 관리를 할 수 있다. 공통의 API 문서를 통해 함께 협업할 수 있다. 이해관계자들과 함께 풍성한 내용이 담긴 API 을 만들 수 있다. 1 2 3
  69. 3 API FIRST DESIGN 더욱 잘 활용하기 1. API 변경에

    대한 히스토리 관리를 할 수 있다. 기존 API 설계 방식에서 변경 발생시 히스토리 관리가 어려움
  70. 3 1. API 변경에 대한 히스토리 관리를 할 수 있다.

    해당 Version 필드 값을 변경 후 버전 관리 시스템을 통해 관리 API FIRST DESIGN 더욱 잘 활용하기
  71. 3 API FIRST DESIGN 더욱 잘 활용하기 2. 공통 API

    문서를 통해 함께 협업할 수 있다. 타 서비스 개발자 타 서비스 개발자 타 서비스 개발자 서비스 개발자 API 문서 파일 .word, .excel .html 코드 기반의 API 문서
  72. 3 API FIRST DESIGN 더욱 잘 활용하기 2. 공통 API

    문서를 통해 함께 협업할 수 있다. 타 서비스 개발자 타 서비스 개발자 타 서비스 개발자 서비스 개발자 API 문서 파일 .word, .excel .html 코드 기반의 API 문서 코드와 동기화된 API 문서를 보장할 수 없다.
  73. 3 API FIRST DESIGN 더욱 잘 활용하기 2. 공통 API

    문서를 통해 함께 협업할 수 있다. 타 서비스 개발자 타 서비스 개발자 타 서비스 개발자 서비스 개발자 Open API Tool 사용 API 명세 확립화를 통한 원활한 공유 One source, Multi Using Open API 명세 기반의 API 계약서
  74. 단일 진실 공급원 SSOT: Single Source Of Truth 서로 다른

    팀, 서로 다른 시스템, 하나의 진실 3 API FIRST DESIGN 더욱 잘 활용하기 2. 공통 API 문서를 통해 함께 협업할 수 있다. Open API 명세 기반의 API 계약서
  75. 3 3. 이해관계자들과 함께 풍성한 내용이 담긴 API를 만들 수

    있다. Backend 개발팀 Frontend 개발팀 이해관계자 API FIRST DESIGN 더욱 잘 활용하기 OPEN API 명세서 기반의 API 설계 리뷰
  76. 3 3. 이해관계자들과 함께 풍성한 내용이 담긴 API를 만들 수

    있다. Backend 개발팀 Frontend 개발팀 이해관계자 OPEN API 명세서 기반의 API 설계 리뷰 ü 어떤 용어를 사용해서 표현할 것인가? ü URL이 내포하고 있는 의미가 적절한가? ü 적절한 요청/응답의 데이터를 가지고 있는가? API FIRST DESIGN 더욱 잘 활용하기
  77. 3 3. 이해관계자들과 함께 풍성한 내용이 담긴 API를 만들 수

    있다. Backend 개발팀 Frontend 개발팀 이해관계자 빠른 API 설계 피드백과 함께 서비스를 만들어 간다 라는 공감대 형성 ü 어떤 용어를 사용해서 표현할 것인가? ü URL이 내포하고 있는 의미가 적절한가? ü 적절한 요청/응답의 데이터를 가지고 있는가? API FIRST DESIGN 더욱 잘 활용하기 OPEN API 명세서 기반의 API 설계 리뷰
  78. 1 2 3 오해했던 부분 4 아하! 이런 오해가 있었구나

    Swagger 는 API 문서화 도구이다. API First Design 은 API 을 한번에 결정하는 것이다. Open API Tools 중 Codegen 은 만들어진 템플릿만 사용할 수 있다.
  79. 1. Swagger는 API문서화 도구이다. 4 아하! 이런 오해가 있었구나 API

    Document API Design API Development API Testing API Mocking
  80. The Swagger API project was created in 2011 by Tony

    Tam, technical co founder of the dictionary site Wordnik. During the development of Wordnik s products, the need for automation of API documentation and client SDK generation became a major source of frustration. Tam designed a simple JSON representation of the API … : 자동화된 API 문서화와 클라이언트 SDK 생성을 필요성으로 Tony Tam 은 API 를 간단한 JSON Yaml 으로 표현을 설계했다. 4 아하! 이런 오해가 있었구나 1. Swagger는 API문서화 도구이다.
  81. 1. Swagger는 API문서화 도구이다. 4 아하! 이런 오해가 있었구나 Swagger에서

    의도한 API 문서화는 Open API 명세서 기반의 API 문서 를 의미
  82. 2. API First Design 은 API 을 한번에 결정하는 것이다.

    4 아하! 이런 오해가 있었구나 Open API 명세서 설계 반복적 설계 토론 공유 Open API 도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / Open API 명세 활용 이해 관계자에게 전달 계약서 Contract 계약서 Contract
  83. 4 아하! 이런 오해가 있었구나 Open API 명세서 설계 반복적

    설계 토론 공유 Open API 도구 활용 구현 API 문서 전달 개발자 이해관계자 토론 공유 Implements API / Open API 명세 활용 이해 관계자에게 전달 계약서 Contract 계약서 Contract 2. API First Design 은 API 을 한번에 결정하는 것이다.
  84. 3. Open API Tools 중 Codegen 은 주어진 템플릿만 사용할

    수 있다. 4 아하! 이런 오해가 있었구나
  85. 3. Open API Tools 중 Codegen 은 주어진 템플릿만 사용할

    수 있다. 4 아하! 이런 오해가 있었구나 docker run rm \ v PWD:/local openapitools/openapi generator cli generate \ i API 계약서 .yaml \ g spring \ o /local/out/go
  86. 3. Open API Tools 중 Codegen 은 주어진 템플릿만 사용할

    수 있다. 4 아하! 이런 오해가 있었구나
  87. 3. Open API Tools 중 Codegen 은 주어진 템플릿만 사용할

    수 있다. 4 아하! 이런 오해가 있었구나 codgen.mustache spring.java contract.yaml API 계약서 Contract
  88. 3. Open API Tools 중 Codegen 은 주어진 템플릿만 사용할

    수 있다. 4 아하! 이런 오해가 있었구나 https://github.com/LenKIM/openapi code gen
  89. 5 결론 앞서 언급했던 API 문제를 공감하고 있다면 새롭게 시작하는

    서비스에는 API First Design을 통해 API 문제를 해결할 수 있다.