到達目標
1.C言語のメモリ管理について適切に説明できる.
2.C言語のライブラリ関数を適切に利用できる.
3.Cプログラム開発の効率化を適切に実践できる.
4.独自のアイディアをCプログラムとして実現できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
| 評価項目1 | メモリ管理について完璧に説明できる. | メモリ管理について概ね適切に説明できる. | メモリ管理について適切に説明できない. |
| 評価項目2 | ライブラリ関数を効果的に利用できる. | ライブラリ関数を概ね適切に利用できる. | ライブラリ関数を適切に利用できない. |
| 評価項目3 | 開発効率化を効果的に実践できる. | 開発効率化を概ね適切に実践できる. | 開発効率化を適切に実践できない. |
| 評価項目4 | 独自性および完成度の高いプログラムを実現できる. | 独自のアイディアを概ね実現できる. | 独自のアイディアを構想できない.または,プログラムとして実現できない. |
学科の到達目標項目との関係
学習・教育到達度目標 C
説明
閉じる
JABEE d-1
説明
閉じる
教育方法等
概要:
世の中の実用ソフトウェア(プログラム)の多くはC言語(やその派生種)で記述されている.
そこで本科目では,C言語に関する実習に取り組み,実用的なプログラムの効率的な開発能力の基礎を身に着けることを目標とする.
関連科目:プログラミング言語IIA,プログラミング言語III
授業の進め方・方法:
授業方法:計算機実習
評価方法:実習課題の総合評価×100%
合否判定:最終評価≧60%を合格とする.
再試験の評価方法:追加実習課題の総合評価≧60%を最終評価60%とする.
注意点:
・すべての課題に対し,完全なレポートを所定の期限までに提出すること.
欠席した場合にも登校した際に必ず取り組むこと.
・課題遂行のためには論理的な思考能力と文章の読解能力が必要である.
しかし,これらの能力は授業時間だけでは身に着かないため,普段から努力すること.
・「動くプログラム=正しいプログラム」とは限らない.充分に吟味せよ.
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
| 後期 |
| 3rdQ |
| 1週 |
メモリ管理1 |
変数・配列によるメモリ空間の使用方法を説明できる.
|
| 2週 |
メモリ管理2 |
各データ型によるメモリ領域の使用方法を説明できる.
|
| 3週 |
メモリ管理3 |
動的配列を適切に生成・使用できる.
|
| 4週 |
連携処理1 |
コマンドライン引数,入出力リダイレクト,終了ステータス,等を適切に使用できる.
|
| 5週 |
連携処理2 |
入出力関数,文字列処理関数,等を適切に使用できる.
|
| 6週 |
連携処理3 |
端末制御関数,時間関数,乱数関数,等を適切に使用できる.
|
| 7週 |
連携処理4 |
スクリプト言語処理系を作成できる.
|
| 8週 |
開発効率化1 |
構造体とマクロを適切に定義・使用できる.
|
| 4thQ |
| 9週 |
開発効率化2 |
ソースファイルを複数に適切に分割できる.
|
| 10週 |
開発効率化3 |
Makefileを適切に定義・使用できる.
|
| 11週 |
自由制作1 |
独自プログラムを構想し,開発計画を立案・公開できる.
|
| 12週 |
自由制作2 |
独自プログラムのVer.1を実現・公開できる.
|
| 13週 |
自由制作3 |
計画に従ってVer.2を実現・公開できる.
|
| 14週 |
自由制作4 |
計画に従ってVer.3を実現・公開できる.
|
| 15週 |
自由制作5 |
他者作品に対して相互評価を実行できる.
|
| 16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
| 分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
| 専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 変数の概念を説明できる。 | 3 | |
| データ型の概念を説明できる。 | 3 | |
| 代入や演算子の概念を理解し、式を記述できる。 | 3 | |
| 制御構造の概念を理解し、条件分岐を記述できる。 | 3 | |
| 制御構造の概念を理解し、反復処理を記述できる。 | 3 | |
| プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | |
| 与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | |
| 与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 3 | |
| ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | |
| 主要な言語処理プロセッサの種類と特徴を説明できる。 | 3 | |
| ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 3 | |
| プログラミング言語は計算モデルによって分類されることを説明できる。 | 3 | |
| 主要な計算モデルを説明できる。 | 3 | |
| 要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 | 3 | |
| 要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 | 3 | |
| 要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 3 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
| 総合評価割合 | 0 | 0 | 0 | 0 | 100 | 0 | 100 |
| 基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 専門的能力 | 0 | 0 | 0 | 0 | 100 | 0 | 100 |
| 分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |