본문으로 이동
OpenAPI Generator 실전편: 효율적인 코드를 작성하는 법│인프콘2024
컨퍼런스

OpenAPI Generator 실전편: 효율적인 코드를 작성하는 법│인프콘2024

INFCON 2024 인프런 · YouTube

원문 보기

AI 핵심 요약

서버 API가 바뀔 때마다 프론트엔드에서 경로와 파라미터, 응답 타입을 수동으로 맞추는 번거로움을 줄이기 위해 OpenAPI 명세로 TypeScript SDK를 생성했다. 팀은 OpenAPI Generator의 TypeScript Fetch 생성기를 사용하고, 템플릿을 수정해 enum을 유니온 타입으로 바꾸는 등 프로젝트에 맞게 코드를 조정했다. 한글 스키마 이름, 템플릿 기능의 제약, 유니온 타입의 런타임 검증과 케이스 변환 문제를 겪으며 생성 결과를 직접 확인하고 필요한 옵션은 끄는 것이 중요하다고 설명했다. 생성된 라이브러리의 버전과 베타 배포를 자동화해 서버·프론트엔드 간 소통과 API 변경의 영향 범위 파악을 개선했으며, 새 프로젝트가 아니라면 모델 생성부터 단계적으로 도입할 것을 권했다.

  • OpenAPI 명세를 먼저 린터로 검증하면 문서 화면에서는 드러나지 않는 코드 생성 오류를 줄일 수 있다.
  • 생성기 옵션과 템플릿을 바꾸기 전에 선택한 생성기가 필요한 변수와 기능을 지원하는지 확인해야 한다.
  • 유니온 타입은 런타임 검증이나 스네이크 케이스 변환에서 예상치 못한 문제가 생길 수 있으므로 실제 생성 결과를 점검한다.
  • 생성 코드의 변경을 안정적으로 추적하려면 모델 이름 매핑과 정렬 규칙을 결정적으로 유지하는 것이 좋다.
  • 도입 부담이 크다면 API 모델 생성부터 시작하고, 서버 변경을 프론트엔드가 미리 확인할 수 있도록 베타 라이브러리 배포를 자동화할 수 있다.

소개

🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://inf.run/ifwWL 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 OpenAPI Generator 실전편: 효율적인 코드를 작성하는 법 - 이한 효율적인 코드를 작성하는 가장 좋은 방법은 의외로 코드를 작성하지 않는 것입니다. 하지만 우리는 HTTP API를 사용할 때마다 매번 직접 코드를 작성하고 있습니다. 서버에서 API를 개발하면, 프론트엔드에서는 각 경로(path), 파라미터, 응답을 일일이 타이핑해야 합니다. 서버의 API가 변경되면 프론트엔드에서도 변경 사항을 파악하고 수정해야 하므로 번거로움이 따릅니다. 이런 문제를 해결하기 위해 API 문서를 작성하고, 이를 기반으로 프론트엔드 코드를 자동으로 생성해주는 도구가 필요합니다. GraphQL, gRPC, tRPC 등 다양한 방법이 있지만, 많은 프로젝트에서 사용되는 HTTP API에 적합...

비슷한 학습 자료

컨퍼런스 우아콘 2024

[WOOWACON2024 세션 다시보기] 👉 세션 설명 ㅤ 잘 만들어진 디자인 시스템의 컴포넌트를 어떻게 하면 더 효과적으로 활용할 수 있을까요? 단순하고 정적인 문서에서 확장하여, 웹 기반 실시간 코드 편집기와 타입 힌트를 제공함으로써 개발자가 컴포넌트를 더 쉽게 사용할 수 있도록 지원합니다. 또한, 코드 스니펫 공유 기능을 통해 생산성을 높이는 과정에서 마주한 기술적 도전과 해결 과정을 상세히 다룹니다. ㅤ 👉 발표자 소개ㅤ 추용혁, 웹프런트엔드 개발자

프론트엔드 UI/UX

컨퍼런스 INFCON 2024

🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://u.inf.run/4cLhYyK 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 멀티패러다임 프로그래밍 언어의 시대: 객체지향과 함수형을 섞어야할 때! - 유인동 함수형, 객체지향 패러다임을 모두 제공하는 멀티패러다임 언어를 효율적으로 사용하는 법 - 타입스크립트로 Tagged Templates를 만들면서 멀티패러다임 개발 패턴을 소개합니다. #인프콘 #인프런 #인프콘2024 #인프콘2024다시보기

프로그래밍 언어

컨퍼런스 INFCON 2024

🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://u.inf.run/4cLhYyK 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 개발자 손 꼭 붙잡고 기획하기 - 송은택 개발자들의 의견을 더 많이 듣고 싶지만 어떻게 그들의 의견을 끌어내야할 지 모르겠는 PM, 디자이너 그리고 비즈니스와 제품 기획에 더 많이 관여하고 싶은 개발자들을 위해 준비한 내용입니다. 최근에 인프랩 ucc셀에서는 프로젝트 초기 기획 과정에서부터 엔지니어들도 함께 참여했습니다. 진행하는 프로젝트의 전체적인 맥락을 초기부터 공감하고, 디테일한 정책 설계까지 함께했는데요. 높은 몰입도를 보여주었습니다. 프로젝트를 진행할수록 엔지니어들은 초기 기획보다 더 참신한 방안을 계속해서 제시하고, 실행했습니다. 프로젝트를 진행하며 어느 순간 각자의 생각이 모두 일치하는 경험을 했습니다. 불필요한 커뮤니케이션은 자연스럽게 감소했고요. 어떤 ...

프로덕트 매니지먼트 애자일 · 협업

컨퍼런스 INFCON 2024

🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://u.inf.run/4cLhYyK 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 난생처음 만드는 Vite 플러그인 - 이은재 우리가 개발할 때 사용하는 Vite라는 도구는 어떻게 돌아갈까요? 우리가 작성하는 .jsx, 혹은 .vue 파일들은 어떤 과정을 거쳐 .js 파일로 변환되는 걸까요? 분명히 Vite 플러그인을 여러 개 설치하면 되기는 하는데, 이게 왜 어떻게 되는 걸까요? Vite 플러그인을 같이 작성해 보면서 Vite 플러그인에 대해 아무것도 모르셨던 분도 그 구조와 작동 흐름에 대해 이해할 수 있게 될 거예요. Vite 플러그인은 다양하게 쓰이는데요. 예를 들어 이를 잘 활용하면 굳이 런타임에 할 필요 없는 연산을 빌드 타임에 미리 함으로써 런타임을 빨라지게 할 수도 있습니다. 번들러는 우리에게 겁을 주는 대표적인 존재인데요. 이 발표를 통해...

프론트엔드 개발 도구

컨퍼런스 INFCON 2024

🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://inf.run/ifwWL 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 그래픽 엔진 포팅 사례로 배우는 웹어셈블리 웹 컴포넌트 개발부터 디버깅, 최적화까지 - 유진의 "웹 어셈블리"(이하 WASM)는 2017년에 공개된 새로운 웹 표준 기술이며, C/C++ 등의 저수준 언어를 웹 환경에서 빠르고 안전하게 구동할 수 있습니다. 저희 조직에서는 C++ 오픈소스를 WASM으로 전환하는 과정을 통해 복잡한 그래픽스 엔진을 웹으로 포팅하여 성공적으로 운용하고 있으며, C++ 네이티브 API로 구동되는 웹 표준 컴포넌트를 개발하여 사용자들이 손쉽게 이용할 수 있는 가볍고 빠른 Lottie 애니메이션 플레이어를 제공하고 있습니다. WASM은 트렌디하며 굉장히 중요한 기술입니다. 본 세션에서는 WASM이 기존 웹 개발의 영역에서 어떠한 부분을 대체하고 개선할 수...

웹 개발 프로그래밍 언어

책 조시 포널랫, 루카스 로젠스톡 예스24

OpenAPI와 스웨거를 활용한 실전 API 설계

책 조시 포널랫, 루카스 로젠스톡 예스24

스마트한 개발을 원하는 백엔드 개발자는 물론, 프로젝트 테크니컬 PM과 PO, 프론트엔드 개발자가 모두 함께 읽어야 할 필독서! 요구사항 분석부터 사용자 스토리 작성, 고급 비즈니스 모델 설계, API 설계와 문서화, 자동화, 테스트, API의 확장과 진화까지, API 사용자와 개발자가 애용할 웹 API 설계와 활용에 대한 완벽 가이드! 스프링 부트(Spring Boot) 웹서비스에 스웨거(Swagger)를 입혀 활용하는 방법을 알려주는 한국어판 특별부록도 수록!

웹 개발 백엔드