0
0

Django REST Framework「実践入門」Part1

Posted at

はじめに

Django REST Frameworkについて何回かに分けて説明していきます。

まずは、part1ということでDjango REST Framework(以降DRF)とは何か?
また、Rest APIとは何か?について説明します。

Django REST Framework(DRF)

DRFは、REST APIバックエンド構築に特化したフレームワークです。

DRFの強みは、バックエンド構築に必要な機能がほとんどそろっていることで、デフォルトで認証などの機能を実装することが出来ます。

また「Browsable API」というブラウザ上でAPIをたたくことが出来る機能も備わっています。

またDjangoと大きな構造上の違いはないので、Djangoを触ったことがある人なら、すぐにAPI開発ができます。

そもそも、なぜDjangoではなくDRFを使うのかというと、React、Next.jsなどのモダンなフロントエンドフレームワークを使用できるからです。また、このようにフロントエンド、バックエンドを分けることで、効率的な開発にもつながります。

何より、Pythonのライブラリを使えることがPythonでバックエンド開発を行う何よりの強みでしょう。

REST API

RESTという言葉を聞くことはよくあると思います。まさにREST APIとはRESTに沿って開発されたAPIのことです。

REST APIに似た用語で、RESTful APIがありますが、

REST APIはRESTに沿って開発されたAPI(完全には満たしていない部分もある

それに対して、RESTful API完全にRESTの原則を満たしているAPIです

RESTとは

REST、RESTうるさいですが、
RESTとは、以下の原則を満たすアーキテクチャスタイルです。

  • クライアント・サーバ
    クライアントとサーバが通信する
  • ステートレス
    クライアントのアプリケーション状態を管理しない
  • キャッシュ
    リソースの鮮度に基づいて、リソースをクライアント側で使いまわす
  • 統一インタフェース
    URIで指示したリソースに対する操作を、統一した限定的なインタフェースで行う
  • 階層化システム
    システムをいくつかの階層に分離する
  • コードオンデマンド
    プログラムコードをサーバからダウンロードし、クライアント側でそれを実行する

結局RESTとは、上の原則に沿った開発をしましょうねということです。

最後に

DRFとはREST APIをPythonで簡単に開発できる便利なフレームワークです。
次からは実際にDRFのコンポーネントを触りながら説明していきます。

参考文献

この記事は以下の情報を参考にして執筆しました。

  • Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESSプラスシリーズ)
  • 現場で使える Django REST Framework の教科書
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0