フレームワークとは
フレームワークについて理解するには、前提としてWebサイトの構造について知っておく必要があります。
フレームワークはそもそもWebサイトを作成するために使用されるものだからです。
フレームワークを使用しなくても、Webサイトは作成可能ですが、時間がかかります。
なぜなら、フルスクラッチで作成したいWebサイトの機能を作成する必要があります。
フレームワークは、ある程度共通で必要になりそうな機能であったり機能を構成している一部を提供してくれます。なので、非常に開発効率が上がります。
Djangoの特徴とその他のフレームワークについて
Djangoはwebフレームワークになりますが、その他にもBootstrapやMaterial UIはデザインを整えるcssフレームワークがあります。
デザインを1から整えるのは手間なので、ある程度デザインをキレイにしてくれるフレームワークを導入してするサービスは多いです。
Djangoはどのようなサイトで力を発揮するかというと、多くのデータを扱うサイトを作る時に便利です。
では、どんなサイトがDjangoで作成されているとかいうと、YoutubeやAirbnbなどがそうです。
1点勘違いしないで欲しいのが、Djangoだけでこのような大規模なサイトを作ることはしないです。随時動画がアップロードされるのに対して、Django(python)だけではとても捌き切れないので、別の言語も使用されているのは認識しておいてください。
開発環境構築
1、python3をインストール
brew install python3
2、仮想環境を作成(任意)
venvを使用しますが、pipenvなどの他の方法を使用しても問題ありません。
任意のディレクトリで下記のコマンドを実行(djangoは生成されるディレクトリ名前は各々で付けられる)
python3 -m venv django
3、ディレクトリ移動
cd django/
4、仮想環境に入る
. bin/activate
5、Djangoをインストール
pip install django
6、インストールされているか確認
pip freeze
> asgiref==3.2.7
> Django==3.0.5
> pytz==2019.3
> sqlparse==0.3.1
※仮想環境から出る方法
deactivateコマンドを実行
おまけ:仮想環境について
仮想環境はフォルダ毎などによって、違うバージョンのモジュールを実行できるようにするものです。
それによって、プロジェクト毎に合わせてモジュールをインストール・アンインストールして、バージョンを合わせる必要がなくなります。
pythonの仮想環境で代表的なものとしては、venv・pipenv・virtualenvなどがあります。
anacondaを入れている方はcondaコマンドで仮想環境を作成できます。
venvはpythonの3.7系から標準で入っているので、簡単に導入ができます。
この辺りは、好みによって使い分けても問題ないかと思います。