車で例えた理解
- フレームワーク:車の骨組みがほぼ出来上がっている状態のもの
- フレームワークは基盤なので、1つのアプリケーションで使うフレームワークは1つ
- ライブラリ:車の部品のこと(タイヤ、ボンネット、ボディ)
- ライブラリはパーツや部品のことなので、複数組み合わせて使うことができる
フレームワークを使って開発するということ
基盤がほぼ出来上がっている状態から、自分が欲しい機能やデザインを実装していく。
ベースをもとに必要な機能をカスタマイズしていくイメージ。
ライブラリを使って開発するということ
よくありがちな機能やデザインを、自分で一から実装することなく
既に出来上がっているパーツを使って実現する。
具体例
フレームワーク
■JavaScript
- Next.js
- Nuxt.js
- Express
■Python
- FastAPI
- Flask
- Django
■Java
- SpringBoot
ライブラリ
■JavaScript
- React.js
- Vue.js
- jQuery
- Chart.js
- Bootstrap
- date-fns
■Python
- pandas
- numpy
■Java
- OpenCSV
- JUnit
- SLJ4J
考え方の注意点
ライブラリは開発中に後から選定することができるが、
フレームワークは実装前に決める必要がある。
タイヤなどのパーツは後から差し替え可能であるが、骨組みを変えるとなったらほぼ作り直しが必要。
まとめ
- フレームワーク:骨組み、基盤
- ライブラリ:パーツ、部品