コンソールアプリケーション
【英】console application
コンソールアプリケーションとは、CUI上で動作するプログラムのことである。
コンソールアプリケーションは、UNIX系OSにおけるシェル、MS-DOSやWindowsにおけるコマンドプロンプトなどから実行されるもので、GUI(Graphical User Interface)アプリケーションと異なり、ウィンドウを作成せず処理を行う。
コンソールアプリケーションでは、プロンプトに対してコマンドと各種パラメータを入力して対話的に操作することが基本であるため、WindowsやMacOSなどのGUIアプリケーションと比べて操作の敷居が高い。UNIX系OSでもGUIアプリケーションは存在するが、OS自体がCUIをベースにしていることに加えてサーバーとしての用途が多いため、多くの場合コンソールアプリケーションが利用されている。
コンソールアプリケーションでは、ウィンドウを作成しないためGUIアプリケーションと比較してリソースの消費は少なく、CPUパワーをあまり求めないため、古いマシンでも軽快に動作することが多い。
コンソールアプリケーション
![]() | この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。(2019年3月) |
コンソールアプリケーション(英: console application)は、キャラクタユーザインタフェース(CUI)またはテキストユーザインタフェース(TUI)のような、テキストコンソールを経由した入出力のみを必要とし、グラフィカルユーザインタフェース(GUI)を必要としないアプリケーションソフトウェアである。コンソールアプリ(英: console app)とも表記される。
概要
GUIアプリがウィンドウシステムなどを必要とするのと比べ、標準ストリームなど機種依存の少ない環境のみで動作できることなどが利点である。GUI環境中では、端末エミュレータを通して、またWindowsのWin32コンソール(cmd.exeはこれを利用して実装されている)のようなフレームワークの中で動作させられる。
一般的に任意の数のコマンドライン引数を入力として受け取ることができ、整数値による終了コード(終了ステータスコード)を起動元に返すことができる。シェルスクリプトを使って入力を変えながらコンソールアプリケーションを連続的に起動・実行・終了したり、終了コードに応じて分岐したり、出力結果を別のアプリケーションの入力に使ったりすることもできるため、定型処理の自動化(バッチ処理)に適している。
数値や文字列のような、装飾を必要としない単純なデータであれば、標準出力によって処理結果をコンソール上で即座に確認しやすいため、標準入出力をサポートする汎用プログラミング言語の基礎学習や、プログラム部品の単体テスト[1]あるいはパフォーマンス(性能)テストなどにも適している。
プログラミング言語の処理系(コンパイラやリンカなど)、バージョン管理システムといったツールは、バッチ処理ができるようにコンソールアプリケーション(コマンドラインツール)として実装されている。ただし直感的に操作できるようにするためにGUIフロントエンドでラップされることもある。
Visual StudioやRAD Studioのような統合開発環境には、コンソールアプリケーションのプロジェクトテンプレートが用意されている[2][3]。XcodeではmacOS向けに、「Command Line Tool」という名称のプロジェクトテンプレートが用意されている[4]。
一方、AndroidやiOSといった、コンソールが用意されていない(エンドユーザー向けに開放されていない)モバイルオペレーティングシステムではコンソールアプリケーションを利用できず、またサードパーティが自由に開発することもできない。
例
![]() | この節の加筆が望まれています。 |
脚注
出典
関連項目
- console applicationのページへのリンク