このエントリーは Django Meet up で書きました。
Coding Style
読みやすいコードを書こう
: - 変数の省略を避けよう
- 関数の引数には名前をつけよう
- クラスやメソッドにドキュメントを書こう
- 同じコードの繰り返しを再利用可能な関数やメソッドに入れよう
- 関数は、画面をスクロールしなくても済むぐらいの長さに抑えよう
- 「from .models」のように、明示的な相対インポートを使おう
- 「from django.forms import *」のようなアスタリスクのインポートを使うのをやめよう
The Optimal Django Environment Setup
- 開発環境はSQLite3、プロダクション環境はPostgreSQLのように環境ごとにデータベースを使い分けるのはトラブルの元。どこでも同じデータベースを使おう1
- pipとvirtualenvを使おう(できればvirtualenvwrapperも使おう)
- Djangoをインストールするときはpipとrequirementsファイルを使うのがおすすめ
How to Lay Out Django Project
おすすめのDjangoプロジェクトの構成がここに公開されている。
twoscoops/django-twoscoops-project
Fundamentals of Django App Design
- UNIXの哲学「Write programs that do one thing and do it well.」に従った設計にしよう
- アプリケーション名は、基本的にそのアプリケーションのメインになるmodelの名前の複数形にしよう
Settings and Requirements Files
- 設定は全部バージョン管理の対象にしよう
- 同じ内容を繰り返し書かないようにしよう
- SECRET_KEYなど、設定ファイルに直に書くとセキュリティ上問題がある値は、環境変数で扱うようにしてバージョン管理の対象から外そう
- 目的別に設定ファイルを分けて管理しよう
Database/Model Best Practices
django-model-utils → Djangoのmodel設計でよくあるパターンを楽に作れるようにしたモジュール
57ページぐらいまで読みました。英語難しい><
でも、 twoscoops/django-twoscoops-project では開発環境とプロダクション環境でデータベースを使い分ける設計になっているけど… ↩︎