KGC


[ English ]
プログラミング方法論

お知らせ


科目名プログラミング方法論 [ シラバス ]
http://pitecan.com/Index/programming.html

プログラミングという行為について広い視野から概観しつつ、より進んだプログラミング方法論を実践的に学ぶ。計算機の発明から現在に至るまで、計算機のプログラミングはテキストベースのプログラム言語と処理系を用いる方法が主流であったが、誰もがどこでもネットワークや計算機を利用するユビキタスコンピューティングの世界が実現しつつある現在、プログラミングの概念は拡大し、様々な形態のプログラミングが万人のものになりつつある。計算機科学として扱われてきた従来のプログラミングパラダイムだけでなく、実世界の様々な状況におけるプログラミングについて考える。


担当者 増井 俊之
授業期間2014年春学期 月曜日2時限
授業レベル 学部
参考文献 参考文献リスト


授業ビデオとマテリアルFlash Player
授業ビデオの再生にはFlash Playerが必要です。
受講したい回をクリックしてください。
第01回2014/04/07 ガイダンス
- 講義資料 (URL)
本講義で扱う「プログラミング」の範囲を定義し、講義の概要を解説する。
テ
キストベースのプログラミング言語を利用する一般的なプログラミングか
ら、
実世界でのプログラミング/ビジュアルプログラミングまで幅広いプログラミ
ング活動を対象とする。


第02回2014/04/14 文芸的プログラミング
- 講義資料 (URL)
充分な知的作業の結果としてプログラムを作成する場合、最終的なソース
コー
ドのみでその意図を表現することはできないため、プログラムの意味すると
こ
ろを何らかの文書としてプログラムとは記録しておく必要がある。プログラ
ム
の開発と文章の作成を並行して行なうことにより、両者が常に整合がとれる
よ
うにする「文芸的」プログラミング手法を解説する。


第03回2014/04/21 予測/例示プログラミング
- 講義資料 (URL)
どのように計算を行なうのかを指示するかわりに、どのような結果が得られ
る
べきかをユーザが指示し、その方法をシステムに推論させることによってプ
ロ
グラミングを行なう「例示プログラミング」の概念を紹介し、データ圧縮と
も
関係が深い予測システムとの関連を解説する。


第04回2014/04/28 文字列プログラミング
- 講義資料 (URL)
文字列の検索アルゴリズムやパタンマッチアルゴリズムの利用法と実装法及
び、パタンマッチを利用者してパズルやゲームを解く手法について解説す
る。
文字列の変換操作にもとづくマクロプログラミングについても解説する。ま
た、ゲームなどに必要な探索手法についても解説する。


第05回2014/05/12 状態遷移プログラミング
- 講義資料 (URL)
複雑な動作をするシステムや機器は状態遷移機械として表現できることが多
い。様々なイベントに対応する状態遷移を簡潔に記述し、プログラムとして
表
現する技法について述べる。


第06回2014/05/19 並列プログラミング
- 講義資料 (URL)
多くのプログラミングシステムは並列実行機能をサポートしておらず、逐次
的
な計算しか行なうことができないが、複数の事象が同時に起こる場合があっ
た
り、システムが本質的に複数の対象を扱わなければならないような場合に必
要
となる並列プログラミングの技法について解説する。


第07回2014/05/26 ビジュアルプログラミング
- 講義資料 (URL)
図形を操作する場合や並列動作を扱う場合など、プログラムで扱う対象や操
作
を図形的に表現することにより、テキストベースのプログラミングより作成
や
理解が簡単になることがある。このような「ビジュアルプログラミング」の
技
法について述べる。


第08回2014/06/02 インターネットプログラミング
- 講義資料 (URL)
インターネットやWeb上の情報は、単に閲覧するものではなく積極的に加工し
活用する時代になっている。ネット上の情報を効果的に活用するためのプロ
グ
ラミング手法について述べる。


第09回2014/06/09 実世界プログラミング
- 講義資料 (URL)
ユビキタスコンピューティングで利用される計算機やセンサがインターネッ
ト
によって結合された現在、これらを有機的に関連づける全世界的なプログラ
ミ
ングが可能になってきた。このような「実世界プログラミング」の手法と効
果
について述べる。


第10回2014/06/16 進化的プログラミング
- 講義資料 (URL)
最適なパラメタを計算によって求めることができないような場合、遺伝的ア
ル
ゴリズムのような進化的アルゴリズムを用いることがあるが、進化的なアル
ゴ
リズムを用いてプログラムを自動生成しようとする方法について述べる。


第11回2014/06/23 ユーザインタフェースのプログラミング
- 講義資料 (URL)
ユーザとの対話が必要なシステムでは、様々なユーザの要求や操作ミスに対
応
必要があるためプログラミングが非常に複雑になりやすい。ユーザをシステ
ム の一部と考え、柔軟な対話性を実現するためのプログラミング手法につい
て述べる。


第12回2014/06/30 エクストリームプログラミング
- 講義資料 (URL)
品質の良いソフトウェアを作成するためには、実装と並行して充分なテスト
を
行ないながら開発するテストファーストプログラミング、 ふたり一組で作業
を行なうペアプログラミングといった手法が有効であると考えられている。
こ
のような手法を統合した、エクストリームプログラミングと呼ばれる開発手
法
について解説する。


第13回2014/07/07 人力活用プログラミング
- 講義資料 (URL)


第14回2014/07/14 雑多な話題



Powered by SOI Copyright(c) 2002-2019, Keio University Shonan Fujisawa Campus. All rights reserved.
このサイトの著作権について