「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ミドルウェア

pointこの用語のポイント

pointソフトだよ

pointOSとアプリケーションの中間に位置するやつだよ

pointOSの機能じゃないけどアプリケーションに組み込むのも微妙なやつだよ

スポンサーリンク

簡単に書くよ

ミドルウェア(英:middleware)とは

ソフトの分類のひとつ
であり

OSさん(コンピュータの人格に相当するソフト)とアプリケーションさん((OSやOSの子分以外の)ソフト)の中間くらいの立ち位置で いろいろな雑用をしてくれるやつ
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

ソフトウェア
OS
アプリケーション


について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ソフトウェアは「コンピュータのうち蹴っ飛ばせない部分」です。

ミドルウェア

コンピュータを構成する要素は2つに分けられます。

1.蹴っ飛ばせる部分
2.蹴っ飛ばせない部分


の2つです。
例えば、ハードディスクディスプレイは蹴っ飛ばせます。
プログラムファイルは蹴っ飛ばせません。

ミドルウェア2

この2つの要素のうち「蹴っ飛ばせない部分」がソフトウェアです。

ミドルウェア3

あと、ついでなので書いておくと「蹴っ飛ばせる部分」は「ハードウェア」と言います。

ミドルウェア4

さて、コンピュータの蹴っ飛ばせない部分(ソフトウェア)ですが、さらに2つに分類できます。
それは

1.OS
2.OS以外


の2つです。

OSは「パソコンさんの人格に相当するソフトウェア」です。
パソコンさんは中にOSを入れることで、はじめてパソコンとしての お仕事が できます。
「これが無いとパソコンじゃねーよ」な基本ソフトウェアです。

ミドルウェア5

※「OS」という用語が世間に広まった きっかけがパソコンなので「パソコン」と書きましたが、スマホや その他のコンピュータ類でも同じです。

OS以外のソフトウェアは「アプリケーション」と言います。
正式名称は「アプリケーションソフトウェア」ですけどね。
くそ長ったらしいので「アプリケーション」や「アプリ」と省略されるのが一般的です。

アプリケーションはOSと対比されるためにある用語です。

ミドルウェア6

コンピュータの人格に相当するソフトウェアがOSです。
OS以外のソフトウェアがアプリケーションです。
世の中にある大部分のソフトウェアがアプリケーションに分類されます。

ミドルウェア7

……というのが、ものすごい簡略化した説明です。

実際にはOSの子分みたいなソフトもいます。
例えば「デバイスドライバ」とか呼ばれているソフトなどです。

デバイスドライバのようなOSの子分はアプリケーションには含まれません。
……が、そこら辺の細かいところまで知りたい人は他のところで情報を補完してください。

ミドルウェア8

身も蓋もない言い方をすると

みなさんが「ソフト」と言われてパッと思い浮かべるようなソフト

がアプリケーションです。

以上を踏まえて、本題に入ります。

OSさんはコンピュータを使う上で最低限必要な基本機能を提供してくれます。
アプリケーションさんはOSではできない特別なこと(応用)ができる機能を提供してくれます。

ミドルウェア9

この「OS」さんと「アプリケーション」さんの間に入って

「特別なことをするときに使う基本機能」を提供してくれるやつ

がミドルウェアです。

ミドルウェア10

例えば、そうですね。

元々 水道管を流れているのは水です。冷たい お水。
これがOSさんの提供してくれる機能だとしましょう。

ミドルウェア11

あるとき、アプリケーション・ピヨ太はコーヒーを作りたくなりました。
おっと、アプリケーション・ピヨ子はカップラーメンを作りたいそうです。
どちらも お湯が必要ですね。

ミドルウェア12

アプリケーション・ピヨ太は、水を温めて、お湯を沸かしました。
コーヒーを作るための お湯です。

ミドルウェア13

アプリケーション・ピヨ子も、水を温めて、お湯を沸かしました。
カップラーメンを作るための お湯です。

ミドルウェア14

それを見ていた賢い人は考えました。
「水道管の途中に水を温める機能を付けた方が便利じゃない?」と。

ミドルウェア15

確かに、そうですね。
アプリケーション・ピヨ太が使う お湯も、アプリケーション・ピヨ子が使う お湯も、同じ お湯です。
それぞれが別で沸かすより、水道管から直接お湯が出た方が便利でしょう。

賢い人は早速、水道管の途中に「水を温める機能」を付けました。

ミドルウェア16

これで、水だけではなく、お湯も出るようになりました。
それぞれのアプリケーションさんが個別に水を温める必要が なくなりましたね。

ミドルウェア17

めでたし、めでたし。

この話における「水を温める機能」に相当するのがミドルウェアです。
OS(水を送る)とアプリケーション(コーヒーを入れる)の間にいて「特別なことをするときに使う基本機能」(お湯を沸かす)を やってくれるやつです。

ミドルウェア18

もう少し実際のパソコンに近い例も見ておきましょう。

例えば、データベースを使うピヨ太ソフトとピヨ子ソフトがあったとします。

ミドルウェア19

ピヨ太ソフトとピヨ子ソフトはアプリケーションです。
OSの入ったパソコン上で動きます。

ミドルウェア20

このピヨ太ソフトとピヨ子ソフトが使うデータベースですが、実は同じ種類でした。
どちらも「PiyoSQL」という種類のデータベースだったのです。

ミドルウェア21

この状態で、ピヨ太ソフトとピヨ子ソフトの中に それぞれ「PiyoSQL」が用意されていたら、どうでしょう?
ピヨ太ソフトとピヨ子ソフトを入れたパソコンさんの中には「PiyoSQL」が2つある状態になってしまいます。

これは、ちょっと鬱陶しいですよね。

そこで「PiyoSQL」を単独で用意して、ピヨ太ソフトとピヨ子ソフトは1つの「PiyoSQL」を共同で使うようにしました。

ミドルウェア22

この話における「PiyoSQL」(データベース)がミドルウェアです。

ミドルウェア23

ピヨ太ソフトとピヨ子ソフトが動くには、OSとデータベースが必要です。

ただし、データベースはOSの機能では ありません。
別に用意する必要があります。

とはいえ、アプリケーションの中にデータベースを組み込むと、同じものが いっぱいある状態に なりかねません。
できれば避けたいです。

仕方がありませんね。
データベースは独立させて別に用意しておきましょう。

そんな感じで「OSの機能では ないけど、アプリケーションに組み込むほど用途が限定されているわけでもないから、独立させて別に用意してあるよ」なソフトがミドルウェアです。
「汎用的っちゃ~汎用的だけど、OSでは ないんだよね~」なやつですね。


image piyo2

一言でまとめるよ

まぁ「ミドルウェア」って単語が出てきたら「OS(コンピュータの人格に相当するソフト)とアプリケーション((OSやOSの子分以外の)ソフト)の中間で頑張るソフトなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像034
書籍画像078

おまけ

■訳してみるよ

「middle(ミドル)」の意味は「真ん中の」とか「中央の」とか「中心の」とか「中間の」とかです。
「ware(ウェア)」という接尾辞が付くと「製品」とか「商品」的な意味になります。
何となく くっつけると

中間の製品

となります。




書籍画像
わわわ説明術コラム
宣伝だよ
エンジニア育成現場の「失敗」集めてみた。 42の失敗事例で学ぶマネジメントのうまい進めかた
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
タヌキとキツネ