ガラパゴスタ

楽する。楽しむ。生み出す。

プログラム、ソフトウェア、アプリケーション、ツール、ユーティリティの違い

IT 用語ってややこしいですよね。中でもプログラム、ソフトウェア、アプリケーション、ツール、ユーティリティあたりの違いはトップクラスで「よくわからん」ものだと思います。

厳密に定義を追うと、それだけで一冊本ができてしまいそう……。なので今回は、僕という一人のエンジニアが認識する ニュアンスの違い についてまとめてみました。

f:id:stakiran:20190826205344j:plain

おことわり

本記事はあくまでわかりやすくニュアンスをお伝えすることを重視しています。厳密な定義を知りたい方は、各自で頑張って調べてください。

広義には全部同義

ざっくり捉えると、実はどの用語も大体同じ意味を指しています。つまり、

プログラム = ソフトウェア = アプリケーション = ツール = ユーティリティ

ですね。いや、もうちょっとらしく書いたら、

プログラム ≒ ソフトウェア ≒ アプリケーション ≒ ツール ≒ ユーティリティ

こうなります。

なので、上記の用語が登場した場合、残りの用語のうち馴染みのあるものに置き換えてみれば それで良いです。たとえば、スマホユーザーの方なら、とりあえずプログラムもソフトウェアもツールもユーティリティも、イコール「アプリ」だと思えば、大体合ってます。

分類してみる

これら用語は、実は包含関係にあります。

  • ソフトウェア=プログラム
    • アプリケーション
      • ツール
      • ユーティリティ

一番大きな単位としてソフトウェアとプログラムがあります。

アプリケーションは、ソフトウェアの一種です。

ツールとユーティリティは、アプリケーションの一種です。

ソフトウェアとプログラム

これは どんな立場から見ているか の違いです。もっと言えば、

  • プログラマーなど 作り手 から見たら「プログラム」
  • ユーザーやエンジニアなど 使い手 から見たら「ソフトウェア」

と呼びます。

しかしながら、(特にプログラマーやエンジニアなどは)作り手にも使い手にもなりますし、作り手ではないユーザーさんもプログラムという言葉使っているので、両者の使い分けは混沌と言えます。

以降では「ソフトウェア」を使うことにします。

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

次にソフトウェアと、その一種であるアプリケーションについてです。

アプリケーションとはそもそも 応用(アプリケーション)ソフトウェア を指します。

実はソフトウェアには基本と応用があって、以下のようになってます。

  • 基本ソフトウェア …… OS のこと。Windows とか Mac とか Android とか。
  • 応用ソフトウェア …… OS の上で動くソフトウェア全般。要するにアプリ。

ソフトウェアという言葉には、基本と応用の 2 つがあるんですね。しかしながら、 アプリケーションソフトウェアを単にソフトウェアと略すこともあります。そこは文脈次第です。

とりあえず「アプリケーション=ソフトウェア」くらいに捉えておいて、「あれ、この文脈では "アプリ" という言葉だといまいちよくわからんな」となったら "ソフトウェア" の方(特に基本ソフトウェア)を意識してみましょう。

ツールとユーティリティ

最後にアプリケーションの一種であるツールとユーティリティについてです。

どちらも 実用的な小物アプリ といったニュアンスがあります。

実用的というと小難しく聞こえますが、要するにゲームなどエンターテイメントでない、どちらかといえば仕事や各種作業で使いそうなアプリのことです。

小物というのは、規模が小さいことです。個人のプログラマーがつくれる程度のブツだとか、さくっとダウンロードしてすぐに使えるとか、そんな感じのニュアンス。

で、これを踏まえた上で、ツールとユーティリティの違いですが、

  • ツールは個人的
  • ユーティリティは汎用的

このような違いがあると思います。

犬小屋でたとえるなら、

  • ツール:我が家で買っている犬のために、お父さんがつくった犬小屋
  • ユーティリティ:メーカーがつくった、(想定された犬種やサイズなら)どんな犬にも対応した犬小屋

こんな感じです。

しかし、これも絶対というほど定着したものではなく、現実には「ツール=ユーティリティ」くらいで捉えておけば困らないと思います。

製品や分野によって用語として定まっている

最後に一つだけ。

製品や分野によっては、用語として意味がきちんと定まっている 点に注意しましょう。

いくつか例を挙げます。

  • OS は基本ソフトです。基本アプリとは言いません。
  • Android アプリ。Android ツールとか Android プログラムなどとは言いません。
  • フリーソフト。フリープログラムとかフリーアプリなどとか言いません。

おわりに

プログラム、ソフトウェア、アプリケーション、ツール、ユーティリティ……IT 用語で頻出するこれら用語の、ニュアンスの違いについてまとめてみました。

理解の助けになりましたら幸いです。