開発 備忘録 はじめてのDjangoアプリケーション

何人かの方には、またコード書き始めましたよ〜、と申し上げましたが、楽しく続けております。だいぶ見えるところも見えてきたので、ここまで覚えたことを少しまとめたいなと。もっとも言語に特化したような部分は、力のあるプログラマーの皆さんには不要かと思いますので、あくまでも私自身の備忘録ということで。

前提

時折理由を聞かれることもありますが、特に理由もなく
python3.X、Django
を使っています。

大まかな開発手順

まずDjangoのアプリケーションに関しては、以下の様な手順で開発を行います。

  1. モデルの定義:models.pyに記述したいデータモデル的な記述を行う
  2. 追加したモデルをmigrateする
  3. admin.pyにmodels.pyを追加する
  4. ビューの定義:views.pyで、表示したい内容を記述する
  5. URLの定義:urls.pyで表示するURLを設定する
  6. テンプレートの定義:テンプレートを使って、画面を作成する
  7. 静的ファイルの取りまとめ:CSS,JS等を一つのディレクトリなどにまとめる

という感じです。最初にモデルを定義して、ビュー、URL、テンプレートとう順番で進めるのは個人的にはわかりやすいと感じました。

モデルが重要というお話

エンタープライズ用途に限らず、多くのソフトウェア開発の現場で、モデルの重要性は指摘されていますので、特に言及する必要すらないと思いますが、実際にはなかなかきちんと設計をしてから着手というステップを踏んでいるWeb開発は少ないのではないかと思ったりしています。画面から作っちゃう、なんていうのが多いですよね、きっと。
python/Djangoにおいては、このmodelをきっちりと最初に決める、というひとつの制約があるので、結果としてスムーズな開発ができると思ったりしています。
modelは、models.Modelというクラスから継承するらしくサンプルを見ると
https://docs.djangoproject.com/en/1.8/topics/db/models/

class Person(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
みたいに書くみたいです。