Webアプリケーションをpythonで作成する際に、どのフレームワークを使用するか迷う方がいらっしゃると思います。
様々なWEBサイトで説明がされていますが、大きく「Django、Flask、Streamlit」の3種類のフレームワークのどれかを使用することになります。
それぞれの特徴について以下にまとめます。
Django ジャンゴ | WEBサイトの見た目から詳細の設計だけでなく、認証機能などをフレームワークで簡潔に取り込める為、中規模~大規模なWEBアプリを作成することが可能。 学習にはそれなりに時間がかかるのが難点。(pythonコード以外にもHTML・CSSが必須) 管理画面やログイン機能やユーザー権限を扱うアプリケーションを作る場合は、Djangoがおすすめ。 |
Flask フラスク | WEBアプリケーションを必要最低限の機能で構築するためのフレームワーク。Djangoに比べ動きが軽くなります。最低限のWEBアプリケーション開発の知識が必要。 Djangoと同様にHTMLやCSSを扱う必要がある。 単純なWebアプリケーションでなどに適しています。 |
Streamlit ストリームリット | 簡単にWEBアプリケーションを作成できる。 HTML操作は不要となる。そのため、見た目をこだわる場合は多少不十分感はあるかもしれない。 社内ネットワーク内で使用するアプリケーションを作る場合はStreamlitでほぼ十分と感じる。 |
Djangoの学習方法
これまでは書籍だけでなんとか学習をする必要がありましたが、chatGPTの登場である程度のコードを書いてもらうことができるようになりました。
ただし、書籍である程度知識がついていないと、エラーの対応や認証機能をどうすべきかについて改良を自分で考えて行う必要がありますので、完全にIAに頼ることができません。
自分で学習をしながら、適度にAIに頼って開発ができるようになるのが近道です。
Djangoおすすめの教本(初心者向け)
Djangoのツボとコツが絶対にわかる本
Djangoをこれから学ぼうか悩んでいる人は、まずはこの本から手に取ってもらうのがおすすめです。
Djangoは、初心者が学習する際にいろいろと超えなければいけないハードル(Pythonのコード以外にも多くのことを覚える必要がある)がありますが、この本から始めるとDjangoについて一通りの決まりを頭に入れることができるようになります。
Djangoのツボとコツがゼッタイにわかる本[第2版] [ 大橋亮太 ] 価格:2860円 |
Streamlitの学習方法
Streamlitは、「コードを実行(RUN)したら、面倒な設定なく、すぐにWEBアプリケーションが立ち上がる」というのが特徴です。
Streamlitのメリットはその学習方法にあると考えています。
なぜなら、ChatGPT4に何がしたいか質問するだけで、ある程度コードが出来上がります。語弊を恐れずいうと実質学習が不要となるのです。
忙しい人にとって、すぐにアプリケーションが出来上がるのは魅力ですね。
PCに取り込む最低限の手順としては、
- PCにminicondaをインストール(anacondaでもOK)
- miniconnda を起動しpip install ○○〇 または、conda install ○○〇で必要なライブラリをインストール※streamlitをインストールするために、pip install streamlitを実行しておく。
- 統合開発環境VXcodeをインストールし、コードをChatGPTに聞きながら作成し、pyの拡張子で保存する。
- VXcodeのターミナルで streamlit run ○○〇.pyを実行するとすぐにWEBブラウザ上にアプリが立ち上がる。
- http://○○○○〇:********の○○の部分が起動しているPC名に書き換えて、URLを配布すれば、皆が使用できるようになる。