RIGHT:[[ProgI]]
#br
#br
CENTER:&size(24){''プログラム・プログラミングとは?''};
#br
#br
#br
----
#contents
----
*プログラム(Computer programs) [#yc03dd31]
-:番組、計画、予定、カリキュラム、要項、課程
-Computer programs:コンピュータを動かすための処理手順であり、手順を具体的に指示する命令の集まり。
-命令の体系=Computer Languages(プログラム言語 or プログラミング言語)
--命令=機械語。機械語(2進数)はCPU毎に異なる。
--命令をシンボリックに記述した言語=アセンブリ言語:低級言語
--命令を自然言語に近い形で記述した言語=高級言語(C, Fortran, Pascal, Cobol, Java, Basic…misc.)
---コンパイラ型言語 & インタープリタ型言語(スクリプト言語)
-プログラム言語の種類→[[The Language List>http://people.ku.edu/~nkinners/LangList/Extras/langlist.htm]]

*プログラミング(Computer programming) [#lce90d85]
-プログラムを作成する過程・プロセス全般

*構造化定理 [#w3248310]
-ベームとヤコピーニにより1966年証明されたもの。
--1つの入り口と1つの出口を持つようなプログラムは、「順次・反復・分岐」の3つの基本的な論理構造によって記述できる。

*構造化プログラミング [#hcf2820c]
-構造化定理をもとに、ダイクストラにより提唱されたもの。
--コンピュータのプログラム上の手続きをいくつかの単位に分け、メインとなる処理では大まかな処理を記述し、サブルーチンによって細部を記述していく方法。
--サブルーチン:「同じ値を渡せば常に同じ結果が得られる」サブ処理 → こうすることでプログラムのモジュール(プログラムを構成する要素、要素機能の集合)性を高め、設計・保守が容易となる。
-構造化プログラミングの構成要素
++''順次''
---順構造とも言われる。プログラムに記された順に、逐次処理を行なっていく。プログラムの記述とコンピュータの動作経過が一致するプログラム構造。
++''反復''
---一定の条件が満たされている間処理を繰り返す。
++''分岐''
---ある条件が成立するなら処理Aを、そうでなければ処理Bを行なう。

*Programming Ability [#t11b5e37]
-プログラミングに必要な6つの才能(A.P.Ershov)
+第一級の数学者の論理性
--出現するケースをもれなく拾いあげる能力 
--実行の条件を正確に決める能力 
+エジソンのような工学の才能 
--性能やメモリ量など、現実的な条件をクリアする能力 
+銀行員の正確さ 
--ケアレスミスをおこさず、スピーディにプログラミングを行う能力 
--ケアレスミスで1つの命令を間違えただけで、システムがダウンすることもある。 
+推理作家の発想力 
--機能の分割やクラスの抽出を考えだす能力 
--決められた手順でやるだけではなく、発想力も大事になってくる。 
+ビジネスマンの実務性 
--スケジュールを立てる能力 
--協同作業における手順を考える能力 
--チーム内外の多くの利害関係社とうまく調整できる能力 
+協同作業をいとわず、経営的な関心も理解する性向 
--ユーザのビジネスを理解し、何が必要かを考え、協力して取り組める能力 
--ユーザとのコミュニケーションにおいて非常に重要 

----


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS