• 2018-05-20
ウズマスター戦記
ウズマスター戦記 https://www.uzumax.org/2018/05/djangodjango.html

【Django】日本一平凡なDjangoサンプルの開発

Pythonの流行

昨今のAIブームの影響で、IT業界におけるPythonの存在感が急速に大きくなっています。


  • 機械学習をやるなら、Python


これはもう鉄板と言える選択肢だと思います。

しかしながら、Pythonは別にAI専用言語というわけではなく、普通のデスクトップアプリ開発や、Webシステム開発にも対応しています。

難しいAI開発で採用されるあたり、Pythonの性能や生産性はかなり強力です。

現時点では「Python=AI」という印象が強いものの、今後はPythonを使用する範囲も広がり、Webシステム開発案件でもPythonを使うケースが増えていくと思います。

しかし、PythonでWebシステム開発と言ってもどうやったら良いんじゃ?

そこで自分で調査することにしました。


フレームワークに一番大切なもの、それは綺麗さ

Webシステム開発にフレームワークを選択しない手はありません。

そもそもWebシステムというのは本来は別にフレームワーク必須というものではなく、元から言語に備わっている機能で実現出来るものなんですよ。

20年くらい前は私もPerl純正で自分のホームページを作ったりしていました。

しかし今にして思えば、あのソースは可読性が最悪だったように思います。
完全自作Webシステムだと実装者の個性が出すぎる上に、MVCモデルなどの基本も抑えていなかったりと、とにかく滅茶苦茶になってしまいます。

そこで、Webシステム開発にはフレームワークを導入します。

Webシステム開発にフレームワークを導入する一番の利点は、デザイン設計がそのフレームワークに乗るところだと思います。

  • 綺麗であること

これがWebシステムフレームワークで一番大事なことだと思います。性能やら機能やらはその次です。

さて、そんな大事なフレームワークですが、PythonでWebシステムを開発するならどれが良いか。

調べたところ、「Django」というライブラリが一番人気なようです。

PythonWebシステム界の筆頭フレームワーク「Django」

Djangoはアメリカの会社が作ったフレームワークだそうです。

公式サイトはこちら。


触ってみた所感としては、これはRuby On Railsです。

Ruby On Railsと言えば、Rubyで書かれたRubyのWebシステムフレームワークで、世界的に有名なWebシステムフレームワークの頂点に君臨しています。

今となっては定石扱いになっているRuby On Railsですが、登場した当時は凄い大ブームが起きていましてね、多くのエンジニアがその設計思想を引き継いだ別言語のライブラリを開発したのです。

「Railsライク」という言葉があって、Ruby On RailsではないけれどもRuby On Railsの設計思想を丸パクリして、言語だけJavaとかPHPに流用したフレームワークは沢山あるのです。

そしてDjangoですが、Django自身がRailsライクを名乗っているわけではありませんが、私はこれはRailsライクの範囲内だと思いますよ。

ソックリですもん。

私のこの「Railsライクっぽい」というのは褒め言葉です。

Railsライクの良さは既に証明されていますから、RailsライクっぽいDjangoはその時点で一定の信頼を得ているも同然です。

それに私のように過去にRuby On Railsを触った経験のある技術者が流入してくるにもハードルが低い。

  • Djangoは正統派フレームワーク

これが私の所感です。

日本一平凡なDjangoシリーズ

しかし、Djangoって余り日本語情報が無いですね。。。

分からないことがあった時に調査するのが非常に大変です。
英語サイトを見るのは当然ですが、それでもダメで自分でフレームワークの中身をハッキングするくらいよくある話。

こりゃ大変だ、ということで自分で調べたことを纏めていくことにしました。

日本一平凡なDjangoシリーズのスタートです。

バージョン

  • Python:3.6.5
  • Django:2.0.5

GitHub

目的

この連載の進行と並行してソースをGitHubにボンボコ突っ込んでいきます。
最終的には良いサンプルソースに仕上げたいですね。

頑張って行きます。

バックナンバー

0 件のコメント:

コメントを投稿

お気軽にコメント下さい。