Web Development

2025 年 Django の現状

Read this post in other languages:

ようこそ!この記事では、先日公開された Django 開発者アンケートの注目すべき内容と主なポイントをご紹介します。 今回で 4 年目を迎える毎年恒例の Django Software FoundationPyCharm との協働プロジェクトでは、世界の 4,600 人を超える Django 開発者から回答が集まりました。 Python とウェブにより幅広く携わっている方は、活気に満ちた Django エコシステムの現状から多くのことを学べます。

Will Vincent と申します。私は長年にわたって Django コミュニティに貢献しており、PyCharm のデベロッパーアドボケイトを務めています。 私は過去 6 年にわたって Jeff Triplett と共に週刊 Django News ニュースレターを執筆し、Carlton Gibson と共に Django Chat ポッドキャストの司会を務めてきました。どちらの現場でも議論すべき話題、パッケージ、開発者が尽きることはないように感じています。

Django は今年 20 周年記念を迎えており、成熟したフレームワークとして順調に定着しています(ありがとうございます)。 下位互換性が失われるような変更はほとんどありません。新しい機能バージョン(5.2、6.0、6.1 など)が 8 か月ごとにリリースされ、毎週数十件ものプルリクエストがコアにマージされ、グローバルコミュニティがこれまで以上に強力になっている状況であっても、それは変わりません。

この活発なエコシステムは、Django の保守担当者、レビュー担当者、そしてメンターたちの継続的な取り組みのおかげで成り立っています。 PyCharm は毎年 Django Software Foundation と連携し、Django の年次資金調達キャンペーンを通じてこの取り組みを支援しています。

2025 年 11 月 11 日までの期間限定で PyCharm Professional の購入金額が 30% オフになり、その期間の JetBrains のすべての収益が DSF に寄付されます。これにより、リリースのたびに Django の強化に従事している関係者全員に直接資金が提供されることになります。 このキャンペーンによって過去 9 年間に $330,000 以上の資金が調達され、Django の継続的な成長と安定が支えられています。

PyCharm Pro を 30% オフで購入して Django を支援する

Django で構築し、 その未来も構築しましょう。

アンケートの結果を深掘りする前に、もう 1 つ注目すべきポイントがあります。Django 自体は無数の開発者と世界有数の企業が使用しているにもかかわらず、その実際の使用状況はほとんど把握されていません。 Django の公式ウェブサイトでは意図的に解析ツールによる追跡が行われておらず、明らかに計測値としては不十分な PyPI Stats 以外にダウンロード数に関する具体的なメトリクスはありません。

このアンケートは最良とは言わないまでも、コミュニティが Django の現状を把握するための主な手段となりました。 ここ数年間では、アンケートの結果に基づいて Redis キャッシュバックエンドが Django 4.0 で正式にサポートされるようになりました。 比較的最近の話題ですが、MongoDB の使用実績が堅調であることが分かり、今年最初の公式の django-mongodb-backend パッケージのリリースが優先的に行われました。

つまり、このアンケートは非常に重要であり、実際の使用に関するトレンドに加えて、より幅広い Django コミュニティの今後の機能要望を把握するのに最適な手段となっています。

2025 年の Django の主なトレンド

今年の Django アンケートの結果から、注目すべきトレンドと、場合によっては驚くようなトレンドを見てみましょう。

2025 年の Django の主なトレンド

Note: 2025 年 Django の現状
4,600 人以上の Django 開発者からのアンケート回答に基づきます

HTMX と Alpine.js は Django と一緒に使用されている JavaScript フレームワークの中で最も急成長しています

38% の開発者が AI を使用して Django を学習しています
Django 開発者の 4 人に 3 人は 3 年以上の業務コーディング経験があります

Django REST Framework は最も一般的なサードパーティ製 Django パッケージです75% が最新バージョンの Django を使用しています

76% が PostgreSQL をデータベースバックエンドに使用しています
63% が型ヒントを使用した経験があります
20% は使用していません
17% は使用する予定があります

最もよく使用されているテストソリューションは pytest です

来年試せる行動に移せるアイデア
– HTMX を試す
– AI を試す
– 最新バージョンの Django に更新する
– Django システムの最新情報を得る

Django 開発者アンケートは Django Software Foundation と JetBrains PyCharm の協働プロジェクトです。

HTMX + Alpine.js が優勢

React と jQuery が依然として Django と最もよく一緒に使用される二大 JavaScript フレームワークとなっている一方、HTMX と Alpine.js の勢いが増し続けています。 これらのテクノロジーでは、サーバーサイドでレンダリングされるテンプレートに対話的な要素を組み込む手法が好まれています。

20 年前に Django が初めてリリースされた頃、シングルページアプリケーション(SPA)はまれな存在でした。 ほとんどのウェブサイトはサーバーサイドでテンプレートがレンダリングされるハイパーメディアの手法を利用していましたが、2006 年に jQuery が登場したことで、JavaScript 開発者にならなくても JavaScript で対話的に処理できるようになりました。

それから 10 年後、Django を含む多くのウェブフレームワークが React、Angular、Vue などの JavaScript 専用フロントエンドが利用する RESTful API バックエンドに活用されるようになりました。

しかし、2021 年の Django アンケート以降は再びサーバーサイドテンプレートが使用される傾向に戻っています。 HTMX の使用率は 2021 年の 5% から 24% に伸び、Alpine.js は 3% から 14% に伸びています。 それと同時に React と jQuery の使用率は減少し続けており、2021 年にそれぞれ 37% だった使用率が React では 32%、jQuery では 26% になっています。 この期間には 3 番目に最もよく使用されていた JavaScript フレームワークである Vue の使用率も 28% から 17% に減少していることも興味深い点です。

Django と最もよく一緒に使用されている JavaScript フレームワーク

Note: どの JavaScript フレームワークを使用していますか?

今後リリースされる Django 6.0 には template partials の正式なサポートが追加されるため、今後は HTMX と Alpine.js の組み合わせが開発者にとって現実的な選択肢としての地位を固めることになりそうです。 この新機能のリリースは、多数のサードパーティパッケージが利用可能であるという Djangoエコシステムの強みの 1 つを証明するものでもあります。 当初は Carlton Gibson の django-template-partials として始まったものが今年の Google Summer of Code プログラムで Farhan Ali Raza の支援を得て基本機能に正式に組み込まれたように、このようなパッケージの中には最終的に基本機能として組み込まれるものもあります。

このことは Django にとってどのような意味を持つのでしょうか? Django がウェブ開発で複数のフロントエンドパターンをサポートできるということは、Django の成熟度と継続的な進化を物語っています。SPA アーキテクチャを好む開発者の場合は、django-rest-frameworkdjango-ninja 経由の API バックエンドと、HTMX、Alpine.js、そしてまもなく template partials で強化されるサーバーサイドでレンダリングされるテンプレートなどを利用できます。 Django は現代のウェブ開発者のニーズを満たすように進化を続けながら、多数の既存ユーザーが手放さない理由であるその安定性とセキュリティも維持し続けています。

AI の使用率の増加

大多数の回答者(79%)が依然として公式ドキュメントを主な学習リソースとして使用し続けており、Stack Overflow(39%)、AI ツールと YouTube(38%)がその後に続いています。 AI ツールのカテゴリが数年前には存在すらしていなかったことを考慮すると、目覚ましい台頭だと言えます。 また、ブログ(33%)と書籍(22%)の順位がかなり低いことにも注目する価値があります。

Django の学習リソース

Note: 次のどのリソースを Django の学習に好んで使用していますか?

Django 開発では 69% が ChatGPT、続いて 34% が GitHub Copilot、15% が Anthropic Claude、9% が JetBrains AI Assistant を使用していると回答していました。 最も一般的な AI のタスクは、自動補完(56%)、コード生成(51%)、およびボイラープレートコードの作成(44%)でした。 来年のアンケート結果では、この分野でさらに大きな採用率が示される可能性が高いでしょう。

聞くところによると、今年の DjangoCon Europe と DjangoCon US では AI ツール に関する会話が多く交わされていたようです。 利用できる選択肢(チャット、自動補完、エージェント)はすべて比較的新しいものであり、これらの機能を Django 開発で最大限に活用する方法については Django フォーラムAI エージェントのルールや関連トピックが継続的に議論されているにもかかわらず、コミュニティ内での合意はまだ形成されていません。

Django 開発者は経験豊富

今年初めに公開された Python アンケートでは回答者のちょうど半数(50%)が業務経験が 2 年未満という結果になったのとは対照的に、Django 開発者は非常に経験豊富な方が多くを占めています。経験年数が 11 年以上の回答者が 30% と最も多く、6~10 年の 26%、3~5 年の 21% がその後に続いていました。 つまり、この 77%(言い換えれば Django 開発者の 4 人に 3 人)が 3 年以上のコーディング業務経験を持っているということになります。

Django 開発者の経験年数

Note: コーディング業務の経験年数は通算何年ですか?

開発者の圧倒的多数(82%)が Django を個人用途と業務用途の両方で使用しています。 約半数(51%)が Django を Django REST Framework と一緒にバックエンド API に使用していますが、実に 80% がフルスタック開発を行っており、サーバーサイドでレンダリングされるテンプレートの選択肢が増えていることがこれを後押ししているのは間違いないでしょう。

型ヒントに対する強力な支持

このアンケートの回答者の経験年数を考慮すると、型ヒントに対する圧倒的な支持があったと言っても驚かないはずです。すでに Django コードで型ヒントを使用している回答者が 63%、使用を予定している回答者が 17% であるため、合計で 80% もの回答者が支持していることになります。

型ヒントの使用率

Note: Django コードで型ヒントを使用していますか?

型ヒントを Django の基本機能に追加すべきかという質問(Django Steering Council で継続している論点)に 84% が「はい」と回答しており、そのうちの 45% が開発者自らが貢献する意思があることが示されました。

Django は Python と同様、入門者には親しみやすい存在となり、経験豊富なプログラマーには型ヒントなどの一般的に好まれる比較的高度なツールを提供するように長年にわたって努めてきました。

PostgreSQL が首位

データベースバックエンドについては、組み込みでサポートされているものが圧倒的に好まれています。PostgreSQL が 76% を、続いて SQL が 42%、MySQL が 27%、MariaDB が 9% を占めています。 これらの割合は過去 4 年にわたって驚くほど一貫しています。

Django プロジェクトで最もよく使用されているデータベース

Note: どのデータベースバックエンドを使用していますか?

Oracle の使用率は相対的に伸び続けており、2021 年と 2022 年 の 2% だった使用率が 2023 年には 10%、2024 年 には 9% となっています。 MongoDB などの比較的新しいデータベースについても注目に値する結果が出ています。正式なサポートがないにもかかわらず、 2023 年には 8% のシェアを獲得しています。このことは、Django が提供する NoSQL の選択肢に対する需要があることを示しています。 このアンケート結果は、MongoDB チームが今年リリースが完了した正式な Django MongoDB バックエンドへの投資判断を行う上での重要な要素となりました。

ローカル開発のみならず、本番環境での SQLite の使用と MongoDB からの NoSQL の選択肢に対する関心が再び高まっていることを踏まえると、今後数年間にわたってデータベースのサポートを追跡し、Oracle がその使用シェアを維持し続けるかどうかを監視すると興味深い結果が得られそうです。

人気のサードパーティ製パッケージ

最もよく使用している代表的なサードパーティ製 Django パッケージを 5 つ挙げる質問では、非常に多くの回答が寄せられました。このことは、Django エコシステムにおけるパッケージの奥深さと幅広さを反映しています。  djangopackages.orgawesome-django リポジトリ、新しい Django エコシステムのページなどのリソースは、Django の最大の強みがサードパーティ製アプリとアドオンのエコシステムにあることを明確に示しています。

特に Django REST Framework が 49% と圧倒的な人気を見せており、`django-debug-toolbar` の 27%、`django-celery` の 26%、`django-cors-headers` の 19%、`django-filter` の 18%、`django-allauth` の 18% がその後に続いていました。 これらの上位のパッケージの以外にも多数のパッケージが支持を得ており、Django 開発者が利用できる選択肢の幅広さが示されています。

Django の最新バージョンが圧倒的に優勢

回答者の圧倒的多数(75%)が Django の最新バージョンを使用していると報告しています。約 8 か月ごとの新機能リリースのペースを考慮すると、これは非常に素晴らしいことです。 たとえば、Django 5.1 は 2024 年 8 月に、Django 5.2 は 2025 年 4 月にリリースされ、Django 6.0 は 2025 年 12 月にリリースが予定されています。

最もよく使用されている Django のバージョン

Note: どのバージョンの Django を使用していますか?

定期的なリリーススケジュールにもかかわらず、Django は安定性の維持に多大な努力を払っており、非推奨と削除のポリシーが十分に確立されているため、破壊的な変更が発生することはまれです。

また、特定の機能リリース(過去の例では 3.2、4.2、5.2 など、末尾が .2 のもの)は長期サポート(LTS)リリースとして作成されており、すべてのセキュリティおよびデータ損失に関する修正が 3 年間提供されることにも注目する価値があります。

LTS リリースごとに更新するやり方もありますが、これほど多くの Django 開発者が最新リリースを選択していることは嬉しいことです。なぜなら、それによって最新かつ最も優れたバージョンのフレームワークが確実に使用されることになるからです。 また、数年おきに更新するよりも、機能がリリースされるたびに徐々に更新する方がはるかに楽です。

pytest が普及

Django の共同開発者である Jacob Kaplan-Moss 氏の言葉を借りれば、「テストのないコードは設計上壊れている」と言えます。 Django は Python の unittest ライブラリをベースにした独自のテストフレームワークを備えており、ウェブアプリケーション用に作られた追加機能を提供しています。 多くの開発者はさらにテストを強化するため、より規模の大きな Python コミュニティで同程度に人気のある `pytest` も使用しています。

このアンケートでは、Django プロジェクトのテストで最も人気の高い選択肢は依然として `pytest`(39%)であり、`unittest` (33%)が僅差で続いていることが分かりました。 `pytest-django` と `django-test-plus` の 2 つの Django 固有のプラグインも強力な支持を得ていました。 `coverage` ライブラリは 21% の開発者に使用されており、プロジェクトのテストカバレッジを測定する便利な手段を提供します。 さらに下の順位には、Selenium や Playwright などのエンドツーエンドテストの選択肢が入っていました。

Django プロジェクトで最もよく使用されているテストの選択肢

Note: あなたのプロジェクトでは、どのようなタイプのテストを実施していますか?

これらの結果は、Python エコシステムの他の結果と整合性が取れています。`unittest` と `pytest` は間違いなく主要な Python ライブラリのテスト手段であるため、両方がこの結果でも上位に入っているのは驚くことではありません。

行動に移せるアイデア

以上、今年の結果の注目すべき内容について私の見解を読んでいただきましたが、今後はどのような行動を取るべきでしょうか? まず、Django は成熟しており、意図的に退屈なテクノロジーになっていることを認識しましょう。つまり、Python と Django を最新バージョンに更新して生産的に作業を続けることが可能で、破壊的な変更によって作業が中断される心配もありません。

とは言え、より規模の大きな Python とオープンソースのエコシステムは常に革新と変化を続けているため、少し実験するだけで確実に生産性が向上するはずです。 その考えから、行動に移せる 4 つのアイデアを以下で紹介します。

行動その 1: HTMX を試す

その魅力をまだ体感していない方は、HTMX ウェブサイトの Examples(例)セクションにアクセスし、一般的な UI の改善を見てみましょう。 コピーペーストするのと同じくらい簡単に多くの対話要素を作成できます。同様の結果を得るために専用の JavaScript フレームワークを使用する必要はありません。

行動その 2: AI を試す

明らかに AI ツールのあるフレーバーが Django 開発者ワークフローの標準に組み込まれそうな動きがあります。ただし、それがどのような結果を招くのかについては明確な共通認識はありません。

それとは対称的に、支援機能の使用を最小限に抑え、タイポや明確な言語のエラーの検出のみを希望している開発者がいます。 さまざまなレベルの自動補完オプション、さらにはチャット支援による(コードスニペットやコードベース全体を含む)プログラミングを使用し、さらにはプログラミングについて LLM に質問する開発者は増えています。 現時点で最も先進的な AI の領域は、プロンプトを受け入れて自律的にその解決を試みるエージェントです。

ほとんどの Django 開発者はこのような新しい AI ツールをモデル内のどこかで試していますが、完全に取り入れているわけではありません。 今後 1 年間でツールと IDEの統合が改善される中、来年のアンケート回答者が AI の使用状況に関してどのように報告するかは興味深いところです。

行動その 3: 最新バージョンの Django にアップグレードする

Django と Python がもたらす恩恵を余すことなく受ける最善の方法は、最新リリースを使用することです。 どちらも成熟しており、破壊的な変更はめったにないため、そうするのが最も簡単です。 テストのある本番環境のコードベースでは、バージョン番号を更新し、テストスイートを実行し、発生するエラーを修正するだけで更新できます。

最新状態に維持するのは、車のメンテナンスと同じです。数年間放置して故障が発生する前に頻繁に少しずつメンテナンスする方がはるかに楽です。 また、最も安全で性能の良いバージョンのツールを使用していることにもなります。

行動その 4: Django エコシステムの最新情報を得る

Django はバッテリー同梱のフレームワークであり、多くの取り組みが行われているエコシステムでもあります。 時には気が遠くなることもありますが、Django の公式ウェブサイトからポッドキャスト、ニュースレター、カンファレンスまで、最新情報は好みの媒体のリソースで得ることができます。 まずは先日公開された Django エコシステムページをご覧になることをお勧めします。

さらに詳細を知りたいですか? こちらで Django 開発者アンケートの結果をご覧ください

オリジナル(英語)ブログ投稿記事の作者:

Will Vincent

Will Vincent

Will Vincent is a Python Developer Advocate at JetBrains and former Django Board Member. He is the author of 3 books on web development with Django, hosts the Django Chat podcast, and writes the Django News newsletter. In addition, he is a regular conference speaker, open-source maintainer, and founder of LearnDjango.com. Previously he worked at multiple early-stage startups, most notably Quizlet, and taught computer science at Williams College.

image description

Discover more