Django
初心者
python3
プログラミング学習
Django2.0

Django未経験者に送るDjango入門ロードマップ

これはなんのエントリですか?

Djangoに入門したくて躊躇している人を後押しするためのエントリ.
Djangoそのものの詳細な解説はしません. Django入門者向けの学習ロードマップです.
ご了承下さい.

1. 開発環境とpython仮想環境

まずは開発する土台を整えましょう.

Pycharm(IDE)

あまりpython触った事がない, という人はPycharmが超おすすめ.
Community Editionは無料かつ十分な性能.

Visual Studio Code(エディタ)

Visual Studio Code
プログラマ向け定番のエディタ.
Pycharmと比べて、.py/.html/.css/.jsファイルをどれも透過的に扱えるのが魅力.

ただし, パッケージのインストールやビルド設定を自分で色々と用意する必要があるので, Djangoに少し慣れてきた段階で乗り換えるのが良いかも.
こちらにVisual Studio Codeを使った開発環境構築のエントリを追記しました.

pythonの仮想環境設定

アプリケーションごとにインストールされているpythonパッケージを分離するために必要となります.
virtualenvを使うのが普通だったようですが, 最近ではpipenvに移行しつつあるよう?です.

2. Webチュートリアル

まずは無料かつ手頃に学べるWebのチュートリアルから始めましょう :)

2.1. Django公式チュートリアル

何はともあれ, まずは公式チュートリアルをオススメします.
polls(投票)アプリを通じて, 「へー, こんな構造で動いてんのね」というのを実感して頂ければ良いかと思います.
とっかかりとしては量も少なめなので, 是非ここからスタートしてください.

2.2. Django Girls(Web開発ガチ初心者向け)

ほんっとーにWebアプリガチ初心者向けの人にはDjango Girlsもオススメです.

「Webはどうやって動いているのか?」
「コマンドラインを使ってみよう!」という初歩的な部分から解説されており, ほんっとーにWeb初心者の人はDjango公式チュートリアルよりもこちらの方が易しくて読みやすいかも知れません.
Django公式チュートリアルが一通りこなせる方はDjangoGirlsまでやる必要はあまりないかと思いますが, 参考までに.

3. html/cssやpythonそのものの知識が不足していると思ったら

Djangoを触るうちに, 「...htmlとかpythonが全然分かってなかったな」となったら, 少し寄り道するのも手です.

ドットインストール

ドットインストール
@nossey 一番推しのプログラミング入門サイト. 動画付きなので, 自分も一緒に動作確認出来る安心感がすごい.
入門と名をうってますが, プログラミング経験者でも, 未経験の言語/フレームワークを勉強したいと思った方はお世話になるでしょう.

留意事項

「DjangoでWebアプリ作る」のが目標なので, html/cssやpythonそのものにあまりのめりこむ必要も無いかと思います.
必要になったら必要な分だけ調べれば良いかと.

4. 書籍でDjangoを体系的に学ぶ

チュートリアルからさらに進もうとした時に, 日本語書籍が皆無なのがDjangoで困る部分ですね(汗)
なので, 最初に体系的な知識を得ようとするなら, まずはこの書籍をおすすめします.

Django for Beginners(洋書)

Django for Begginers

2018.5現在の最新バージョンである2.xをカバーしている本.
色々探してみても, バージョンが1.xの情報が多くて辟易させられること多かったのですが, この本なら安心です.
洋書ですが, 体系的かつ非常によくまとまっています.
個人的な印象として, 難解な英語は無かったです.

polls(投票)アプリのチュートリアルではカバーしていないユーザ認証や, bootstrapで見た目を整えるための説明もあるので, 「おお, 結構良いの出来んじゃん」というモチベーションアップにも繋がります.
「とりあえず動くものを!」って言う人は, テストコード/メール通知の部分を飛ばしちゃって良いかもしれません.

polls(投票)アプリのチュートリアルが終わった方は, この書籍にチャレンジすることを強く推奨します.

Two Scoops of Django 1.11: Best Practices for the Django Web Framework(洋書)

Two Scoops of Django 1.11: Best Practices for the Django Web Framework
Djangoのベストプラクティスが詰まった本.
...なんですが, これはDjangoに慣れてきた人向けの踏み込んだ内容なので, 初めのうちは気にしなくていいです.

とはいえ2.0でも役立つ情報が多いので, polls(投票)アプリと「Django for Beginners」を読了したあたりで手を出すのが良いと思います.

5. Djangoの参考サイト

「Django情報見つかんねぇ!」というケースも多いので, 2018.5 現在, 私がおすすめする参考サイトを4つ紹介します.

naritoブログ

naritoブログ
貴重な日本語のDjango情報が載ったブログ. 私も, いつもお世話になってます.

偏った言語信者の垂れ流し

偏った言語信者の垂れ流し
python/Djangoのエントリ多数. githubにDjangoのサンプルコードをあげてくださってるので, 参考になるかと.

simple is better than complex

simple is better than complex
「Djangoで〇〇やってみた」系の記事が多数載っているサイト(英語).
入門向けの記事もありますが, Django for Beginnersを学んでいれば十分かと思います.

Awesome Django(各種パッケージまとめ)

Awesome Django
Djangoで「あれやりたいなー」と思った時に見るサイト.
パッケージが諸々紹介されているので, やりたい事は大抵載っている印象.
最初からのめり込む必要は無いですが, 必要になったらお世話になるかと.

さいごに

肝要なのは, 一度に色々とやりすぎないこと. 必要になったら徐々に取り組むこと.

例えば, 「REST Framework」は「Ajaxやりたいなー」となってから,「npm」 「Webpack」や「Vue.js」は「複雑になってきたクライアントサイド整備したいなー」となってから, 徐々に勉強するのが良いかと思います.
一度にあれこれやろうとすると, 挫折の原因ですので...

Djangoは, 確かに日本語情報少なくて英語と向き合う必要があるのですが, だからといって「きっとロクに勉強できないだろうな」というのは杞憂かと思います.
このエントリが「Djangoに興味がある, でも日本語情報があまり出回ってなくて心配...」という方への一助になれば幸いです.

私もまだまだですので, 一緒に頑張りましょう :)