南山大学

 
指定
期間
春学期
単位
年次
2
担当者
真野 芳久
他の科目との関連 「ソフトウェア作成基礎」に引き続いてプログラミングを学ぶ。実習科目の「情報通信システム開発実習」と連動する。
他学科履修 不可
副題
講義内容 アルゴリズム的に高度なプログラムおよび大規模なプログラムを作成できる能力の養成を目的として、木構造などの動的データ構造、プログラム開発時における抽象化概念などについて述べる。情報通信システム開発実習で、分散システム設計応用と融合させ、実際にプログラム開発の実習を行なう。
講義計画 「ソフトウェア作成基礎」で学んだC言語に関する知識を前提として、より高度なプログラミングのための知識と技術を学ぶ。

以下の順序で講義を進める予定である。

・4回程度:プログラミングの基本かつ重要な注意点
 プログラムの形式、ループ途中の状態、関数の活用、再帰的思考方法

・2回程度:プログラミング技法
 抽象化の道具としての関数、定数配列、番兵、バックトラックプログラミング

・4回程度:動的データ構造の基本操作と応用
 リスト構造、双方向リスト、木構造、二分探索木

・2回程度:大規模プログラミングのための方法論
 モジュラプログラミング、部品プログラミング、データ抽象

基本的なアルゴリズム、ファイル処理、ビット処理などについては、これらの説明で使うプログラムと関連付けて随時述べることになる。
評価方法 授業中に実施する数回の小テスト、および定期試験の結果から総合的に評価する。
テキスト B.W.Kernighan, D.M.Ritchie 著、石田晴久訳
「プログラミング言語C(第2版)」共立出版、および講義資料
その他