人工知能(英語版)コンピュータ科学(英語版)プログラミングツールとは、コンピュータなどのプログラミングに使う、ツールと呼ばれるコンピュータ・プログラム類のことである。この記事ではもっぱら、コンピュータ・プログラミング用のツールについて扱う。歴史[編集]プログラマブルなコンピュータの登場と同時に、プログラミングを支援するコンピュータ・プログラムというものも作られ始めた。コンパイラやインタプリタといった、プログラミング言語処理系などもツールに含めることもある(言語処理系以外の、専ら支援するツールのみを指すこともある)。原始的なものの例としては、紙テープやパンチカードなどを2組用意し、それぞれの内容が同じであることを確認することで、入力ミスがないかどうかチェックする、といったようなものがあった(これはごく単純なため、ハードウェアによるものもあった)。いったツールを多用し、それらをパイプで連結して使ったことでよく知られるようになった。ソフトウェアツールという言葉は、ブライアン・カーニハンらの同名の著書(日本語版は『ソフトウェア作法』)に由来する。これらは、プログラミングツールというよりは、本来あらゆるデータ処理の対象に使えるものであり、そのためプログラミングにも使える、と言ったほうが正しい(そもそもUNIXの開発された動機のいくつかのうちの一つに、ベル研内の、特許などをはじめとした書類のデータ処理のためだったのである。roffなどがUNIXの標準ツールだったのはそういう由来による)。いったツールは、単純で軽量なものを組み合せて使う、という所に本領がある。UNIXとはまた異なる文化として、LISPやSmalltalkの文化があった。Smalltalkでは、クラスブラウザによりクラスライブラリを簡単に追いかけることができることや、その場その環境のプログラムを書き換える、といったことができた。そのGUI環境の表面だけは、後にMacintoshが引き継ぐが、そのような自由な環境という精神はむしろ(ジョブズにより)引き継がれなかった。元々は、シングルタスク環境であったMS-DOSにおいて、1個のアプリケーションで編集・コンパイルのフロントエンド・デバッガ等、各種の作業を行えるようにしたものから始まっている。前述のSmalltalkのような環境を、パーソナルコンピュータでなんとか実現しようとしたもの、と見ることもできる。Studioに置き換わりつつある)。分類[編集]とりあえず適当に例を挙げる。性能解析ツールデバッグツール静的コード解析と形式的検証ツールソフトウェアテストツールメモリ使用量測定ツールアプリケーション構築ツール統合開発環境ツール一覧[編集]ソフトウェアツールには様々な形態がある。Fence、DUMA、Insure++。C言語では、メモリリークの検出は容易ではない。そのためメモリデバッガを使ってメモリリークがないか検証する。プログラム実行中のデータ内容などを表示して確認するツール。プログラムの実行経路を表示して確認するツール。多数のツールの機能を組み合わせて1つのパッケージにしたものである。一般に、あるプロジェクト内のファイル群の内容を検索するなどといった単純な作業をより簡単にできる。企業レベルのアプリケーションの開発によく使われる。以下に主なIDEを挙げる。System(英語版)におおよそ従っています。(日時は個人設定で未設定ならばUTC)。表示-継承ライセンスの下で利用可能です。追加の条件が適用される場合があります。詳細は利用規約を参照してください。Cookieに関する声明モバイルビュ。