フレームワークとは?|フレームワークを使うメリットや代表的なものを4分でわかりやすく解説します【プログラミング初心者向け】

用語解説

こんちには。キノコードです。
このレッスンでは、 フレームワークについて説明をします。

▼ YouTube動画はこちらからどうぞ。

この記事の執筆・監修

キノコード
キノコード    

テクノロジーアンドデザインカンパニー株式会社のCEO。
日本最大級のプログラミング教育のYouTubeチャンネル「キノコード」や、プログラミング学習サービス「キノクエスト」を運営。
著書「あなたの仕事が一瞬で片付くPythonによる自動化仕事術」や、雑誌「日経ソフトウエア」や「シェルスクリプトマガジン」への寄稿など実績多数。

フレームワークとは?

フレームワークとは、WebサイトやWebサービスなどを作るときに、よく使う機能を提供するソフトウェアのことです。
アプリケーションフレームワークとも呼ばれています。
有名なフレームワークは、基本的にオープンソースです。オープンソースなので無料で使うことができます。
また、フレームワークは、プログラミング言語ごとにいくつかの種類があります。

フレームワークを使うメリット

フレームワークを使うと、開発効率が向上します。
なぜ、開発効率が向上するのでしょうか?
どのようなWebサイトやWebアプリケーションでも、似たような作りになるところがあります。
例えば、Webアプリケーションなら、データベースへのデータ登録や検索処理、ブラウザへの表示機能が必要です。
また、PCサイトをスマホ対応させる機能もよく使われます。
そういった「よくある機能」は、簡単に作れた方が便利です。
フレームワークは、そういったよく使う機能を簡単に作れるようにしたソフトウェアです。
結果として、フレームワークを使うと開発効率が上がるのです。

代表的なフレームワーク

有名なプログラミング言語ごとに、代表的なフレームワークがあります。
各言語ごとに複数のフレームワークがあるのは、それぞれ異なる特徴を持っているからです。

Java

Javaの代表的なフレームワークは「Spring Framework」「Play Framework」です。
Springは機能が豊富なフレームワークです。
使い方次第であらゆるタイプのアプリやソフトウェアを開発できます。
Play Frameworkは機能が絞られたフレームワークで、とっつきやすいことが特徴。
WebサイトやWebアプリを作ることに特化しています。

JavaScript

JavaScriptの代表的なフレームワークは「React」「jQuery」です。
jQueryはフレームワークではなく、ライブラリですが、有名なのでご紹介します。
ReactはJavaScriptでWebアプリを作る上で便利なフレームワークです。
もともとJavaScriptはWeb「サイト」を作るための言語でしたが、Reactが登場してからWeb「アプリ」が作れるようになりました。
jQueryはJavaScriptそのものを楽に使えるようにするライブラリです。
JavaScriptだけでWebサイトに動きをつけようとするとソースコードが煩雑になりやすいです。
jQueryを使うと比較的簡単にWebサイトに動きをつけられます。

Python

Pythonの代表的なフレームワークは「Django」「Flask」です。
DjangoはPythonでWebアプリを開発する上で実用的なフレームワークです。
Flaskは「マイクロフレームワーク」と呼ばれていて、インストール時の機能が最小限しかないことが特徴的です。
Flaskは、必要な機能を自分で入れる必要がありますが、その分動作の軽いフレームワークになります。

PHP

PHPの代表的なフレームワークは「Laravel」です。
Laravelは「Web職人のためのフレームワーク」と銘打っているだけあって、Web開発に特化しています。
2011年に登場してから、人気が急上昇しています。

Ruby

Rubyの代表的なフレームワークは「Ruby on Rails」です。
現在のWebフレームワークの先駆け的な存在です。
SpringやPlay Framework、Django、Laravelなど、後に生まれたフレームワークはRuby on Railsの影響を多分に受けています。

KinoCode チャンネル

YouTubeで毎日動画配信しています。
動画は3分間なので、
 ・通勤時間
 ・お昼休み
 ・お手すきのとき
 ・寝る前
など手軽に視聴できます。
 
ちょっとしたインプットにどうぞ!
 
▼チャンネル登録はこちらからどうぞ。
未経験からはじめるPython学習「キノクエスト」 キノクエスト
  • スキルアップしたいけど何からはじめればよいかわからない…
  • プログラミングスクールに入りたいけど料金が高い…
  • プログラミングを学んでも業務やキャリアに活かせるか不安…

キノクエストは、このような悩みを持つ方にぴったりのプログラミング学習サービスです。
国内最大級のプログラミング学習系YouTubeチャンネル「キノコード」が提供しているから、未経験者にもわかりやすく質の高い学習体験を実感していただけます。

キノクエスト