到達目標
1.分割したプログラムを開発できる.
2.適切なプログラム間のインターフェースを決めることができる.
3.初歩的なアルゴリズムとデータ構造を理解できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | サーバーとして正しく分割したライブラリーを作成できる. | 適切に分割したプログラムを作成できる. | プログラムを適切に分割できない. |
評価項目2 | 拡張性を持った適切なインターフェースが設計できる. | プログラム間の適切なインターフェースを決めることができる. | 場当たり的なインターフェースを作る. |
評価項目3 | hash等でより適切な関数を選択できる. | Linked Listやhashを適宜使用できる. | Linked List等が理解できない. |
学科の到達目標項目との関係
教育方法等
概要:
企業におけるプログラム開発は,多数の開発者が協力して行う.そこで,この授業ではその際に重要
となるプログラムの書き方や注意点について学ぶことを目的とする.
OSの環境やC言語の文法についてはすでに理解していることを前提とする.
授業の進め方・方法:
授業では教科書の前半部分をカバーし,できるだけ教科書に沿って授業を進める.
教科書に出てくるプログラム例は各自が入力しコンパイル・実行する必要がある.そのため,
自分専用のPCを持つことが望ましい.授業ではVM(Virtual Machine)上のOSを用いる.
注意点:
参考書:
開発ツールを使って学ぶ! C言語プログラミング,坂井弘亮,マイナビ
GNU Make 第3版,Robert Mecklenburg (著), 矢吹 道郎 (監訳) ,オライリージャパン
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
オリエンテーション:学習や開発に必要なPC環境に関する説明など. |
必要な環境を理解すること.
|
2週 |
PC環境の設定について |
VM上にLinuxをインストールできる.
|
3週 |
分割コンパイル:(1)分割コンパイルとリンクの方法 |
単純な分割コンパイルができる.
|
4週 |
分割コンパイル:(2)種々の宣言や変数のprefixについて |
分割コンパイルにおいて,正しく変数のprefixを使える.
|
5週 |
分割コンパイル:(3)ヘッダファイルの基本的な作り方,その他の注意点 |
クライアント側への情報としてのヘッダーファイルを書ける.
|
6週 |
ライブラリーの作成:(1)ヘッダファイルの作り方 |
クライアント側への情報としてのヘッダーファイルを書ける.
|
7週 |
ライブラリーの作成:(2)ライブラリ本体の作り方 |
プログラムの外部への公開,非公開を判断し,適切にプログラミングができる.
|
8週 |
ライブラリーの作成:(3)Makefile, 具体的なライブラリ例 |
複雑なMakefileを読むことができる.
|
2ndQ |
9週 |
設計:(1)アルゴリズム(線形検索) |
線形検索を理解できる.
|
10週 |
設計:(2)アルゴリズム(ハッシュ) |
ハッシュを理解できる.
|
11週 |
設計:(3)データ構造(配列とリンクリスト) |
Linked Listを理解できる.
|
12週 |
プログラム作品発表会(1) |
プログラム作品を他人に分かりやすく紹介し,プログラムの内容を説明できる.
|
13週 |
プログラム作品発表会(2) |
プログラム作品を他人に分かりやすく紹介し,プログラムの内容を説明できる.
|
14週 |
プログラム作品発表会(予備) |
プログラム作品を他人に分かりやすく紹介し,プログラムの内容を説明できる.
|
15週 |
まとめ |
まとめ
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 情報を適切に収集・処理・発信するための基礎的な知識を活用できる。 | 3 | |
論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 2 | |
コンピュータのハードウェアに関する基礎的な知識を活用できる。 | 3 | |
数値計算の基礎が理解できる | 2 | |
コンピュータにおける初歩的な演算の仕組みを理解できる。 | 2 | |
データの型とデータ構造が理解できる | 2 | |
専門的能力 | 分野別の専門工学 | 電気・電子系分野 | 情報 | 基本的なアルゴリズムを理解し、図式表現できる。 | 2 | |
プログラミング言語を用いて基本的なプログラミングができる。 | 2 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 30 | 20 | 0 | 0 | 0 | 50 | 100 |
基礎的能力 | 0 | 20 | 0 | 0 | 0 | 50 | 70 |
専門的能力 | 30 | 0 | 0 | 0 | 0 | 0 | 30 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |