到達目標
□GUIプログラミングの基本的な手法について説明できる
□木構造の基本的な事項について説明できる
□グラフの基本的な事項について説明できる
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | GUIプログラミングの基本的な手法について具体的に説明できる | GUIプログラミングの基本的な手法について説明できる | GUIプログラミングの基本的な手法について説明できない |
評価項目2 | 木構造の基本的な事項について具体的に説明できる | 木構造の基本的な事項について説明できる | 木構造の基本的な事項について説明できない |
評価項目3 | グラフの基本的な事項について具体的に説明できる | グラフの基本的な事項について説明できる | グラフの基本的な事項について説明できない |
学科の到達目標項目との関係
教育方法等
概要:
コンピュータを操作するインタフェースの基本として、GUIプログラミングを取りあげ、いくつかの簡単な例を題材として学習する。
また、基本的なデータ構造である木構造、グラフについても、その特徴やコンピュータ上での扱い方について、学習する。
授業の進め方・方法:
座学による講義とプログラミングの演習を併用して進めます。
注意点:
2年次までに学んだC言語の基礎知識、および3年次までに学んだアルゴリズムとデータ構造に関する知識については理解していることを前提としています。
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
前期ガイダンス |
前期に扱う話題、授業の進め方、前提知識を確認する
|
2週 |
プログラミング言語概論 |
GUIプログラミングに使用するプログラミング言語の概要、およびGUIプログラミングの基本構造を理解する
|
3週 |
プログラミング環境概論 |
GUIプログラミングを行う環境について理解し、簡単なサンプルプログラムをコンパイルし実行できる
|
4週 |
コントロール |
ツールボックスのコントロールを配置できる
|
5週 |
入力データの扱い |
コントロールを通じて入力されたデータをプログラム上で取り出すことができる
|
6週 |
イベント処理 |
ボタンなどの操作にともなうイベント処理の流れを説明できる
|
7週 |
タイマー |
タイマーを利用した際の処理の流れを説明できる
|
8週 |
マウス・キーボード |
マウス入力・キーボード入力のイベント受け取りについて理解できる
|
2ndQ |
9週 |
木構造 |
木構造の基本事項を確認する
|
10週 |
木構造 |
2分探索木の基本事項を理解する
|
11週 |
木構造 |
2分探索木への要素の挿入と削除の操作を理解する
|
12週 |
木構造 |
AVL木の基本事項を理解する
|
13週 |
木構造 |
ヒープ木の基本事項を確認する
|
14週 |
木構造 |
ヒープ木の操作を理解する
|
15週 |
前期期末試験 |
|
16週 |
前半のまとめと振り返り |
|
後期 |
3rdQ |
1週 |
後期ガイダンス |
後期に扱う話題を理解し、前提知識を確認する
|
2週 |
ビットマップ画像 |
GUIプログラム上でビットマップ画像を表示できる
|
3週 |
フォント |
GUIプログラム上のフォントの設定・変更ができる
|
4週 |
図形描画 |
GUIプログラム上で円などの基本図形を描画できる
|
5週 |
アニメーション |
タイマーと基本図形描画を利用して、画面上の描画が時々刻々変化する記述ができる
|
6週 |
メニュー・ダイアログボックス |
メニューおよびダイアログに関する処理の違いについて説明できる
|
7週 |
GUIプログラミング演習 |
ここまでに学んだGUIプログラミングに関する知識を復習し、プログラムに利用できる
|
8週 |
後期中間試験 |
|
4thQ |
9週 |
グラフの基礎 |
グラフの基本事項を確認する
|
10週 |
グラフの基礎 |
プログラム上でのグラフの扱いを理解する
|
11週 |
グラフの基礎 |
グラフの探索(幅優先)の基本事項を理解する
|
12週 |
グラフの基礎 |
グラフの探索(深さ優先)の基本事項を理解する
|
13週 |
グラフの基礎 |
重み付きグラフのアルゴリズム事例(ダイクストラ法)を理解する
|
14週 |
グラフの基礎 |
有向グラフのアルゴリズム事例(トポロジカルソート)を理解する
|
15週 |
後期期末試験 |
|
16週 |
後半のまとめと振り返り |
|
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 80 | 0 | 0 | 0 | 0 | 20 | 100 |
基礎的能力 | 60 | 0 | 0 | 0 | 0 | 10 | 70 |
専門的能力 | 20 | 0 | 0 | 0 | 0 | 10 | 30 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |