「計算機科学」の版間の差分

→‎教育: CS専攻のカリキュラムについて、ACMの標準カリキュラムを参考に書き直す。プログラミングの位置付けはそんなに低くない
(→‎教育: CS専攻のカリキュラムについて、ACMの標準カリキュラムを参考に書き直す。プログラミングの位置付けはそんなに低くない)
 
== 教育 ==
一部の大学には計算機コンピュータ科学を専攻とする部門があり、計算理論やアルゴリズムを主に教えている。カリキュラムには[[離散数学|離散構造]]、[[プログラミング (コンピュータ)|プログラミング]]、[[計算理論]]、[[アルゴリズム解析]]、[[形式手法]]、[[並行性|並行性理論]]、[[データベース]]、[[コンピュータグラフィックス]]、システム解析などがある。[[プログラミング (コンピュータ)|プログラミング]]も教えることが多いが、単に計算機科学の他の領域のサポートのために教えているに過ぎない
 
他のコンピュータ科学以外の専攻においても、プログラミングが教えられているが、それらはもっぱら、コンピュータ科学の一部としてよりも、物理や化学、あるいは[[計算言語学]]といった分野において、コンピュータを道具として使うためのものとして教えられている。
他の大部分の大学では、理論よりはむしろプログラミングが重要なカリキュラムとして扱われている。このようなカリキュラムはソフトウェア産業に就職する技術者を育成することを目的としている。プログラミングの実用的な側面は[[ソフトウェア工学]]と呼ばれる。しかし、「ソフトウェア工学」の意味、「プログラミング」の意味に関しては様々な議論がある。
 
: Peter J. Denning, ''[http://portal.acm.org/citation.cfm?id=971303&dl=ACM&coll=&CFID=15151515&CFTOKEN=6184618 Great principles in computing curricula]'', Technical Symposium on Computer Science Education, 2004年 参照されたい(英語)。
 
[[情報処理学会]]のカリキュラムJ97(『大学の理工系学部情報系学科のためのコンピュータサイエンス教育カリキュラム J97<ref>{{Cite web |date= |url=http://www.ipsj.or.jp/12kyoiku/J97-v1.1.pdf|title=大学の理工系学部情報系学科のためのコンピュータサイエンス教育カリキュラム J97(第1.1版)|format=PDF|publisher=[[情報処理学会]]|date=1999-09|accessdate=2013-03-22}}</ref>』)では、「コンピュータサイエンス」を「[[情報工学]]、[[情報科学]]、計算機科学、[[計算機工学]]などの総称」としているが、それぞれの語に特に定義を与えているわけでもないため、語がてんでに使われている実態を反映したものと思われる。