Djangoの公式ドキュメントを読んだり、QiitaにあるDjango入門を写経してみたり、アプリを書いていたりする中で、どのように書けばDjangoっぽいアプリになるのだろうかと悩みました。
そこで、良さそうな本を探してみたところ、「Two Scoops of Django: Best Practices for Django」のシリーズが高評価だったため、このシリーズの最新版(Django1.8版)を読むことにしました。
- 公式サイト: Two Scoops Press: Making Python and Django as fun as ice cream
- 目次: Two Scoops of Django: Best Practices for Django 1.8 – Two Scoops Press
- Amazonの書影
Two Scoops of Django: Best Practices for Django 1.8
- 作者: Audrey Roy Greenfeld,Daniel Roy Greenfeld
- 出版社/メーカー: Two Scoops Press
- 発売日: 2015/05/15
- メディア: ペーパーバック
- この商品を含むブログを見る
英語だったのでKindleの辞書を使って読みたいと思いましたが、残念ながらepubやKindle版の刊行予定はなさそうでした。それでも、すぐに読みたかったことから、公式サイトからpdf版を買いました。
Two Scoops of Django 1.8 FAQ – Two Scoops Press
感想
自分が悩んでいたDjangoっぽい書き方についての記載が豊富にあった良書でした。
内容は、書籍の冒頭に「チュートリアルではない」と書かれていることからも、一度でもDjangoプロジェクトを作成した人向けのものでした。
英語で書かれているものの、時々辞書を引くくらいで読み通すことができました。特に前半に多くあったDjangoのTipsはソースコードが中心で、ソースコードが読めれば十分でした。
書籍のソースコードがGitHubで公開されており、ざっと眺めたい時はそちらを参考にしたりしました。
twoscoops/two-scoops-of-django-1.8
自分の場合、どのように書くのが良いのかを知りたかったため、Chapter1~15あたりの基本的なところがとても参考になりました。
特に、2種類のView、Class-Based Views
とFunction-Based Views
がそれぞれどんな用途で使うのかが書かれており、とても参考になりました。
また、「Chapter 26: Security Best Practices」では、Djangoが備えているセキュリティ対策、および使う上での注意点が27ページにわたって書かれていました。どこまでがDjangoで用意されていて、どこからを気をつけるのが良いかが分かったため、こちらもとても参考になりました。
p335ではPyYAMLでは load()
ではなくsafe_load()
を使うようにと書かれていて、使っているコードを思い出したりしました。
他にも、
- Djangoまわりのパッケージ情報
- Djangoの
long-term support (LTS) releases
という概念- Django1.8はLTSのバージョン
- 参考: Download Django | Django
- 他の書籍やWebサイトへのリンクの記載
- Two Scoops of DjangoのWebサイトにも一部のまとめあり
あたりが参考になりました。
Django1.8はLTSのバージョンであり、p431にはDjango2.2あたりに次のバージョンを刊行する予定とあったので、しばらくはこの本の内容に従えば良さそうでした。
そのため、自分が触っていない部分の理解はまだ不十分なこともあり、また後で読み返してみようと思いました。