ツールとは
ツールとは、おおむね単一の機能しか持たないプログラムのことである。「電卓」「メモ帳」「文字数を数えるだけのプログラム」のように、1つの作業だけを行うことに特化している。機能が1つに絞られている分、仕組みが単純で、初めてプログラムを作る人でも理解しやすい。
本講座の第3章では、こうしたツールをいくつも作っていく。次項以降で扱う予定のツールを下表に示す。
本講座の第3章では、こうしたツールをいくつも作っていく。次項以降で扱う予定のツールを下表に示す。
| 項 | ツール名 | できること |
|---|---|---|
| 3.2 | パスワード生成ツール | 条件を指定してランダムなパスワードを作る |
| 3.3 | PDFファイル結合ツール | 複数のPDFファイルを1つにまとめる |
| 3.4 | メモ帳 | 短い文章を保存・検索・削除する |
| 3.5 | ToDoリスト | やることを期限・優先順位付きで管理する |
| 3.6 | 単位・通貨換算ツール | 長さや重さ、通貨などを換算する |
どれも、Word や Excel のような多機能なアプリケーションとは異なり、1つのことしかしないという点で共通している。
アプリケーションとは
アプリケーションとは、市販やオープンソースで提供され、さまざまな機能を備えているプログラムのことである。文書作成のWord、表計算のExcel、画像編集のPhotoshop、Webページを見るためのブラウザなどが該当する。1本のアプリケーションの中に、印刷、保存、検索、書式設定といった多数の機能が組み込まれている。

一般的なソフトウェアの分類では、アプリケーションソフトウェアを補助する役割を担うものとしてユーティリティソフトウェアがある。ユーティリティソフトウェアとは、コンピュータの分析・設定・保守など、補助的な機能を提供するソフトウェアの総称であり、本講座でいう「ツール」は、このユーティリティソフトウェアに近い性格を持つ(ユーティリティソフトウェア、アプリケーションソフトウェア)。
一般的なソフトウェアの分類では、アプリケーションソフトウェアを補助する役割を担うものとしてユーティリティソフトウェアがある。ユーティリティソフトウェアとは、コンピュータの分析・設定・保守など、補助的な機能を提供するソフトウェアの総称であり、本講座でいう「ツール」は、このユーティリティソフトウェアに近い性格を持つ(ユーティリティソフトウェア、アプリケーションソフトウェア)。
ツールを自作する理由
ツールもアプリケーションも、プログラムであることに変わりは無い。しかし、アプリケーションを作るには、機能同士の相互作用や、組み合わせテストなど検討すべき点が多岐にわたり、完成させるまでに相応の時間がかかる。そのため、アプリケーションをゼロから自作することは初学者向けではない。

一方で、日ごろアプリケーションを利用していると、「自分が欲しい機能が無い」という場面に出会うことがある。たとえば、Excelには計算やグラフ作成の機能はあるが、自分専用の単位換算の機能は無い。ブラウザにはWebページの表示機能はあるが、複数のPDFファイルをまとめて1つにする機能は付いていないことが多い。

そうした「欲しいのに無い機能」を、単機能のツールとして自分の手で作れるようになること。これが、本講座の隠れた目的である。次項からは、実際にツールを1つずつ作りながら、その作り方を身につけていく。
一方で、日ごろアプリケーションを利用していると、「自分が欲しい機能が無い」という場面に出会うことがある。たとえば、Excelには計算やグラフ作成の機能はあるが、自分専用の単位換算の機能は無い。ブラウザにはWebページの表示機能はあるが、複数のPDFファイルをまとめて1つにする機能は付いていないことが多い。
そうした「欲しいのに無い機能」を、単機能のツールとして自分の手で作れるようになること。これが、本講座の隠れた目的である。次項からは、実際にツールを1つずつ作りながら、その作り方を身につけていく。
参考サイト
- アプリケーションソフトウェア:Wikipedia
- ユーティリティソフトウェア:Wikipedia
(この項おわり)

まず本項で、ツールとアプリケーションという2つの言葉の違いを整理する。ツールとは、おおむね単一の機能しか持たないプログラムのことである。一方、アプリケーションとは、市販やオープンソースで提供され、さまざまな機能を備えたプログラムのことである。
アプリケーションを完成させるには、機能同士の相互作用や組み合わせテストなど検討すべき点が多く、時間がかかるため初学者向きではない。本講座では、普段使っているアプリケーションに欲しい機能が無いときに、その機能だけを持つツールを自分の手で作れるようになることを、隠れた目的としている。