LoginSignup
0
0

Djangoの初心者学習

Last updated at Posted at 2023-12-18

目的

Spring経験者が、Djangoを学習するので、Springとの違いを考えながら、少しづつ学習した内容をまとめる。

学習書籍

アーキテクチャ

  • Webサーバとアプリケーションの間にWSGIサーバがある。
  • URLディスパッチャ:URLに対して、どのビューを呼び出すかを決める役割を担う。
本ではControllerに該当するとのことだが、どちらかというとHandlerに該当するように思えた。
読み続けていくと分かるかもしれないので、メモ
  • ミドルウェア:前処理と後処理を行う。
ControllerAdviceに似てそうだが、共通的な定義じゃなければ似て非なるもの。
読み進めていけばわかるかもなので、メモ
  • ビュー:Springのビューと似ているが異なる。Djangoではビューを二つに分けていて、テンプレート(データの見せ方)と「ビュー(データの選び方)」となっている。

プロジェクト構成

  • プロジェクト:プロジェクト固有のモジュールとアプリケーションを持つ。
  • アプリケーション:固有のモジュールを持つ
    Mavenプロジェクトと似てるかなと思ったが、全く違った。
    アプリケーションは入れ替え可能なように作成するのが良いとのことなので、親子関係や依存関係のあるjarというよりは、自分たちのサードパーティのライブラリを作ってるようなイメージに近そう。

URLディスパッチャとURLconf

  • URLconfを読み込んでURLディスパッチャがどのビューを実行するかを決定している。URLconfの書き方は、パスコンバータを使った書き方、正規表現を使ったURLパターンがある。

  • エラーハンドリングはURLディスパッチャで行ってくれ、例外系のハンドリングもしてくれる。

  • URLパターンの設定をルートのURL.confのみに追加していくと、ルートのURL.confが肥大化してくので、アプリケーションディレクトリごとに1つずつurls.confを配置するのがベストプラクティス。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0