REST API 개발 중인 규격서 생성, 코드 생성(Python 편)

4241 단어 OpenAPIPython

컨텐트

  • REST API 개발의 효율을 높이기 위해 도구를 사용하여 규격서 생성, 코드 생성, 스타일 검사, 자동 포맷을 할 것이라고 생각합니다.
  • 파이톤을 대상으로 내가 편리하다고 생각하는 도구를 정리한다.
  • 개발 편집은 VS코드입니다.

  • REST API 연결

  • yaml 형식으로 OpenAPI 규격을 작성하여 REST API의 인터페이스 규격서와 코드를 생성한다.
  • 인터페이스 규격서
  • 서버 측 보존(컨트롤러, HTTP 요청, 응답 모델)
  • 전면 측면의 REST API용 클라이언트 SDK
  • 서버 보존을 간편하게 생성할 수 있습니다.
  • 파이톤으로 Flash 코드를 생성한 후 OpenAPI 규격을 바탕으로 HTTP 요청을 제어하는 Flash 응용 프로그램(connexion이라는 프로그램 라이브러리로 패키지)을 사용하는 컨트롤러를 사용할 수 있다.
  • OpenAPI 규격을 바탕으로 HTTP 요청 검증을 하기 때문에 자체적으로 검증 코드를 개발할 필요가 없다.
  • 또한 클라이언트의 경우 서버 측이 완성되기 전의 보류 서버로 사용할 수 있다.
  • 클라이언트 SDK도 편리합니다.직접 제작의 끝점과 요구보다 간단하다.
  • 에 사용된 도구는 다음과 같습니다.
  • 용도
    도구 이름
    설명
    링크
    OpenAPI 사양 편집
    VScode+OpenAPI Editor(확장 기능)
    VScode에서 OpenAPI 사양을 씁니다.왼쪽에는 경로와 모드 디렉터리가 있어 편리합니다.
    https://marketplace.visualstudio.com/items?itemName=42Crunch.vscode-openapi
    OpenAPI 사양 참조
    VScode+Swagger Viewer(확장 기능)
    OpenAPI 사양을 문서로 참조할 수 있습니다.
    https://marketplace.visualstudio.com/items?itemName=Arjun.swagger-viewer
    OpenAPI 사양 확인
    openapi-generator
    CLI는 OpenAPI 사양을 검증할 수 있습니다.OpenAPI 편집기에서 감지할 수 없는 오류도 감지할 수 있습니다.다만, 감지되지 않는 오류도 있다.예를 들어 모드에서 Required로 설정된 항목은 사실상 속성 정의가 없습니다.이런 것들은 서버 메모리 코드를 만들어서 시작하려고 하면 오류가 발생하기 때문에 주의할 수 있다.
    https://github.com/OpenAPITools/openapi-generator
    코드 생성
    openapi-generator
    OpenAPI 사양(yaml 파일)을 통해 코드(서버 예약, 클라이언트 SDK)를 생성할 수 있습니다.
    동상
    문서 생성
    openapi-genrator
    REST API 인터페이스 규격서를 HTML로 생성합니다.
    동상

    파이썬 연결

  • 개발된 코드에 따라 클래스맵, 클래스 규격서를 생성한다.
  • 클래스 규격서를 생성하는 전제로docstring을 써야 한다.
  • 코드 개발에서도 Linter(스타일 체크)와 Formitter(자동 포맷)가 편리하다.
  • 에 사용된 도구는 다음과 같습니다.
  • 용도
    도구 이름
    설명
    링크
    클래스맵 생성
    Pyreverse
    클래스맵 생성
    https://pypi.org/project/pylint/
    유규격서의 생성
    Sphinx
    생성류 규격서
    https://www.sphinx-doc.org/ja/master/ Sphinx 설치 단계
    docstring의 기재 보조
    VSCode + Python Docstring Generator
    코드를 통해 docstring의 초기 형태를 생성할 수 있습니다.예를 들어 방법의 경우 요약 줄, 매개 변수의 이름, 유형, 반환 값의 유형은 코드에 의해 생성되기 때문에 스스로 설명을 쓰면 된다.
    https://marketplace.visualstudio.com/items?itemName=njpwerner.autodocstring
    파이썬 스타일 확인
    VSCode + flake8
    pep8에 맞는지 확인한 다음 결과를 표시합니다.
    https://pypi.org/project/flake8/
    Python의 자동 형식
    VSCode + autopep8
    어느 정도는pep8에 맞게 코드를 자동으로 수정할 수 있다.예를 들어, 클래스 정의에서 두 행의 빈 줄을 열거나 매개변수에 반각 공백을 입력합니다.
    https://pypi.org/project/autopep8/

    DB 연결

  • 코드 개발은 DB를 많이 사용합니다.
  • GUI에는 ER 맵, 테이블 정의, DDL을 생성할 수 있는 편리한 도구가 있습니다.
  • Eclipse 플러그인의 ERMaster
  • GUI로 ER 그림을 작성하면 Excel의 표 규격서, DDL 문구를 생성할 수 있다.
  • 개념 데이터 모델은 Power와draw이다.io로 쓰고 논리 데이터 모델에서 ERMaster로 쓰는 것이 좋습니다.용도
    도구 이름
    설명
    링크
    ER 맵, 테이블 정의, DDL 생성
    ERMaster
    Eclipse 플러그인에서 GUI는 ER 맵, 테이블 정의 및 DDL을 생성할 수 있습니다.
    http://ermaster.sourceforge.net/index_ja.html

    좋은 웹페이지 즐겨찾기