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

出典: フリー百科事典『ウィキペディア(Wikipedia)』
アプリから転送)
ナビゲーションに移動 検索に移動

アプリケーションソフトウェア: application software、最近は略すとapp(s))は、ある特定の機能や目的のために開発・使用されるソフトウェア[1][2]で、コンピュータの操作自体のためのものではないもの[2]。たとえば、ワープロソフト表計算ソフトウェア、イラスト作成(お絵かき)用ソフトウェア、写真加工用ソフトウェアなど。 アプリケーションと(2番目の語を省略して)も呼ばれ[1]、特に最近ではアプリと略されることも多い[1]。「アプリケーション」は「応用」という意味なので日本語では「応用ソフト」とも呼ぶ[1](が、最近はかなり使用頻度が減った)。アプリケーションプログラム(応用プログラム)ともいい、コンピュータ・プログラムの一種である。

概要[編集]

アプリケーション・ソフトウェアという用語・概念と対比されている用語・概念というのは「システムソフトウェア」であり、システムソフトウェアのほうは、計算機のきわめて基本的な機能や資源を管理・提供する役割のソフトウェアであり、譬えて言えば「裏方的な存在」である。

アプリケーションソフトウェアの例としては、たとえば一般的な事務所(オフィス)での基本的な事務作業を支援する分野では、ワープロソフト表計算ソフトプレゼンテーションソフトウェア(会議資料作成)、データベース管理システム (DBMS) などが挙げられ、その他の分野では、映像音声などを再生するためのメディアプレーヤーペイントソフト画像編集ソフトウェア、動画編集ソフトウェアゲームソフト...と、現在では網羅的に列挙することは困難なくらい膨大な種類のアプリケーション・ソフトウェアがある。特にスマートフォン(という電話機能も持った携帯可能なコンピュータ)が登場し、スマートフォン上で動くアプリが流通するようになってからは、数(個々のソフトウェアの数、本数、個数)もジャンルの数も爆発的に増えてきており、最初はそれぞれ数百個程度の数で始まったのに、2020年時点で、Android上で動きGoogle Play Storeで流通しているアプリは約256万(個、種)、iPhone上で動くアプリは約185万(個、種)という状況である[3]。ジャンルも、個人が仕事抜きで、きわめて私的に使うようなものの比率が圧倒的に増えてきている。→#モバイルアプリケーション

(アプリケーションソフトウェアの能力はさまざまであり)テキストを操作するアプリケーションもあれば、数式、グラフィックス、あるいはこれらの組合せを操作するアプリケーションもある。ワードプロセッサのように特定の作業に特化することで強力な計算能力を提供するものもあれば、個々の作業をこなす能力は低くても、いくつかのアプリケーションを統合したソフトウェアもある[4]

組み込みシステムやデジタル腕時計、簡易的なゲーム機などでは、アプリケーションソフトウェアとシステムソフトウェアは利用者から見て区別できない場合がある。例えば、ビデオテープレコーダDVDプレイヤー電子レンジなどの制御は、アプリケーションソフトウェアとシステムソフトウェアの組み合わせによって実現されることがあるが、そのような機器内部の組み合わせは、利用者には区別することができない。また、アプリケーションとシステムソフトウェアを分けずに作成されている場合も有る。

なお、世の中の多くの人が共通的に利用できるものとして、汎用化して売り出したものをパッケージソフトウェアと呼ぶ。会計処理や給与計算、製造業小売業などの多くの分野に対して、業務用や会計用、人事や査定用のパッケージソフトウェアが販売されている。

近年のパッケージソフトウェアには、Java EEApache Strutsを利用した、ウェブアプリケーションサーバ上で稼働するものがある。2000年代初期より、iアプリなど、携帯電話上で動くアプリケーションソフトウェアも登場した。

制作方法

アプリケーション・ソフトウェアの制作(開発)というのは、近年では一般に統合開発環境を使って行われている。→#アプリケーションソフトウェアの制作

用語論[編集]

OSとの線引き

オペレーティングシステムなどのシステムソフトウェアとアプリケーションソフトウェアの境界は様々であり、オペレーテイングシステムの製造者によって異なる。利用者の間では境界は様々であり、製造者と同じ考え、OSのインストールパッケージに含まれる物はアプリケーションとしない、小規模なソフトウェアはアプリケーションとしない、シェルはアプリケーションとしない、などとしばしば議論の元となる。

コンテンツとの関連

コンテンツは広義には全ての具体化されたソフトウェアを含むことがあるが、アプリケーションソフトウェアと対比される場合には、該当ソフトウェアが作製、編集、出力、管理する対象物を指す。多くはコンテンツ自体がデジタルデータである。例えば、画像処理ソフトウェアはアプリケーションソフトウェアであり、作製・編集されたデジタル画像をコンテンツと称する。

分類[編集]

さまざまな分類法がある。

たとえばコンピュータなどの種類で分類して、スーパーコンピュータ用 / メインフレーム用 / 汎用PC用(Windows用 / Macintosh用) / スマートフォンタブレット用 (Android用 / iOS用) / 携帯電話フィーチャーフォン)用...などと分類する方法がある。

目的とする機能や仕事の大まかな分類にもとづいて以下のような分類が行われることもある。

  • コンテンツ開発ソフトウェア / コンテンツアクセスソフトウェア  - コンテンツの作成を行うか
  • プロダクティビティ・ソフトウェア - 以前は「オフィスソフト」などと分類していたが、最近はproductivity(software)と分類することが一般的になってきている。
  • プロダクティビティ・スイート[5][6][7](オフィススイート) - 文書を作成するワープロソフトや、表計算ソフト、プレゼン資料作成ソフト、等々がひとつのパッケージにされているもの。かつては各社とも「オフィス・スイート」と呼んでいたが、その後近年になりそれがどのように使われているか実態調査したところ、実際に使われている回数・頻度というのはオフィス(事務所)ばかりでなく、むしろ個人・学校・家庭などでも使用され、というより、世の中全体ではむしろ個人・学校・家庭のほうが使用頻度が上回る場合があるということが判ったので、マイクロソフト社やアップル社でも「office suit」という呼称を止めて、「productivity suit 生産性スイート」と呼ぶようになってきており、業界全体がそれに追従しはじめている(日本では追従がワンテンポ遅れる傾向があるが、MSやAppleや大手の開発会社のサイトなどでは最近では日本語の説明でも「プロダクティビティ・スイート」や「生産性スイート」と呼び始めている。)。
  • 企業ソフトウェア / 企業基盤ソフトウェア
  • エンジニアリングソフトウェア / シミュレーションソフトウェア

おおまかに見れば以上のような分類があるわけだが、細かく見てゆけば、この世で行われている仕事の種類や、タスクの種類、あるいは(特にスマートフォンやタブレット向けのアプリケーション開発が活発化してからは)一般的な仕事上の必要性だけでなく、個々人の趣味や興味の種類の数に対応するほどの、膨大な種類のアプリケーションが日々作られているような状況になっている。

モバイルアプリケーション[編集]

まず、最近特に台数が圧倒的に増え、アプリケーションの数も他の種類のコンピュータよりも圧倒的に増えてきており、その開発に従事しているエンジニアの人数もすでに他種のアプリケーションを圧倒する状態になっている、スマートフォンやタブレット用のアプリケーションから解説することにする。

近年のスマホでは、購入時に、数十ほどのアプリケーションソフトウェアがあらかじめインストールされている(プリインストール)状態になっている。たとえば今仮に、Androidスマートフォンのうちシャープ製でソフトバンクから販売されているものを例にとると、以下のような状態である。

Chrome(Google社の純正webブラウザGoogle Chrome)、Duoビデオ通話用アプリ)、Facebook(SNSのFacebookにアクセスするためのアプリ)、Gmail(Gmailを送受信するためのアプリ)、Google(Google検索をするためのアプリ)、Gyao!(映画・アニメ・音楽を楽しむためのアプリ)、Gガイド番組表(テレビの番組表を見るためのアプリ)、Netflix(Netflixで配信されているコンテンツを見るためのアプリ)、OfficeSuit(オフィススイート(プロダクション・スイート)のアプリ)、PlayStore(Google Playに掲載されているさまざまなアプリを検索しそれをダウンロード・インストールするためのアプリ)、YouTube(Youtubeのコンテンツを視聴したり、データをアップロードするためのアプリ)、アルバム(スマホで撮影した写真を閲覧したり、ファイルを整理・整頓したりファイル名を変更するなどのためのアプリ)、カメラ(スマホに内蔵されたレンズCCDを使い、スマホをカメラとして使い撮影するためのアプリ)、カレンダー(暦の情報や当日が何日か判るカレンダーを確認したり、自分の予定などを記入しスケジュール管理もできるアプリ)、緊急速報メール(気象庁が配信する緊急地震速報津波警報などを自動受信し、持ち主に知らせてくれるアプリ)、ドライブ(Google Driveでのデータ保存や取り出しを管理できるアプリ)、マップ(Google Mapsで地球上のありとあらゆる場所の地図を見せてくれるアプリ)、プライムビデオ(Amazonプライム・ビデオを視聴するためのアプリ) [8]....

これでも実際のリストのまだ一部にすぎないが、ともかくこのように、スマートフォンのアプリでは、1980年代や1990年代にアプリケーションソフトウェアを分類していた時の、オーソドックスな(古臭い)カテゴリ枠ではもはや簡単に分類することができないような種類のアプリケーションが多数出現してきている。

さらにAnddroidフォンだと、Google Playに掲載されている250万種類以上のアプリケーションから自由に選んで、ダウンロードおよびインストールして使うことができる。しかも、一部に広告が少し表示されることを我慢すれば、ほとんどが無料である。開発者によっては、広告表示も一切無しで、アプリケーションを無料で人々に公開している。

携帯電話用アプリケーション[編集]

携帯電話(フィーチャーフォン)用のアプリは携帯アプリと呼ばれていた。


コンテンツ開発ソフトウェア[編集]

コンテンツ開発ソフトウェア (contents development software) とは、他者に発信するための印刷コンテンツや電子コンテンツを制作するためのソフトウェア。グラフィックアート、電子出版、マルチメディア開発などが含まれる。

コンテンツアクセス・ソフトウェア[編集]

コンテンツ・アクセス・ソフトウェア (contents access software) は、基本的には編集することなくコンテンツにアクセスするソフトウェアだが、コンテンツ編集機能を持つ場合もある。デジタルエンターテイメントの消費を目的としたり、デジタルコンテンツを出版するのに使われることもある。

教育ソフトウェア[編集]

教育ソフトウェア (educational software) は、コンテンツアクセスと似ているが、教材を提示するだけでなくテストを課すことで学習状況を管理する点が特徴的である。また、グループウェア的要素を持つことが多い。

プロダクティビティ・スイート(オフィス・スイート)[編集]

有名なアプリケーションスイートの一例としてはOpenOffice.orgを挙げることができる。ソフトウェアスイートであり、そこにはワープロソフト、表計算ソフト・プレゼン用ソフト・データベースソフト・ドロー用ソフトなど複数のアプリケーションソフトウェアがまとめて入っていて、しかもオープンソースであり、無料でダウンロードして利用できた。現在はLibreOfficeApache OpenOfficeとに分派しており、現在も使える。

複数のアプリケーションがひとまとまりにされたもの、一種のパッケージに同梱されたような状態になったものを、アプリケーションスイート (application suite) と呼ぶことがある。例としては、ワードプロセッサや表計算ソフトなどを同梱した、Microsoft OfficeOpenOffice.orgが挙げられる。スイート内の各アプリケーションの特徴としては、操作のユーザインタフェースに一貫性があり、表計算ソフトで作成したスプレッドシートをワードプロセッサの文書内に埋め込むなど、相互のデータのやりとりが考慮されていることが挙げられる。

インフォメーションワーカー向けソフトウェア[編集]

インフォメーション・ワーカー・ソフトウェア (information worker software) とは、組織内の個々のプロジェクトで、個人が情報を生成し管理するニーズに対応したソフトウェア。例えば、時間管理、資源管理、ドキュメンテーションツール、解析ツール、グループウェアなどがある。ワードプロセッサ、表計算ソフト、電子メールクライアントやブログクライアント、個人情報管理システム、各種メディアエディタなどは、様々なインフォメーションワーカーの仕事で使われる。

企業ソフトウェア[編集]

企業ソフトウェア (enterprise software) は、組織のプロセスやデータフローのニーズに対応したもので、大規模な分散環境であることが多い。例えば、財務管理、顧客関係管理 (CRM)、サプライチェーン・マネジメント (SCM) などがある。部門ソフトウェア (departmental software) は企業ソフトウェアの一種であり、大きな組織内のより小さな部分を扱う。例えば、出張旅費管理、ITヘルプデスクなどがそれに当たる。

企業基盤ソフトウェア[編集]

企業基盤ソフトウェア (enterprise infrastructure software) とは、企業ソフトウェアシステムをサポートするために必要な共通機能を提供するものを指す。例えば、データベースメールサーバネットワーク管理セキュリティ管理などがある。

シミュレーションソフトウェア[編集]

シミュレーションソフトウェア (simulation software) は、研究/訓練/娯楽などの目的で物理的システムや抽象的システムをシミュレーションするソフトウェア。

エンジニアリングソフトウェア[編集]

エンジニアリングソフトウェア (engineering software) は、各種製品開発に使われる。

スーパーコンピュータ用アプリケーションソフトウェア[編集]


アプリケーションソフトウェアの制作[編集]

近年では一般に、アプリケーションソフトウェアは統合開発環境(IDE)を使って制作(開発)されている。IDEというのは、プログラマがソースコードを記述する「エディタ」、ソースコードから実行プログラムを生成する「コンパイラ」、コードの不具合を発見・修正するための「デバッガ」など、プログラム開発のためのソフトウェア群(ツール群)をひとまとめにしたもののことである。

無料のものもあり、有料のものもある。複数のプラットフォーム向けに使えるIDEもある。特定のプラットフォーム専用のものもある。

ものすごく原始的で単純な(少ない文字数、バイト数の)ソフトウェアならば、テキストエディタ(と、PCなどにインストールされた素朴なコンパイラ)だけでも書くことは一応でき、コンピュータの歴史の初期にはそうしたやりかたが行われることは多々あったわけで、今日でも初心者に対するプログラミング講習の「最初の一歩」だけは、あえてそうした段階を一度踏ませることでコンピュータ内部で行われていることの現実を初心者にも理解してもらうという手順がとられることも多いが、今日では、その次の段階以降の「アプリケーション・ソフトウェア」と呼ぶにふさわしいくらいの機能を持ったソフトウェアを制作する場合は、基本的に統合開発環境を使って制作するものだと考えてよい。

Androidアプリの場合[編集]

Androidアプリ、つまりAndroid上で動くアプリの開発環境としては、たとえば以下のような選択肢がある。

開発に使われるプログラミング言語は、主にJavaPythonなど。

iOSアプリの場合[編集]

iOS上で動くアプリの開発環境は、

  • Xcode(Apple社公式の統合開発環境)

開発に使われる言語はObjective-CJavaPythonなど。

Windowsアプリケーションの場合[編集]

Microsoft Windowsの上で動くアプリケーションの制作(開発)を行う開発環境としては、たとえば以下のような選択肢がある。

  • Visual Studio(Microsoft社製の統合開発環境。Professional版は有料であるが、Visual Studio Communityというバージョンならば個人使用は無料。)
言語の選択肢としては(2019年版時点で)、C++C#Visual BasicF#PythonNode.js、HTML/JavaScriptTypeScriptといったところである。



脚注[編集]

[脚注の使い方]
  1. ^ a b c d IT用語辞典
  2. ^ a b Lexico, application software
  3. ^ [1]
  4. ^ Ceruzzi, Paul E. (1998). A History of Modern Computing. Cambridge, Mass.: MIT Press. ISBN 0262032554.
  5. ^ [2]
  6. ^ [3]
  7. ^ MS
  8. ^ シャープのAQUOS R compactのアプリのリスト、ソフトバンク社によるもの

関連項目[編集]