翻訳と辞書
Words near each other
・ コンピュータチェス
・ コンピュータディスプレイ
・ コンピュータトモグラフィー
・ コンピュータネットワーク
・ コンピュータビジョン
・ コンピュータフェスティバル
・ コンピュータフォレンジクス
・ コンピュータフォレンジック
・ コンピュータフォレンジックス
・ コンピュータプログラマ
コンピュータプログラミング
・ コンピュータプログラミングの概念・技法・モデル
・ コンピュータプログラム
・ コンピュータミュージック
・ コンピュータリソース
・ コンピュータリテラシ
・ コンピュータリテラシー
・ コンピュータロールプレイングゲーム
・ コンピュータ・アソシエイツ
・ コンピュータ・アプライアンス


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

コンピュータプログラミング : ウィキペディア日本語版
プログラミング (コンピュータ)

コンピュータのプログラミング()とは、コンピュータプログラムを作成することにより、人間の意図した処理を行うようにコンピュータに指示を与える行為である。(コンピュータ以外にも「プログラミング」という語は使われるが、それらについてはこの記事では扱わない)
==プログラミングの過程==
まず、そのプログラムの目的、さらには「本当に解決したい問題は何なのか」ということについて十分な検討が必要である(ワインバーグの著書などを参考のこと)。
続いて、全体のスタイルをおおまかに2つに分けると「トップダウン設計」と「ボトムアップ実装」〔http://catb.org/jargon/html/B/bottom-up-implementation.html〕になる。「なんとかの設計と実装」といったようなタイトルの本が多くあるように、どちらも重要だが、一般に対象についてよくわかっているものについてのプログラミングでは前者のスタイル、よくわかっていない場合は後者のスタイルとする。「設計された通りに実装することは不可能」といった場合に開発体勢の問題などから正しい対処がされないまま、設計と実装がちぐはぐになったプロダクトは悲惨である。また反復型開発では、あまりに大きなプログラムを一方通行のプロセスで書くことは最初から避けるものとされる。
目的のプログラムを書き始める前に、まずテストを書く、というスタイルもある(テストファースト。テスト駆動開発を参照)。あるいは対象が有限オートマトンプロセス計算など、形式手法的な方法でモデル化できるのであれば、まずはそのようにすべきである(本来はモデル駆動というのはそのような意味のはずである)。
最初の段階として、トップダウン設計では軽量プログラミング言語や、非形式的な記述が適している場合には擬似言語擬似コード)などで全体設計を検討する。ボトムアップ実装では、階層構造の「葉」にあたるサブルーチンの実装を検討する〔たとえば、アクションゲームで1フレーム中に行わなければならない計算が可能かどうかが、開発の最後までわからなかったりしては困るだろう。〕。なお、流れ図(フローチャート)はコンピュータの黎明期である1940年代後半に、当時のプログラムは機械語〔ないし極く単純なアセンブリ言語〕で読むのも書くのも難しかったことから、補助のために使われその当時には有用性が高く(:en:Herman Goldstine#The First Draftに当時の流れ図がある)、MIXという機械語を使っている教科書『The Art of Computer Programming』などでは使われているが、現代のプログラミング言語でも有用と信じられていることもあるようである。
プログラミングの過程で、ソースコードを記述することを特に指してコーディングという。元々は機械語が符号であること、ないしアセンブリ言語のニモニックがまるで暗号みたいだ(正確には「コード」は暗号の1分類。コード (暗号) を参照)、というところからコンピュータプログラムに「コード」という語が使われ、それを書く作業というきわめて限定された意味の語だったが、近年はHTMLを書くという意味にも使われるなど濫用され気味である(なお、デモシーンでは機械語のテクニックを駆使して高効率のプログラムを書く、というような本来の意味に近い意味で使われている)。
可能な限り避けたいものではあるが、プログラムにはバグ(bug)の混入が避けられない。場合によっては仕様にバグがあることもある(もっとひどい場合には標準規格のようなものでもバグがある)。デバッグ(debug)とはバグを取る作業であり、プログラミングの過程に必要なものとして見積りなどでは含めておかなければならない〔ただし、デバッグがあることをあてにしてルーズにプログラムを書くことは厳に戒められねばならない。バグにも種類があり、たとえば、インタプリタでも最初の構文解析で検出されるような簡単なものなら問題ないが、突き止めるのが極めて困難な部類のバグ(特異なバグを参照)はできる限り早い時点で回避されるに越したことはない。〕。
一旦の完成の後も、ある程度の期間使われるプログラムでは、使用しているうちに、プログラムの性能や機能に新しい要求が発生したり、プログラムの設定を変更する必要がでてきたり、テストにより発見できなかったバグが見つかることがある。このような事態に対応するため、プログラムを保守していく作業が必要になる。

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「プログラミング (コンピュータ)」の詳細全文を読む

英語版ウィキペディアに対照対訳語「 Computer programming 」があります。



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.